Scott Shawcroft
26229efe78
Add try_lock and unlock to I2C and SPI classes to make sure things
...
are shared well between threads and underlying MicroPython (SPI Flash
for example.)
It is recommended to use the bus device classes to manage the locks
and other transaction state.
https://github.com/adafruit/Adafruit_MicroPython_BusDevice
Fixed #58
Fixed #59
Fixed #60
2016-12-02 15:46:12 -08:00
Peter Hinch
46e59c52af
docs/library/pyb.Accel: Add hardware note about pins used by accel.
2016-12-02 17:39:13 +11:00
w4kpm
ec22d1739d
extmod/modbtree: Add method to sync the database.
...
If you have longish operations on the db (such as logging data) it may
be desirable to periodically sync the database to the disk. The added
btree.sync() method merely exposes the berkley __bt_sync function to the
user.
2016-12-02 17:30:53 +11:00
w4kpm
bd476acd41
extmod/vfs_fat_file: Allow file obj to respond to ioctl flush request.
2016-12-02 17:26:37 +11:00
Damien George
e50cb73b7a
esp8266: Enable uselect module.
...
Select and poll will now work on socket objects.
2016-12-02 16:44:31 +11:00
Damien George
cb53226b0c
extmod/modlwip: Add ioctl method to socket, with poll implementation.
...
Implementation of polling may need further fine tuning, but basic
functionality works (tested on esp8266).
2016-12-02 16:41:51 +11:00
Damien George
2d329c4a56
extmod/moduselect: Use configurable EVENT_POLL_HOOK instead of WFI.
...
To make moduselect be usable by any port.
2016-12-02 16:40:39 +11:00
Damien George
ebc8d730f1
extmod/moduselect: Use stream helper function instead of ad-hoc code.
2016-12-02 16:39:50 +11:00
Damien George
304cfda8c4
py/stream: Move ad-hoc ioctl constants to stream.h and rename them.
...
The constants MP_IOCTL_POLL_xxx, which were stmhal-specific, are moved
from stmhal/pybioctl.h (now deleted) to py/stream.h. And they are renamed
to MP_STREAM_POLL_xxx to be consistent with other such constants.
All uses of these constants have been updated.
2016-12-02 16:37:29 +11:00
Damien George
6194336d81
tests/extmod/vfs_fat_fileio: Add test for constructor of FileIO type.
2016-12-02 15:37:58 +11:00
Damien George
f7545b200e
stmhal/moduos: Implement POSIX behaviour of rename, allow to overwrite.
2016-12-02 15:13:29 +11:00
Damien George
b7df3e541a
extmod/vfs_fat: Implement POSIX behaviour of rename, allow to overwrite.
...
If the destination of os.rename() exists then it will be overwritten if it
is a file. This is the POSIX behaviour, which is also the CPython
behaviour, and so we follow suit.
See issue #2598 for discussion.
2016-12-02 15:06:09 +11:00
Jean-François Milants
08bd7d1d31
stmhal/sdcard: Clean/invalidate cache before DMA transfers with SD card.
...
Add 2 macros in mphalport.h that clean and invalidate data caches only on
STM32F7 MCUs. They are needed to ensure the cache coherency before/after
DMA transferts.
* MP_HAL_CLEANINVALIDATE_DCACHE cleans and invalidate the data cache. It
must be called before starting a DMA transfer from the peripheral to the
RAM memory.
* MP_HAL_CLEAN_DCACHE cleans the data cache. It must be called before
starting a DMA transfert from the RAM memory to the peripheral.
These macros are called in sdcard.c, before reading from and writing to
the SDCard, when DMA is used.
2016-12-02 13:51:09 +11:00
Scott Shawcroft
03f49f8209
atmel-samd: Slim down the pin struct to save ~1200 bytes.
2016-12-01 13:47:18 -08:00
Scott Shawcroft
f4a1da4be9
atmel-samd: Only include bitbangio on boards with flash.
2016-12-01 13:46:44 -08:00
Scott Shawcroft
8ef0dd095a
Fix two bugs found by clang:
...
* PWMOut enter and exit weren't hooked up.
* end couldn't be negative in I2C.
2016-12-01 10:33:50 -08:00
Damien George
a081b49d55
extmod/modframebuf: Optimise fill and fill_rect methods.
...
Fill is a very common operation (eg to clear the screen) and it is worth
optimising it, by providing a specialised fill_rect function for each
framebuffer format.
This patch improved the speed of fill by 10 times for a 16-bit display
with 160*128 pixels.
2016-12-01 16:51:31 +11:00
Damien George
81e171b7bb
extmod/modframebuf: Add back legacy FrameBuffer1 "class".
...
For backwards compatibility. It simple creates a frame buffer with the
MVLSB format.
2016-12-01 16:43:25 +11:00
Radomir Dopieralski
eb09336e99
drivers/display/ssd1306.py: Update to use FrameBuffer not FrameBuffer1
2016-12-01 16:43:25 +11:00
Radomir Dopieralski
225e22b287
extmod/modframebuf: Make FrameBuffer handle 16bit depth.
...
Rename FrameBuffer1 into FrameBuffer and make it handle different bit
depths via a method table that has getpixel and setpixel. Currently
supported formats are MVLSB (monochrome, vertical, LSB) and RGB565.
Also add blit() and fill_rect() methods.
2016-12-01 16:43:25 +11:00
Scott Shawcroft
915e1e5603
atmel-samd: Move the README text out of ROM to save space. We can still ship with it on flash.
2016-11-30 09:50:19 -08:00
Scott Shawcroft
3628a1ae48
atmel-samd: Fix FLASH_ROOT_POINTERS for internal flash builds.
2016-11-30 09:49:39 -08:00
Damien George
8b8242954e
extmod/modurandom: Allow to build with float disabled.
2016-11-30 12:58:54 +11:00
Damien George
c19a395cac
stmhal/adc: Make channel "16" always map to the temperature sensor.
...
The temperature sensor on F4 and F7 MCUs is mostly, but not always, on
channel 16. To retain compatibility across all these MCUs this patch
maps the user-facing channel 16 to the internal temperature sensor.
2016-11-30 12:58:54 +11:00
Damien George
390ce86a30
stmhal/adc: Add support for F767 MCU.
2016-11-30 12:58:54 +11:00
Damien George
52dfad0879
stmhal/adc: Add ADCAll.read_vref method, returning "3.3v" value.
2016-11-30 12:58:54 +11:00
Damien George
e72353cc48
stmhal/adc: Make ADCAll.read_core_temp return accurate float value.
...
It now uses factory calibration values to get a more accurate value, and
returns a float instead of an integer.
2016-11-30 12:58:53 +11:00
Damien George
87215a0f04
stmhal/adc: Provide more accurate measure of VBAT and VREFINT.
...
By using factory calibration values.
2016-11-30 12:58:53 +11:00
Scott Shawcroft
9b3afc7b37
shared-bindings: Make MOSI and MISO optional for SPI.
2016-11-29 16:54:20 -08:00
Scott Shawcroft
4933fa1c27
shared-bindings: Ensure pin objects are actually pins.
...
Fixes #12
2016-11-29 15:50:01 -08:00
Scott Shawcroft
72455e441f
atmel-samd: Use MICROPY_VM_HOOK_LOOP to make sure the mass storage handling code is called even in tight Python loops. Fixes #51
2016-11-29 14:58:37 -08:00
Paul Sokolovsky
295266178c
zephyr/zephyr_getchar: Update to Zephyr 1.6 unified kernel API.
2016-11-30 01:42:58 +03:00
Scott Shawcroft
16764dfa31
shared-bindings: Fix blinky example. Fixes #55
2016-11-29 14:37:25 -08:00
Scott Shawcroft
ddfa7595b0
Slim down Arduino Zero build by turning off mass storage LEDs.
2016-11-29 14:32:04 -08:00
Scott Shawcroft
94bde17256
Update Ubuntu and GCC versions used in Travis build. Now uses GCC 5.4.1. Also, tweaks what builds are run.
2016-11-29 14:31:08 -08:00
Scott Shawcroft
2d9a0c76c5
atmel-samd: Switch to MICROPY_PORT_ROOT_POINTERS for the flash cache.
2016-11-29 14:29:33 -08:00
Scott Shawcroft
05c14dfe78
Revert "py: Add ability to manually mark blocks during collect."
...
This reverts commit 9321828158
.
2016-11-29 14:11:32 -08:00
Paul Sokolovsky
a6de451a13
zephyr: Add .gitignore to ignore Zephyr's "outdir" directory.
...
That's where Zephyr keeps object files and produced executables.
2016-11-30 00:26:31 +03:00
Scott Shawcroft
2042aad126
tools: Use a for loop to build all board variants.
2016-11-29 10:47:11 -08:00
Scott Shawcroft
888efa54e2
Only include uheap in debug builds.
2016-11-29 10:46:47 -08:00
Damien George
63e82dcdfe
py/asmthumb: Fix build for F7 MCUs after recent code refactoring.
2016-11-30 00:11:25 +11:00
Scott Shawcroft
d2aa05a9fe
shared-bindings: Stop using negative length at all. Having uint and int mixed is confusing.
2016-11-28 19:57:05 -08:00
Scott Shawcroft
bda6ee9a14
shared-bindings: Stop using max and min because C doesn't define them.
2016-11-28 19:48:48 -08:00
Scott Shawcroft
55c8c91e07
atmel-samd: Hook in bitbangio
2016-11-28 19:48:17 -08:00
Scott Shawcroft
6292f937da
esp8266: Make work with python 3 as default python impl.
2016-11-28 19:47:59 -08:00
Damien George
029f215ead
stmhal/adc: Add "mask" selection parameter to pyb.ADCAll constructor.
...
The "mask" parameter is used to select which pins the ADCAll constructor
will initialise to analog mode. It defaults to all pins (0xffffffff),
which is backwards compatible with previous behaviour.
2016-11-29 14:32:05 +11:00
Scott Shawcroft
77db3d450e
Add links to two more libraries.
2016-11-28 19:24:16 -08:00
Scott Shawcroft
b8bf15de16
atmel-samd: Add Circuit Playground M0 board. Its experimental.
2016-11-28 19:21:40 -08:00
Scott Shawcroft
f8898d01ce
py: fix python3 compatibility error
2016-11-28 19:20:51 -08:00
Scott Shawcroft
78f8565270
Add start and end kwargs to writeto and readfrom_into so a single buffer can be used to save memory.
2016-11-28 18:35:19 -08:00