summaryrefslogtreecommitdiff
path: root/shared-bindings/nativeio/__init__.c
AgeCommit message (Collapse)Author
2017-04-10Split up nativeio.0.9.4Scott Shawcroft
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-03-25Add low-level OneWire support class.Scott Shawcroft
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-24Add PulseIn support which can be used to measure a series of pulse widths.0.9.2Scott Shawcroft
This is useful for infrared input and DHT sensors.
2017-03-10Add PulseOut which can pulse a PWMOut for IR remote transmission.Scott Shawcroft
2017-01-05Improve docs and update to CircuitPython.Scott Shawcroft
2016-12-19atmel-samd: Add preliminary support for UARTSebastian Plamauer
2016-12-12atmel-samd: Basic capacitive touch button support.Scott Shawcroft
Currently only works on a single channel and is only enabled for boards with SPI flash. Only really designed for hardware testing at this point.
2016-11-29shared-bindings: Fix blinky example. Fixes #55Scott Shawcroft
2016-11-21This introduces an alternative hardware API called nativeio structured ↵Scott Shawcroft
around different functions that are typically accelerated by native hardware. Its not meant to reflect the structure of the hardware. Docs are here: http://tannewt-micropython.readthedocs.io/en/microcontroller/ It differs from upstream's machine in the following ways: * Python API is identical across ports due to code structure. (Lives in shared-bindings) * Focuses on abstracting common functionality (AnalogIn) and not representing structure (ADC). * Documentation lives with code making it easy to ensure they match. * Pin is split into references (board.D13 and microcontroller.pin.PA17) and functionality (DigitalInOut). * All nativeio classes claim underlying hardware resources when inited on construction, support Context Managers (aka with statements) and have deinit methods which release the claimed hardware. * All constructors take pin references rather than peripheral ids. Its up to the implementation to find hardware or throw and exception.