Commit Graph

7896 Commits

Author SHA1 Message Date
Glenn Ruben Bakke b4dc9254ac nrf5: Updating mpconfigport.h to set a default for PWM machine module to be enabled by default, if not disabled in a board config. Refactoring order in the file. 2016-12-17 01:29:12 +01:00
Glenn Ruben Bakke b350dc5198 nrf52: Set names to be used on PWM0-2 in board config. For nrf52840, the PWM3 is excluded as repo does not have latest headers to reflect this yet. Bump up to be done soon. 2016-12-17 01:27:58 +01:00
Glenn Ruben Bakke dd9812e1e9 nrf52: Enable PWM HAL for both pca10040 (nrf52832) and pca10056 (nrf52840). 2016-12-17 01:21:32 +01:00
Glenn Ruben Bakke 275bf46831 nrf51: Disable MICROPY_PY_MACHINE_PWM for now in all nrf51 target boards as sw impl. is not yet included in the repo. 2016-12-17 01:19:44 +01:00
Glenn Ruben Bakke 18f528eceb nrf5: Only enable hal_pwm.c if nrf52 target as nrf51 must have a sw implementation. 2016-12-17 01:16:38 +01:00
Glenn Ruben Bakke 3bf2ca05f1 nrf5/pwm: Adding pwm to modmachine.c 2016-12-17 01:14:50 +01:00
Glenn Ruben Bakke abd945fde1 nrf5/hal: Updating PWM header file with init function prototype. Also added PWM_HandleTypeDef structure that can be used in the pwm python module. 2016-12-17 01:05:43 +01:00
Glenn Ruben Bakke 7bfe001d22 nrf5/pwm: Updating PWM dict table to have freq and duty function. Also added creation of default objects based on PWM name set in board config. Adding ifdef surrounding the import of hal_pwm.h as this module might be used by software implmentation of PWM later. 2016-12-17 01:03:39 +01:00
Glenn Ruben Bakke a081bf2f91 nrf5/pwm: Removing include of hal_pwm.h as pwm.c might not use a hal, but sw implementation. 2016-12-17 00:39:24 +01:00
Paul Sokolovsky 56a514c193 zephyr/uart_core: Access console UART directly instead of printk() hack.
This is required to avoid extra level of output "cooking" ("\r\r\n") and
make test infrastructure work. On the other hand, this breaks somewhat
Zephyr console abstraction.
2016-12-17 00:48:56 +03:00
Glenn Ruben Bakke eaece2734b nrf5: Updating makefile to compile in pwm.c and hal_pwm.c 2016-12-16 19:56:12 +01:00
Glenn Ruben Bakke 36a232182a nrf5/boards: Adding config flag for HAL_PWM in pca10040 and pca10056. 2016-12-16 19:56:00 +01:00
Glenn Ruben Bakke 930112753a nrf5: Adding pwm work in progress machine PWM module. 2016-12-16 19:55:32 +01:00
Glenn Ruben Bakke 82f7fe88b0 nrf5/hal: Starting implementation of PWM hal to be used by PWM python module later. 2016-12-16 19:17:42 +01:00
Paul Sokolovsky 0c59c30fde zephyr: Use core-provided keyboard exception object. 2016-12-16 01:07:28 +03:00
Paul Sokolovsky 724b82559d zephyr/main: Initialize sys.path and sys.argv. 2016-12-16 00:33:33 +03:00
Mike Causer 87e426c7c7 esp8266: Add "erase" target to Makefile, to erase entire flash. 2016-12-15 22:29:16 +11:00
Damien George 48d81c6900 esp8266: Use core-provided keyboard exception object. 2016-12-15 15:52:47 +11:00
Damien George a770ba147e stmhal: Use core-provided keyboard exception object. 2016-12-15 15:51:34 +11:00
Damien George d89cafd5c3 lib/utils/interrupt_char: Use core-provided mp_kbd_exception if enabled.
Ultimately all ports that use lib/utils/interrupt_char would enable
MICROPY_KBD_EXCEPTION, so this is an interim solution.
2016-12-15 13:35:54 +11:00
Damien George 7f1da0a03b py: Add MICROPY_KBD_EXCEPTION config option to provide mp_kbd_exception.
Defining and initialising mp_kbd_exception is boiler-plate code and so the
core runtime can provide it, instead of each port needing to do it
themselves.

The exception object is placed in the VM state rather than on the heap.
2016-12-15 13:00:19 +11:00
Damien George 979ab4e126 stmhal/usb: Always use the mp_kbd_exception object for VCP interrupt.
There's no need to store a separate pointer to this object.
2016-12-15 12:45:56 +11:00
Damien George f254cfd3c4 stmhal: Rename mp_const_vcp_interrupt to mp_kbd_exception.
mp_kbd_exception is now considered the standard variable name to hold the
singleton KeyboardInterrupt exception.

This patch also moves the creation of this object from pyb_usb_init() to
main().
2016-12-15 12:32:00 +11:00
Damien George 29b5879613 tools/pyboard.py: Refactor so target is not reset between scripts/cmd.
Previous to this patch pyboard.py would open a new serial connection to
the target for each script that was run, and for any command that was run.
Apart from being inefficient, this meant that the board was soft-reset
between scripts/commands, which precludes scripts from accessing variables
set in a previous one.

