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
ee462489f1
stm: Add USART enum for pyboard skin labels.
2014-02-23 00:30:48 +00:00
Damien George
ed73fcd7d2
Merge pull request #316 from iabdalkader/fatfs_lfn
...
Add Configurable LFN support to FatFS
2014-02-22 22:36:24 +00:00
mux
1e2cf746d4
Add Configurable LFN support to FatFS
2014-02-22 22:09:00 +02:00
Damien George
438c88dd2f
Add arbitrary precision integer support.
...
Some functionality is still missing (eg and, or, bit shift), and some
things are buggy (eg subtract).
2014-02-22 19:25:23 +00:00
Damien George
2e87c62cf6
stm: Update PYBOARD4 pin mapping.
2014-02-19 23:38:42 +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
46239413d0
stm: Implement mp_import_stat.
...
To follow up pull request #309 .
2014-02-17 22:44:20 +00: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
mux
d0ffda91cc
Fix usart_obj_tx_char
2014-02-17 21:49:07 +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
Paul Sokolovsky
44739e280e
Make DEBUG_printf() a proper function, implementation is port-dependent.
...
In particular, unix outputs to stderr, to allow to run testsuite against
micropython built with debug output (by redirecting stderr to /dev/null).
2014-02-16 18:20:49 +02:00
Damien George
8bb11171da
stm: Only define __packed if not already defined.
...
Addresses issue #299 .
2014-02-16 11:24:44 +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
a71c83a1d1
Change mp_obj_type_t.name from const char * to qstr.
...
Ultimately all static strings should be qstr. This entry in the type
structure is only used for printing error messages (to tell the type of
the bad argument), and printing objects that don't supply a .print method.
2014-02-15 11:34:50 +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
780ba22bb8
stm: Copy COPT style from unix port.
2014-02-12 20:55:33 +00:00
Damien George
9d324b0ac7
stm: Add specific UINT_FMT and INT_FMT.
...
For some reason, STM port, while it's 32 bit, needs %lu and %ld for
printing machine_uint_t and machine_int_t.
2014-02-11 21:58:08 +00:00
Damien George
323f39a2b3
Merge pull request #278 from pfalcon/unix-gc
...
Enable GC for Unix port
2014-02-11 21:42:09 +00:00
Paul Sokolovsky
20632e4d3f
stm: Provide malloc()/realloc()/free(), as forwarding to gc_*() functions.
...
Note: none of these functions are used by STM port, so they're provided
to have parity with pre gc refactor status quo, and in case they will be
needed in the future by some extension writers.
2014-02-11 18:09:50 +02:00
Paul Sokolovsky
b62c30b4bc
Generalize malloc-via-gc-heap support, make it available to unix port.
2014-02-11 16:20:02 +02:00
Paul Sokolovsky
287d9620fc
Enable link map file generation.
2014-02-11 14:42:20 +02:00
Damien George
181d190643
stm: Remove unused, useless and not-to-be-used strndup.
...
Addresses issue #275 .
2014-02-10 22:55:15 +00:00
Damien George
f1081f400b
Merge branch 'master' of github.com:micropython/micropython
2014-02-10 22:51:35 +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
Paul Sokolovsky
58ff93bc7c
Get rid of calloc().
...
If there's malloc and memset, then there's no need for calloc, especially if
we need to implement it ourselves.
2014-02-10 18:40:00 +02:00
Damien George
698ec21e46
Make mp_obj_str_get_data return char* instead of byte*.
...
Can't decide which is better for string type, char or byte pointer.
Changing to char removes a few casts. Really need to do proper unicode.
2014-02-08 18:17:23 +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
Damien George
354d15a964
Implement fixed buffer vstrs; use them for import path.
2014-02-06 21:11:19 +00:00
Damien George
e09ffa1400
Search paths properly on import and execute __init__.py if it exists.
2014-02-05 23:57:48 +00:00
Paul Sokolovsky
9110896063
Remove older import helpers, no longer used.
2014-02-05 02:03:23 +02: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
d71cd86dc1
Merge branch 'iabdalkader-master'
...
Conflicts:
stm/usb.c
stm/usb.h
2014-02-01 16:17:06 +00: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
mux
565fdccfd2
Add usb_vcp_connected prototype to usb.h
2014-02-01 15:49:16 +02:00
mux
b2269b610e
Detect VCP line state.
...
* Detect VCP line state, based on SET_CONTROL_LINE_STATE request
2014-02-01 13:28:29 +02:00
Damien George
39631bc312
Fix Makefiles: -O3 option was not being applied; mkdir for STM.
2014-01-30 22:16:51 +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
8592d85b36
Remove redundant include in file.c
...
* Remove include mpconfigport.h from file.c
2014-01-29 15:05:53 +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