Commit Graph

255 Commits

Author SHA1 Message Date
Damien
d99b05282d Change object representation from 1 big union to individual structs.
A big change.  Micro Python objects are allocated as individual structs
with the first element being a pointer to the type information (which
is itself an object).  This scheme follows CPython.  Much more flexible,
not necessarily slower, uses same heap memory, and can allocate objects
statically.

Also change name prefix, from py_ to mp_ (mp for Micro Python).
2013-12-21 18:17:45 +00:00
Damien
e2880aa2fd Fix a few compiler warnings. 2013-12-20 14:22:59 +00:00
Damien
f0d0940638 Add tools/dfu.py, and use it in stm/Makefile. 2013-12-20 12:07:50 +00:00
Damien
b73085d288 stm: add pyb.sd_test; flash cache flushed only via MSD. 2013-12-20 11:45:06 +00:00
Damien
8c3da5c2c5 stm: flush storage cache immediately; improve user interface. 2013-12-17 18:36:19 +00:00
Damien
5285155ef7 stm: add basic Servo class, and stop and standby functions. 2013-12-11 00:40:15 +00:00
Damien
ec643130d0 stm: add timer to storage cache so it can be flushed. 2013-12-11 00:38:40 +00:00
Damien
261dbf8ce5 stm: add __WFI to sys_tick delay. 2013-12-06 00:42:13 +00:00
Damien
d6b4c66565 stm: add Led object; add option to reset filesystem. 2013-12-06 00:41:33 +00:00
Damien
065f8a5e0e stm: initial commit of working CC3000 driver, based on Adafruit. 2013-12-05 20:38:23 +00:00
Damien
8fe8413b56 stm: servos on PA0-3; MMA filtering; timer for Python REPL. 2013-11-30 15:06:24 +00:00
Damien
11809ee5d4 stm: disable audio function in systick. 2013-11-30 15:02:49 +00:00
Damien
81cc0e8f00 stm: add function to LCD module to show text. 2013-11-30 15:02:29 +00:00
Damien
d3e59feb6b stm: reorder things in Makefile. 2013-11-30 15:02:11 +00:00
Damien
39c6c59868 STM: add LCD functions for pixel access; add RNG Py bindings. 2013-11-09 20:15:48 +00:00
Damien
5c13dbf6ee STM: add RNG support. 2013-11-09 20:15:17 +00:00
Damien
6d42ab6625 Small improvements to timer module. 2013-11-09 11:29:49 +00:00
Damien
bd8e110207 Add to STM code timer functionality to call Python on interrupt. 2013-11-06 23:04:33 +00:00
Damien
1c62d04e2e Add DAC, and simple audio driver to STM code. 2013-11-04 23:05:48 +00:00
Damien
0c70f88734 Add simple PWM control command to STM code. 2013-11-03 18:30:57 +00:00
Damien
e8674399f1 Add vprintf, vsnprintf to STM code. 2013-11-03 18:30:30 +00:00
Damien
0e496733fe Add simple file support to board. 2013-11-03 14:53:34 +00:00
Damien
fecee2b0ae Floats work with MP on board; function for LCD pixel manipulation. 2013-11-02 16:41:51 +00:00
Damien
4c51cbdc0b Add proper FPU compile flags; disable Python float support. 2013-11-01 23:25:37 +00:00
Damien
e8217c2a9b Remove debugging print for SD card; add comment to possibly-buggy USB code. 2013-11-01 23:25:08 +00:00
Damien
c1764e997c Add syscfg and SPI libraries from STM. 2013-11-01 22:27:51 +00:00
Damien
4a14eb0b8d PC13 (SDIO detect) can handle at most 2MHz speed config. 2013-10-30 22:27:38 +00:00
Damien
5892f4710e Working SD card, but no functionality yet (was hardware error). 2013-10-26 18:02:46 +01:00
Damien
8f7491a109 Add USART support, connected to stdio for REPL. 2013-10-26 18:01:48 +01:00
Damien
9281cd66c9 Add simple readline history. 2013-10-26 02:29:02 +01:00
Damien
8128941e6c Add support for RTC, used as a calendar. 2013-10-26 02:06:37 +01:00
Damien
58a1b4c6cf Add USB HID support. Runs as an alternative to VCP+MSC. 2013-10-25 20:53:54 +01:00
Damien
7ee80bac8e Add support for SD card (not working). 2013-10-24 00:22:27 +01:00
Damien
6f08f8ce51 Add working MMA support. 2013-10-23 22:17:26 +01:00
Damien
0f6545139b Implement simple servo control using PWM. 2013-10-23 20:39:20 +01:00
Damien
94186c8239 Implement boot-up commands; run main script after boot. 2013-10-23 00:02:06 +01:00
Damien
e9f1e50be4 Board running boot.py, working REPL, soft reboot. 2013-10-22 23:09:25 +01:00
Damien
9d63932b3d Add gchelper.s, to load registers and clean stack for GC. 2013-10-22 21:13:59 +01:00
Damien
0c5827fc65 stm: improved GC, and cooked output for VCP. 2013-10-22 21:13:36 +01:00
Damien
1b50affca8 Remove unnecessary USB files from stm. 2013-10-22 16:23:53 +01:00
Damien
3f69aca2e2 Make stm use garbage collector. 2013-10-21 23:46:04 +01:00
Damien
f48cf67108 Implement crude but working REPL for board. 2013-10-21 10:42:06 +01:00
Damien
cbb8868f74 VCP works, need to init comm port PC side; add some debugging output. 2013-10-21 10:41:12 +01:00
Damien
4b6e85ca26 Try to get REPL working, but bug with CDC VCP... 2013-10-21 09:56:56 +01:00
Damien
fa2162bc77 Integrate new lexer stream with stm framework. 2013-10-20 17:42:00 +01:00
Damien
afe12bca23 Fix IRQ priority issue to give working USB; and some cleanup. 2013-10-19 18:13:48 +01:00
Damien
fb42ec17bc Try to re-add USB support... 2013-10-19 15:37:09 +01:00
Damien
d7a7a30a4f Make pfenv's const so they go in .text section. 2013-10-19 15:36:20 +01:00
Damien
00ff04fc49 Working SysTick, code factoring, some boot-up code. 2013-10-19 14:40:54 +01:00
Damien
995b8aabb1 Partially implement proper flash storage. 2013-10-18 23:44:05 +01:00
Damien
4a175e1f11 Fix up linker script; improve startup code; printf to USB. 2013-10-17 22:50:21 +01:00
Damien
152568bcb6 NLR and Python exceptions work on the board. 2013-10-16 00:46:39 +01:00
Damien
5dd455d06d Change VID/PID info so USB works on Windows. 2013-10-14 00:03:29 +01:00
Damien
fee89d520f Implement crude but functional CDC + MSC USB device. 2013-10-13 19:02:15 +01:00
Damien
ed65605edc Inital commit of stm32f4xx framework. 2013-10-13 00:42:20 +01:00