This patch changes the behaviour of pyboard.py so that the connection to
the target is created only once, and it's not reset between scripts or any
command that is sent with the -c option.
2016-12-15 11:29:33 +11:00
Damien George 1b02565316 stmhal/mpconfigport: Add weak-module links for io, collections, random. 2016-12-15 11:23:20 +11:00
Damien George 7081ea4119 tests/micropython: Get heapalloc_traceback test running on baremetal.
When printing exceptions from files sent to a target by pyboard.py the
filename in the exception is <stdin>, which differs to when running the
script on the PC.  So we strip out the filename to make the outputs the
same on all targets (see also misc/print_exception.py test).
2016-12-15 11:11:57 +11:00
Lorenz Schmid a5b3c7e7f9 docs/library/pyb.UART: Moved writechar doc to sit with other writes. 2016-12-15 09:59:45 +11:00
Lorenz Schmid 0caac94b98 docs/library/pyb.UART: Added clarification about timeouts. 2016-12-15 09:59:32 +11:00
Paul Sokolovsky c16e7eae5e zephyr: Implement soft reset feature. 2016-12-15 01:10:08 +03:00
Paul Sokolovsky 95fe7a40b3 zephyr: Support raw REPL. 2016-12-15 00:58:08 +03:00
Paul Sokolovsky 403c93053e py/mpconfig.h: Enable MICROPY_PY_SYS_EXIT by default.
sys.exit() is an important function to terminate a program. In particular,
the testsuite relies on it to skip tests (i.e. any other functionality may
be disabled, but sys.exit() is required to at least report that properly).
2016-12-14 21:22:05 +03:00
Paul Sokolovsky ee7ad7e8be esp8266: Add "ota" target to produce firmware binary for use with yaota8266.
https://github.com/pfalcon/yaota8266 is a (WIP) OTA-enabled bootloader
which doesn't require reserving space 2x size of a firmware.
2016-12-14 17:44:05 +03:00
Damien George e8f2db7da3 py/runtime: Zero out fs_user_mount array in mp_init.
There's no need to force ports to copy-and-paste this initialisation
code.  If FSUSERMOUNT is enabled then this zeroing out must be done.
2016-12-14 11:40:11 +11:00
Damien George e83f140463 py/mpz: Remove unreachable code in mpn_or_neg functions. 2016-12-14 10:39:41 +11:00
Glenn Ruben Bakke 90730787f3 nrf5: Adding initial board files for pca10056. The files are not complete (only 32 pins are added for now). UART REPL, leds, and Pins (up to 31) are functional. 2016-12-13 21:38:39 +01:00
Glenn Ruben Bakke bc1aa84cac nrf5: Updating comment in linker script for nrf52832 and nrf52840 to distinguish between the two nrf52 variants. 2016-12-13 21:35:15 +01:00
Glenn Ruben Bakke faa460ae88 nrf5: Adding new linker script for nrf52840. 2016-12-13 21:32:40 +01:00
Glenn Ruben Bakke 1a1f9b0c9d nrf5: updating flash size comment in nrf52832 linker script. 2016-12-13 21:31:39 +01:00
Glenn Ruben Bakke 4344d41b36 lib/netutils: Adding some basic parsing and formating of ipv6 address strings. Only working with full length ipv6 strings. Short forms not supported at the moment (for example FE80::1, needs to be expressed as FE80:0000:0000:0000:0000:0000:0000:0001). 2016-12-13 20:32:54 +01:00
Glenn Ruben Bakke d7dc0b789d nrf5: Updating port with new content. SPI, SDcard (trough sdcard.py), Pin, and machine module. Also adding some basic modules depending on SDK and bluetooth stack from nordic semiconductor. NUS is module copied from original port by tralamazza, and new basic module for 6lowpan over BLE which can be used by modnetwork and modusocket. Basic BLE module to enable bluetooth stack and start a eddystone advertisment is kept, and still works without SDK, even if in the SDK folder (its placed there as it needs bluetooth stack from an SDK). 2016-12-13 20:27:26 +01:00
Glenn Ruben Bakke 227998f9cd Renaming softdevice folder to sdk. 2016-12-13 20:14:48 +01:00
Rami Ali 9112b0b62b tests/extmod: Improve modframebuf test coverage. 2016-12-13 16:29:21 +11:00
Damien George 0f408bc1ff stmhal: Move PY_SYS_PLATFORM config from board to general config file.
It can be overridden by a board if needed.
2016-12-13 16:26:45 +11:00
Rami Ali 8001918a89 stmhal: Add STM32F769DISC board files.
With minor changes to adc.c and storage.c to support the F769.
2016-12-13 16:26:13 +11:00
Rami Ali 3dd04dee3e stmhal/cmsis: Add CMSIS file stm32f769xx.h, V1.1.2. 2016-12-13 16:25:56 +11:00
Rami Ali e9fbc555fc stmhal: Add NUCLEO_F767ZI board, with openocd config for stm32f7. 2016-12-13 16:25:31 +11:00
Rami Ali 517f347f6f stmhal/cmsis: Add CMSIS file stm32f767xx.h, V1.1.2. 2016-12-13 16:24:24 +11:00
Damien George d9047d3c8a py/builtinimport: Support importing packages from compiled .mpy files.
This patch ensures that __init__.mpy files are imported if their
containing directory is imported as a package.
2016-12-13 15:09:48 +11:00
Rami Ali d22762017e tests/extmod: Improve moductypes test coverage. 2016-12-12 17:09:14 +11:00
Damien George a3c61004c2 py/binary: Do zero extension when storing a value larger than word size. 2016-12-12 15:00:06 +11:00