aboutsummaryrefslogtreecommitdiff
path: root/stmhal
AgeCommit message (Collapse)Author
2014-08-08stmhal: Fix documentation; remove ability to specify af by str.Damien George
2014-08-08stmhal: Comment out unused functions.Damien George
2014-08-07Add support for selecting pin alternate functions from python.Dave Hylands
Converts generted pins to use qstrs instead of string pointers. This patch also adds the following functions: pyb.Pin.names() pyb.Pin.af_list() pyb.Pin.gpio() dir(pyb.Pin.board) and dir(pyb.Pin.cpu) also produce useful results. pyb.Pin now takes kw args. pyb.Pin.__str__ now prints more useful information about the pin configuration. I found the following functions in my boot.py to be useful: ```python def pins(): for pin_name in dir(pyb.Pin.board): pin = pyb.Pin(pin_name) print('{:10s} {:s}'.format(pin_name, str(pin))) def af(): for pin_name in dir(pyb.Pin.board): pin = pyb.Pin(pin_name) print('{:10s} {:s}'.format(pin_name, str(pin.af_list()))) ```
2014-08-06stmhal: Update STM32Cube F4 HAL driver to V1.3.0.Damien George
This patch updates ST's HAL to the latest version, V1.3.0, dated 19 June 2014. Files were copied verbatim from the ST package. Only change was to suppress compiler warning of unused variables in 4 places. A lot of the changes from ST are cosmetic: comments and white space. Some small code changes here and there, and addition of F411 header. Main code change is how SysTick interrupt is set: it now has a configuration variable to set the priority, so we no longer need to work around this (originall in system_stm32f4xx.c).
2014-08-06stmhal: Ability to stat /flash and /sd.Damien George
Addresses issue #780.
2014-08-06stmhal: Put #if guards around all GPIOx_CLK_ENABLE's.Damien George
Specifically, teensy port does not have these macros defined.
2014-08-06stmhal: Enable relevant GPIO clock when Pin obj is init'd.Damien George
2014-08-05stmhal: Wrap DAC module and os.urandom in relevant #if's.Damien George
2014-08-05stmhal, math: Define _M_LN2 if not already defined.Damien George
Addresses issue #790.
2014-08-04stmhal: Clean up reset/soft-reset code; fix bug init'ing VCP exc.Damien George
Make a clearer distinction between init functions that must be done before any scripts can run (xxx_init0) and those that can be safely deferred (xxx_init). Fix bug initialising USB VCP exception. Addresses issue #788. Re-order some init function to improve reliability of reset/soft-reset.
2014-08-04Put call to qstr_init and mp_init_emergency_exc_buf in mp_init.Damien George
qstr_init is always called exactly before mp_init, so makes sense to just have mp_init call it. Similarly with mp_init_emergency_exception_buf. Doing this makes the ports simpler and less error prone (ie they can no longer forget to call these).
2014-08-03stmhal: Document behaviour of usb_vcp_recv_byte.Damien George
2014-08-02stmhal: Add more documentation for USB_VCP.Damien George
2014-08-02stmhal: Add documentation for LCD; update docs for USB_VCP.Damien George
2014-08-02stmhal: Add preliminary driver for ST32F4DISC accelerometer.Damien George
Written in Python, not currently working. See issue #725.
2014-08-01Fix modos.c to compile for the STM32F4Discovery board (which doesn't have an ↵Dave Hylands
sdcard)
2014-07-31stmhal: Change 0:/ and 1:/ to /flash and /sd; add CWD support.Damien George
Some important changes to the way the file system is structured on the pyboard: 1. 0: and 1: drive names are now replaced with POSIX inspired directories, namely /flash and /sd. 2. Filesystem now supports the notion of a current working directory. Supports the standard Python way of manipulating it: os.chdir and os.getcwd. 3. On boot up, current directory is /flash if no SD inserted, else /sd if SD inserted. Then runs boot.py and main.py from the current dir. This is the same as the old behaviour, but is much more consistent and flexible (eg you can os.chdir in boot.py to change where main.py is run from). 4. sys.path (for import) is now set to '' (current dir), plus /flash and /flash/lib, and then /sd and /sd/lib if SD inserted. This, along with CWD, means that import now works properly. You can import a file from the current directory. 5. os.listdir is fixed to return just the basename, not the full path. See issue #537 for background and discussion.
2014-07-31py: Make MP_OBJ_NEW_SMALL_INT cast arg to mp_int_t itself.Damien George
Addresses issue #724.
2014-07-31stmhal, accel: Increase start-up times to 30ms; add extra 30ms delay.Damien George
For accel to start-up reliably, need to wait 30ms between on/off, and 30ms for it to enter active mode. With this fix the accel can be read immediately after initialising it. Addresses issue #763.
2014-07-31stmhal: Add USB_VCP class/object, for direct USB VCP control.Damien George
Before, pyb.stdin/pyb.stdout allowed some kind of access to the USB VCP device, but it was basic access. This patch adds a proper USB_VCP class and object with much more control over the USB VCP device. Create an object with pyb.USB_VCP(), then use this object as if it were a UART object. It has send, recv, read, write, and other methods. send and recv allow a timeout to be specified. Addresses issue 774.
2014-07-30py: Change lexer stream API to return bytes not chars.Damien George
Lexer is now 8-bit clean inside strings.
2014-07-29Merge pull request #738 from dhylands/except-argsDamien George
Add support for storing args during an exception raised by an irq.
2014-07-27py: Change stream protocol API: fns return uint; is_text for text.Damien George
2014-07-25Add support for storing args during an exception raised by an irq.Dave Hylands
The user code should call micropython.alloc_emergency_exception_buf(size) where size is the size of the buffer used to print the argument passed to the exception. With the test code from #732, and a call to micropython.alloc_emergenncy_exception_buf(100) the following error is now printed: ```python >>> import heartbeat_irq Uncaught exception in Timer(4) interrupt handler Traceback (most recent call last): File "0://heartbeat_irq.py", line 14, in heartbeat_cb NameError: name 'led' is not defined ```
2014-07-22Merge pull request #766 from dhylands/allow-dfu-overrideDamien George
Allow DFU_UTIL to be overridden from the environment.
2014-07-21remove Myriad2 board config files from masterblmorris
2014-07-21Change boolean 'use_16bit_addr' to int 'addr_size', can be either 8 or 16 ↵blmorris
bits, default value is 8 to maintain compatibility with existing code.
2014-07-21Allow DFU_UTIL to be overridden from the environment.Dave Hylands
2014-07-21Merge https://github.com/blmorris/micropython into Myriad2blmorris
2014-07-21Merge https://github.com/micropython/micropythonblmorris
2014-07-20stmhal: Fix REPL printing by cooking output sent to stdout_obj.Damien George
Recent changes to builtin print meant that print was printing to the mp_sys_stdout_obj, which was sending data raw to the USB CDC device. The data should be cooked so that \n turns into \r\n.
2014-07-20stmhal: Change calls to pfenv_printf to pfenv_vprintf.Damien George
Fixes printing bugs introduced by cb66f41ebc4980f4e6b7543bece19e3b9daac25c.
2014-07-19py: Make print() accept "file" argument, and actually print to stream.Paul Sokolovsky
And not system printf(), like it was before. For this, move pfenv_printf() from stmhal port to py/.
2014-07-19py: Add stream reading of n unicode chars; unicode support by default.Damien George
With unicode enabled, this patch allows reading a fixed number of characters from text-mode streams; eg file.read(5) will read 5 unicode chars, which can made of more than 5 bytes. For an ASCII stream (ie no chars > 127) it only needs to do 1 read. If there are lots of non-ASCII chars in a stream, then it needs multiple reads of the underlying object. Adds a new test for this case. Enables unicode support by default on unix and stmhal ports.
2014-07-19stmhal: Add file.flush and os.stat.Damien George
2014-07-15Initial commit of Myriad2 board-specific configuration filesblmorris
2014-07-11Incorporate stylistic changes suggested by @dhylandsblmorris
2014-07-11Add keyword argument 'memaddr_use_16b' to i2c.mem_read and mem_write methodsblmorris
to allow these methods to transmit 16 bit addresses to an i2c device Add 'memaddr_use_16b' to qstrdefsport.h
2014-07-07stmhal: Protect SD_WriteBlocks by IRQ disable/enable pair.Damien George
2014-07-06Disable IRQs around sdcard reads.Dave Hylands
Once the code switches to using DMA, this can be removed.
2014-07-03Rename machine_(u)int_t to mp_(u)int_t.Damien George
See discussion in issue #50.
2014-07-02stmhal: Some reordering of code/functions.Damien George
2014-07-02Merge branch 'add-timer-deinit' of github.com:dhylands/micropython into ↵Damien George
dhylands-add-timer-deinit
2014-07-02Merge pull request #709 from windelbouwman/masterDamien George
Added hexfile target
2014-07-02Merge branch 'teensy-new' of github.com:dhylands/micropython into ↵Damien George
dhylands-teensy-new Conflicts: stmhal/pin_named_pins.c stmhal/readline.c Renamed HAL_H to MICROPY_HAL_H. Made stmhal/mphal.h which intends to define the generic Micro Python HAL, which in stmhal sits above the ST HAL.
2014-07-01Merge pull request #734 from iabdalkader/copysignDamien George
Add copysignf
2014-07-01stackctrl: Add "mp_" prefix.Paul Sokolovsky
2014-06-30Add timer_deinit and call it just before doing a soft-restartDave Hylands
This fixes #733.
2014-06-30Add copysignfmux
* Fix #692
2014-06-30Merge pull request #710 from iabdalkader/assertDamien George
Fix assert_func warning/error