Philip Potter
f2da6467a9
docs/pyboard: Update USB mouse tutorial to use pyb.USB_HID().
8 years ago
Philip Potter
57c92d90b0
docs/pyboard: Update USB mouse tutorial to use VCP instead of CDC.
8 years ago
Damien George
13c5a228c9
docs/esp8266: Update quickref and tutorial for OneWire/DS18X20 driver.
8 years ago
Damien George
59a9509703
esp8266/modules/ds18x20.py: Add support for DS18S20 devices.
8 years ago
Damien George
8e9b98e974
esp8266/modules/onewire: Change onewire.read() to onewire.readinto().
This allows 1-wire drivers (eg DS18X20) to perform in-place operations and
hence do less memory allocations.
8 years ago
Damien George
9fba618356
esp8266/modules: Split onewire.py into OneWire and DS18X20 driver.
The OneWire class is now in its own onewire.py module, and the temperature
sensor class is in its own ds18x20.py module. The latter is renamed to
DS18X20 to reflect the fact that it will support both the "S" and "B"
variants of the device.
These files are moved to the modules/ subdirectory to take advantage of
frozen bytecode.
8 years ago
Radomir Dopieralski
ed0a06a93f
docs/esp8266/quickref: Fix and update the SPI docs
Use the `SPI` factory function in the examples, and use
proper baud rate of 80 000 000.
8 years ago
Paul Sokolovsky
263aaa7030
esp8266/modmachinewdt: Implement machine.WDT class.
8 years ago
Damien George
8f8f699eb7
tests/run-tests: Disable thread_gc1.py test on Travis.
It has reliability issues (cause unknown at this time).
8 years ago
Damien George
f4ee9f8853
py/bc.h: Rename _mp_code_state to _mp_code_state_t.
This rename was missed in the previous patch.
8 years ago
Damien George
581a59a456
py: Rename struct mp_code_state to mp_code_state_t.
Also at _t to mp_exc_stack pre-declaration in struct typedef.
8 years ago
Damien George
531217a06b
extmod/modframebuf: Fix pixel accessor to return a 1-bit result.
8 years ago
Radomir Dopieralski
fea7fe45ea
tests/extmod/vfs_fat_ramdisk: Add tests for VFS.umount()
Try to un-mount a file system and re-mount it again.
8 years ago
Damien George
26295e04ff
py/emitglue: Use more compact mp_raise_ValueError function.
8 years ago
Damien George
fe3cc5bb53
py/modstruct: Use more compact mp_raise_ValueError function.
Saves a few bytes of code size.
8 years ago
Damien George
3b5affa0d1
tests/cmdline: Add test for -O option to check optimisation value.
8 years ago
Damien George
24df30c133
py/compile: Don't compile assert statements when optimisations enabled.
As per CPython.
8 years ago
Krzysztof Blazewicz
fc73c9b4b2
stmhal/modusocket: set self->nic to MP_OBJ_NULL after socket close
This patch makes second and next calls to <socket>.close() a no-op.
It prevents GC from closing the underlying resource after user
already used <socket>.close() explicitly.
fixes #2355
8 years ago
Damien George
5ffe1d8dc0
py/gc: Add MICROPY_GC_CONSERVATIVE_CLEAR option to always zero memory.
There can be stray pointers in memory blocks that are not properly zero'd
after allocation. This patch adds a new config option to always zero all
allocated memory (via gc_alloc and gc_realloc) and hence help to eliminate
stray pointers.
See issue #2195 .
8 years ago
Radomir Dopieralski
d29ca28288
esp8266/modous: Add os.umount method to unmount a filesystem.
This is an object-oriented approach, where uos is only a proxy for the
methods on the vfs object. Some internals had to be exposed (the STATIC
keyword removed) for this to work.
Fixes #2338 .
8 years ago
Paul Sokolovsky
b0e2106fb8
lib/berkeley-db-1.xx: Update to upstream, fixes MacOSX build.
8 years ago
Radomir Dopieralski
891479e62a
esp8266/hspi: Enable duplex operation of hardware SPI
Without this, spi.read(1, 0xff) would use 16 clock cycles,
first to send 0xff and then to receive one byte, as visible
with a logic analyzer.
8 years ago
Paul Sokolovsky
9897bcaa73
lib/utils/stdout_helpers: Fix function signature to match py/mphal.h.
8 years ago
Dave Hylands
a589fa3e0b
stmhal: Update pin print to print new constants
This updates the print function for machine.Pin to
print out the new constants from the Hardware API defintion
rather than the legacy definitions.
8 years ago
Damien George
d09b6b9aa1
esp8266/modpybrtc: Use 64-bit arithmetic when computing alarm expiry.
8 years ago
Damien George
78bc31e294
tests/run-tests: Disable thread/stress_heap.py when running on Travis.
It has reliability issues and sometimes fails on Travis (reason currently
unknown).
8 years ago
Matt Brejza
5af6184e72
stmhal: Make ADC channel 16 available on L4 MCUs.
8 years ago
Paul Sokolovsky
c428367543
extmod/modubinascii: Make crc32() support configurable.
Disable by default, enable in unix port.
8 years ago
Pavol Rusnak
39799f7564
extmod/modubinascii: implement binascii.crc32
8 years ago
Krzysztof Blazewicz
6562076454
py/stream.c: use mp_obj_get_type in mp_get_stream_raise
In current state `mp_get_stream_raise` assumes that `self_in` is an object
and always performs a pointer derefence which may cause a segfault.
This function shall throw an exception whenever `self_in` does not implement
a stream protocol, that includes qstr's and numbers.
fixes #2331
8 years ago
Krzysztof Blazewicz
5a5449d4eb
extmod/modbtree: do CHECK_ERROR after __bt_seq()
In `btree_seq()`, when `__bt_seq()` gets called with invalid
`flags` argument it will return `RET_ERROR` and it won't
initialize `val`. If field `data` of uninitialized `val`
is passed to `mp_obj_new_bytes()` it causes a segfault.
8 years ago
Dave Hylands
253e1a6f67
teensy: Fix execution of frozen boot.py and main.py
8 years ago
Damien George
d2d9dfcd40
stmhal: Remove obsolete code for special handling of TIM3 irq settings.
TIM3 is no longer special, or at least does not have special IRQ settings.
8 years ago
Dave Hylands
c6983e3ce0
stmhal: Fix timer capture/compare interrupt handling for TIM1 and TIM8.
It turns out that TIM1 and TIM8 have their own Capture/Compare
interrupt vector. For all of the other timers, the capture/compare
interrupt vector is the same as the update vector.
So we need to add handlers for these vectors and enable them
when using capture/compare callbacks.
During testing of this, I also found that passing a channel callback
into the channel constructor would not enable interrupts properly.
I tested using:
```
>>> pyb.Timer(1, freq=4).channel(1, pyb.Timer.OC_TOGGLE, callback=lambda t: print('.', end=''))
```
I tested the above with channels 1, 4, and 8
8 years ago
Paul Sokolovsky
f2a21a2489
esp8266/esp_mphal: No longer disable watchdog on startup.
Disabling it was an omission from early development stages.
8 years ago
Radomir Dopieralski
d076fae219
esp8266/modmachinespi: Add a factory method for SoftSPI/HSPI
8 years ago
Radomir Dopieralski
8e7dfea803
esp8266/modpybhspi: Add a HSPI module for hardware SPI support
This module uses ESP8266's SPI hardware, which allows much higher
speeds. It uses a library from
https://github.com/MetalPhreak/ESP8266_SPI_Driver
9 years ago
Paul Sokolovsky
49dd532180
extmod/uzlib/: Update uzlib to v2.0.2.
Consistently use stdint types. Fixes stmhal build.
8 years ago
Damien George
64c5a9435c
docs/library/machine.WDT: Add note that WDT is only available on WiPy.
8 years ago
Damien George
567e7fcd12
tests/run-tests: Disable thread/thread_lock4.py on Travis.
It has reliability issues that need to be worked out.
8 years ago
Paul Sokolovsky
244332df9f
extmod/uzlib/: Update uzlib to v2.0.1.
Fixes for pedantic compiler warnings.
8 years ago
Paul Sokolovsky
a6fc90f92a
tests/uzlib_decompress: Actually test raw DEFLATE stream.
8 years ago
Paul Sokolovsky
ed4ce196ed
extmod/moduzlib: Refactor to new stream-compatible uzlib 2.0 API.
8 years ago
Paul Sokolovsky
ff1c2b03a9
extmod/uzlib/: Update uzlib to v2.0.
New API supporting stream decompression.
8 years ago
Damien George
bb19e7b94b
tests/basics/special_methods: Enable tests for extra special methods.
These additional special methods are enabled on most ports so we can test
them in this test.
8 years ago
Damien George
f003310dee
qemu-arm: Enable MICROPY_PY_ALL_SPECIAL_METHODS.
The qemu-arm port is for testing, so should have features enabled.
8 years ago
rguillon
ed6a1ada24
tests/basics: Add a test file for overriding special methods.
8 years ago
Paul Sokolovsky
d2cc7c720b
extmod/modwebrepl: set_password(): Raise exception for too long password.
8 years ago
Damien George
095e43a9a5
py/sequence: Allow to use bignums as indices in slice objects.
See issue #2264 .
8 years ago
Damien George
f6a8e84a25
tests/basics: Add test for break from within try within a for-loop.
8 years ago