Scott Shawcroft
cc0cf717da
shared-bindings: Fix neopixel_write example. I forgot to save in the editor. Fixes #163
2017-07-12 14:59:45 -07:00
Scott Shawcroft
a91592df52
shared-bindings: Add neopixel_write example. Fixes #163
2017-07-12 11:32:46 -07:00
Scott Shawcroft
9eadda68b8
atmel-samd: Fix AudioOut buffer playback by supporting bytes_per_sample.
...
Thanks to @ntoll for finding this bug!
2017-06-20 11:18:46 -07:00
Scott Shawcroft
c7efd2cae9
shared-bindings: Move enum-like classes out of DigitalInOut into digitalio.
...
Also, rename Direction.IN to Direction.INPUT and Direction.OUT to Direction.OUTPUT.
This simplifies using them. Prior to the nativeio split this would have led to
clutter in the top-level namespace but having digitalio prevents this.
Fixes #152
2017-06-16 13:47:01 -07:00
Scott Shawcroft
714521a4c7
shared-bindings: Update docs to remove with statements from examples but add more detail to the design guide about their use.
2017-06-07 14:39:12 -07:00
Scott Shawcroft
c5e515b8fe
docs: Add module support matrix.
2017-06-07 12:00:15 -07:00
Scott Shawcroft
2ecb9a3dbf
docs: Fix header lines that are too short.
2017-06-07 11:58:04 -07:00
Scott Shawcroft
c0e1f58b67
shared-bindings: Allow for switching direction with the attribute.
2017-06-06 17:45:39 -07:00
Scott Shawcroft
c8dc091288
shared-bindings: Fix duty_cycle parameter description and error message.
2017-06-06 16:23:06 -07:00
Scott Shawcroft
1280e9122b
Doc tweaks to clarify external libraries, new boards and add HID library.
2017-05-24 11:44:23 -07:00
Scott Shawcroft
3f5028c666
atmel-samd: Support wav file playback. Tested up to 16bit 22.1khz. Must be mono file!
...
SD card support may work but likely needs buffer tuning. Its untested.
Fixes #105
2017-05-15 19:52:38 -07:00
Scott Shawcroft
ef1a4847b3
shared-bindings: Correct PulseIn.resume to match docs. Fixes #125
2017-05-08 11:14:23 -07:00
Scott Shawcroft
58b9789d0c
atmel-samd: Introduce audio sample playback via audioio.AudioOut.
2017-05-01 13:10:03 -07:00
Scott Shawcroft
939c0045db
Switch to a shared piece of code to compute start and length of a
...
buffer from start, end and length. The old code miscomputed length
leading to writing and reading from memory past the end of the buffer.
Consolidating the code should make it easier to get right everywhere.
2017-04-20 11:24:05 -07:00
Scott Shawcroft
b653c3c8fc
Correct PulseOut example code
2017-04-13 17:52:13 -07:00
Scott Shawcroft
4a4f29b8f9
atmel-samd: Rework status LED implementation
...
* Track status pin use by user code separately so it can take over the pins and then give them back.
* Switch to hardware SPI for APA102 on Gemma and Trinket.
* Merge microcontroller/types.h into microcontroller/Pin.h to better match approach going forwards.
2017-04-12 15:24:50 -07:00
Scott Shawcroft
f28f8ba568
Split up nativeio.
...
This was done to allow greatly granularity when deciding what functionality
is built into each board's build. For example, this way pulseio can be
omitted to allow for something else such as touchio.
2017-04-10 13:32:19 -07:00
Scott Shawcroft
ff208d7677
Add low-level OneWire support class.
...
This class focuses on the timing sensitive parts of the protocol.
Everything else will be done by Python code.
This also establishes that its OK to back a nativeio class with a
bitbang implementation when no hardware acceleration exists. When
it does, then bitbangio should be used to explicitly bitbang a
protocol.
2017-03-25 12:04:49 +00:00
Scott Shawcroft
7cb54864aa
Add PulseIn support which can be used to measure a series of pulse widths.
...
This is useful for infrared input and DHT sensors.
2017-03-24 10:30:15 +00:00
Scott Shawcroft
d200a62164
Add PulseOut which can pulse a PWMOut for IR remote transmission.
2017-03-10 19:17:54 +01:00
Scott Shawcroft
bccfbe4e00
Fix duty_cycle constructor argument to PWMOut.
2017-03-10 18:55:17 +01:00
Scott Shawcroft
4aaa0ea008
shared-bindings: Do a pass on the docs and make sure keyword only arguments make sense and are documented correctly. Fixes #109
2017-03-07 12:58:57 +01:00
Scott Shawcroft
3891dde7ff
shared-bindings: Reenable struct_time. It was turned off when playing with LTO and never re-enabled.
2017-03-07 12:47:26 +01:00
Scott Shawcroft
7ecbc3a148
shared-bindings: Fix two more try_locks. Copy and paste failed me.
2017-02-28 12:31:27 +01:00
Scott Shawcroft
d598c2a919
atmel-samd: Add USB HID mouse and keyboard support.
2017-02-27 15:43:58 +01:00
Scott Shawcroft
062fac1d43
atmel-samd: Use link time optimization to reduce code size of builds which
...
share space with the file system.
"Express" builds with SPI flash crash the compiler for some reason so its
currently disabled for them.
2017-02-26 01:00:33 +01:00
Scott Shawcroft
baf3ff377e
Make more type structures const to save RAM.
2017-02-24 15:23:26 +01:00
Scott Shawcroft
12fa5b3a66
Switch exception throwing to mp_raise helpers. It saves a little code space each time to share the call.
2017-02-24 15:13:07 +01:00
Scott Shawcroft
75d0b02b3f
Throw an error when sleep time is negative.
2017-02-22 20:41:00 +01:00
Scott Shawcroft
4c05086661
Check that neopixel write is actually given a DigitalInOut.
2017-02-22 20:10:10 +01:00
Scott Shawcroft
f0b62a2b0e
Save space by only supporting 800khz neopixels.
2017-02-19 17:22:42 +01:00
Scott Shawcroft
710b5d8aff
Two I2C fixes:
...
1) Bus error will be thrown on read/write errors with errno set. (Read didn't used to fail at all.)
2) try_lock correctly returns boolean whether lock was grabbed.
Fixes #87
2017-02-19 17:02:29 +01:00
Scott Shawcroft
e9659e61f8
Switch enum-like attributes to all caps and add print support for them. Make room for this functionality by adding a shared __enter__ function object. #76
2017-02-19 16:11:33 +01:00
Scott Shawcroft
d67968e3c3
Add print support to Pin. #83 #76
2017-02-19 14:23:29 +01:00
Scott Shawcroft
3dda38c8ab
Fix pin free check to ignore None objects. Fixes #89
2017-02-19 12:59:31 +01:00
Scott Shawcroft
1a3bd67833
nativeio.SPI: Remove extraneous constructor args because they are in configure.
2017-02-19 12:57:00 +01:00
Scott Shawcroft
370d1dec88
SPI tweaks for SD Cards:
...
* Always init SPI to 250k to start for SD cards.
* Add ability to configure byte written during read.
* Add ability to read and write to portions of buffers like existing I2C API.
2017-02-10 05:09:17 -08:00
Scott Shawcroft
9f6da7b2fe
Add more PWMOut examples and rename the duty constructor argument
...
to duty_cycle so that its consistent with the attribute.
Fixes #84
2017-02-01 15:07:31 -08:00
Scott Shawcroft
e3f9ee839a
Add frequency changing support to PWMOut.
...
You can either set it once up front, or set variable_frequency on custruction to
indicate that the frequency must be able to change. This informs whether a timer
can be shared amongst pins.
This also adds persistent clock calibration on atmel-samd. Once the device has
synced its clock frequency over USB it will remember that config value until USB
is used again. This helps ensure the clock frequency is similar on and off USB.
Lastly, this also corrects time.sleep() when on USB by correcting the tick counter.
2017-01-30 15:02:01 -08:00
Scott Shawcroft
d239dbdc28
More fixes to pin pull thanks to jerryn:
...
* Correct atmel-samd pin pull state.
* Correct conversion from python pull objects to C enum.
2017-01-16 15:32:23 -08:00
Scott Shawcroft
df96823dee
Fix pull kwarg DigitalInOut.switch_to_input and add example use to docs.
...
Thanks to jerryn from the Adafruit Forum for finding the bug!
2017-01-16 10:35:46 -08:00
Scott Shawcroft
cea5503ca0
Fixup warnings from merge about undefined macro values, switch to
...
VM keyboard exception and switch to FATFS reader.
2017-01-12 12:46:18 -08:00
Scott Shawcroft
161ab018ba
Correct monotonic.
...
Fixes #69 .
2017-01-08 22:10:33 -08:00
Scott Shawcroft
63681a736a
Link to the Bus Device docs.
2017-01-05 18:43:22 -08:00
Scott Shawcroft
7c302c395e
Improve docs and update to CircuitPython.
2017-01-05 16:20:46 -08:00
Scott Shawcroft
e52fbf2e6a
Add time.struct_time support.
2017-01-05 14:00:48 -08:00
Scott Shawcroft
f48d2df634
atmel-samd: Improve TouchIn to allow for multiple simultaneous touch pads.
2016-12-20 16:39:32 -08:00
Scott Shawcroft
427d33c706
atmel-samd: Add help() and remove mem_info functions from smallest builds to make room.
2016-12-19 16:38:35 -08:00
Sebastian Plamauer
1598e44231
atmel-samd: Add preliminary support for UART
2016-12-19 13:03:50 -08:00
Scott Shawcroft
781633c716
Fix up Analog classes: unify them at 16 bits and adds reference_voltage member
...
to make for easy conversion. Fixes #14 .
2016-12-13 16:09:00 -08:00