Damien George
c4361227ba
Merge pull request #318 from dhylands/exti
...
Add EXTI support
2014-02-26 16:01:54 +00:00
Damien George
2ee55c312d
stm: Add option to pyb_usb_dev_init() to use USB HID interface.
...
With this option selected, only HID on its own works, not VCP+HID.
2014-02-24 01:12:04 +00:00
Dave Hylands
ee31f71d39
Add EXTI support
...
Revamp usrsw to use new exti code.
Add user switch callback function.
2014-02-23 11:26:22 -08:00
Damien George
790eed6f93
stm: Make pendsv_nlr_jump work when debugging is enabled.
...
Stack layout is different when -g used, so need to handle the pendsv
jump differently. Addresses Issue #315 .
2014-02-23 00:31:11 +00:00
Damien George
948a58d56e
Merge pull request #310 from dhylands/pin_map
...
Add pin mapping code.
2014-02-19 23:19:18 +00:00
Damien George
302646625b
stm: Add RTC start-up info, and uPy bindings.
2014-02-19 23:15:09 +00:00
Dave Hylands
51dabac096
Add pin mapping code.
...
This commit also introduces board directories and moves board
specific config into the appropriate board directory.
boards/stm32f4xx-af.csv was extracted from the STM32F4xx datasheet
and hand-tweaked.
make-pins.py takes boards/stm32f4xx-af.csv, boards/stm32f4xx-prefix.c,
and boards/BOARD-NAME/pins.csv as input and generates the file
build/pins_BOARD_NAME.c
The generated pin file for PYBOARD4 looks like this:
https://gist.github.com/dhylands/9063231
The generated pins file includes all of the supported alternate
functions, and includes upsupported alternate functions as comments.
See the commnet block at the top of stm/pin_map.c for details on
how to use the pin mapper.
I also went ahead and modified stm/gpio.c to use the pin mapper.
2014-02-17 21:20:38 -08:00
Damien George
517e1706bd
Merge pull request #309 from pfalcon/stm-sys-path
...
stm: Initialize sys.path with ["0:/", "0:/src", "0:/lib"].
2014-02-17 22:21:25 +00:00
Paul Sokolovsky
4aee119f94
stm: Initialize sys.path with ["0:/", "0:/src", "0:/lib"].
...
This is compatible with what search path was before sys.path refactor,
with addition of module library path ("0:/lib").
2014-02-18 00:06:37 +02:00
Dave Hylands
90928f1194
Fix build for netduino and stm32f4disc
2014-02-16 23:14:49 -08:00
Damien George
402dc31aa7
stm: Factor out GPIO code to its own file. Add functions to set GPIO mode.
...
GPIO functions are crude, and need to be replaced with better ones!
2014-02-16 23:44:23 +00:00
Damien George
2abbae3419
stm: Rename mma -> accel.
2014-02-16 21:41:57 +00:00
Damien George
754a8dd827
stm: Put REPL functions in own file; add raw REPL mode.
...
Raw REPL mode is activated by CTRL-A, and allows you to more easily
communicate with the pyboard over the serial channel. In particular,
automated communication using, eg, pyserial on the PC side.
2014-02-16 21:36:03 +00:00
Damien George
c5966128c7
Implement proper exception type hierarchy.
...
Each built-in exception is now a type, with base type BaseException.
C exceptions are created by passing a pointer to the exception type to
make an instance of. When raising an exception from the VM, an
instance is created automatically if an exception type is raised (as
opposed to an exception instance).
Exception matching (RT_BINARY_OP_EXCEPTION_MATCH) is now proper.
Handling of parse error changed to match new exceptions.
mp_const_type renamed to mp_type_type for consistency.
2014-02-15 16:10:44 +00:00
Damien George
70d7a83c74
stm: If SD card inserted on hard reset, it is the medium for USB MSD.
2014-02-13 23:21:02 +00:00
Damien George
099a9cb575
Remove mp_obj_new_exception_msg_1_arg and _2_arg.
2014-02-12 23:02:19 +00:00
Damien George
ed378cd12f
stm: Tidy up memory labels; optimise GC root scanning.
...
Addresses issues #272 and #273 .
2014-02-10 22:50:44 +00:00
Damien George
23177088d2
stm: Mount SD card on 1:/ if present.
...
If SD card is present on (soft) reset then it's mounted on 1:/ and files
can be openned using, eg, open('1:/test.txt', 'r'), or 'w' for writing.
2014-02-08 16:00:15 +00:00
Dave Hylands
1570a96cad
Initial support for Netduino
...
This also fixes up the IRQ for the PYBOARD4 USERSW
although I was unable to test that functionality.
2014-02-03 23:26:05 -08:00
Damien George
01156d510c
stm: Add support for ctrl-C to interrupt running Python.
...
Using PendSV interrupt at lowest priority, code can now raise an
exception during an interrupt by calling pendsv_nlr_jump. The exception
will be raised when all interrupts are finished. This is used to trap
ctrl-C from the USB VCP to break out of running Python code.
2014-02-01 16:04:34 +00:00
Damien George
2d15c1216d
stm: Add optional memory debugging output.
2014-01-29 20:33:20 +00:00
Damien George
01fa4a9164
stm: Fix gccollect ram range.
2014-01-29 19:21:17 +00:00
mux
bfb01e9da6
Fix unused function warning in main
...
* Add SD card test to fix warning
2014-01-29 15:07:04 +02:00
mux
76a6335b6e
Move HEAP_END and RAM_END to linker script
...
* Issue #232
2014-01-29 12:52:03 +02:00
Damien George
217814cc63
stm: Increase timeout for RTC LSE startup; use backup regs.
2014-01-28 23:47:28 +00:00
Damien George
75abee206d
stm: USB host mode working! Restructure stm library directories.
2014-01-26 17:41:01 +00:00
Damien George
51f3a6becd
stm: Improved ADC module; add BOARD_NAME config value.
2014-01-25 16:30:47 +00:00
Damien George
b829b5caec
Implement mp_parse_node_free; print properly repr(string).
2014-01-25 13:51:19 +00:00
Damien George
449dd0a69e
stm: Put gc_collect code in separate file; define _ram_start in .ld.
...
To partly address Issue #220 .
2014-01-25 00:44:31 +00:00
Damien George
0004a84ec0
Revert "Move gc_collect to py/gc.c"
...
This reverts commit a215b09c0d
.
2014-01-24 22:54:09 +00:00
mux
a215b09c0d
Move gc_collect to py/gc.c
...
* Move gc_collect from main to py/gc.c
* Define GC's memory boundaries in linker script
* Issue #220
2014-01-24 21:33:19 +02:00
mux
40048adabc
Move file obj to separate module
2014-01-24 17:14:13 +02:00
Damien George
3257d3543b
stm: Remove unnecessary #includes; small other changes.
2014-01-23 22:16:15 +00:00
Damien George
b080c7946b
Merge branch 'master' of github.com:iabdalkader/micropython into iabdalkader-master
...
Conflicts:
stm/main.c
2014-01-23 18:40:57 +00:00
Damien George
26a00085fe
stm: LCD support for PYBv4; fix MMA reading code.
2014-01-23 18:10:42 +00:00
mux
638179fb9c
Move RTC to Separate Module
...
* Move RTC code from main to a separate module.
2014-01-23 13:49:06 +02:00
mux
c4808dae0a
Add More Feature Test Macros
...
* Add MICROPY_HW_HAS_LCD
* Add MICROPY_HW_HAS_WLAN
* Use feature test macros in main
2014-01-23 13:41:35 +02:00
Damien George
8bcc52e834
Merge branch 'master' of github.com:micropython/micropython
2014-01-22 22:56:17 +00:00
Damien George
b5d13c309f
stm: Fix USART3 init. Small edits to Makefile and other things.
2014-01-22 22:55:07 +00:00
mux
3c7e71fb00
Fix Feature Macro Prefix
2014-01-22 20:34:02 +02:00
mux
630d8ff89f
Remove Underscore from Macro Names
2014-01-22 18:11:48 +02:00
mux
28b23f09a4
Add Generic Feature Macros to mpconfigport
...
* Add some generic feature macros to mpconfigport
* Move pin and port definitions from usrsw.c to mpconfigport
2014-01-22 17:42:06 +02:00
Damien George
5fa93b6755
Second stage of qstr revamp: uPy str object can be qstr or not.
2014-01-22 14:35:10 +00:00
Damien George
8ae1c1beac
Merge branch 'fix-stm-discovery' of github.com:dhylands/micropython into dhylands-fix-stm-discovery
...
Conflicts:
stm/main.c
2014-01-22 11:56:24 +00:00
Dave Hylands
72a31162e9
Fix support for STM32F4DISCOVERY
2014-01-21 18:08:39 -08:00
Damien George
2c30256382
stm: Clean up main.c; disable libgcc by default.
...
f2d and d2f functions from libgcc does not work correctly, most likely
due to the ABI being incorrect. libgcc disabled for now.
2014-01-21 23:28:03 +00:00
Damien George
55baff4c9b
Revamp qstrs: they now include length and hash.
...
Can now have null bytes in strings. Can define ROM qstrs per port using
qstrdefsport.h
2014-01-21 21:40:13 +00:00
Damien George
a11ceca807
Change int to uint for n_args in function with variable arguments.
2014-01-19 16:02:09 +00:00
Damien George
136b149e41
py: Add full traceback to exception printing.
2014-01-19 12:38:49 +00:00
Damien George
08335004cf
Add source file name and line number to error messages.
...
Byte code has a map from byte-code offset to source-code line number,
used to give better error messages.
2014-01-18 23:24:36 +00:00