<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/atmel-samd/common-hal/modules, branch main</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=main</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-11-21T22:11:52+00:00</updated>
<entry>
<title>This introduces an alternative hardware API called nativeio structured around different functions that are typically accelerated by native hardware. Its not meant to reflect the structure of the hardware.</title>
<updated>2016-11-21T22:11:52+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@chickadee.tech</email>
</author>
<published>2016-11-03T22:50:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ccbb5e84f980e252f7380d96fcc5c417a8a64523'/>
<id>urn:sha1:ccbb5e84f980e252f7380d96fcc5c417a8a64523</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>atmel-samd: Merge init into the constructor and check all available</title>
<updated>2016-11-02T00:30:01+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@chickadee.tech</email>
</author>
<published>2016-11-01T18:04:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=23112a6434261375e0d57308ddb06db1227d4b14'/>
<id>urn:sha1:23112a6434261375e0d57308ddb06db1227d4b14</id>
<content type='text'>
SERCOMs during initialization.

Fixes #16. It was broken because the MISO pin used the second SERCOM.
</content>
</entry>
<entry>
<title>atmel-samd: Add support for SPI.</title>
<updated>2016-10-11T22:48:43+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@chickadee.tech</email>
</author>
<published>2016-10-11T22:48:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=011056af15f6107b9ef35fdf19a3f715b55f55d5'/>
<id>urn:sha1:011056af15f6107b9ef35fdf19a3f715b55f55d5</id>
<content type='text'>
Also separate out the ASF config headers that are shared across all boards.
</content>
</entry>
<entry>
<title>atmel-samd: Support with statements for I2C class.</title>
<updated>2016-10-06T01:44:55+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@chickadee.tech</email>
</author>
<published>2016-10-06T01:44:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=afedba5c2f638581e0c9839844fcb63b9bd8a7bb'/>
<id>urn:sha1:afedba5c2f638581e0c9839844fcb63b9bd8a7bb</id>
<content type='text'>
Also add init/deinit if you want to init/deinit manually.
</content>
</entry>
<entry>
<title>atmel-samd: Add I2C support.</title>
<updated>2016-09-13T18:46:22+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@chickadee.tech</email>
</author>
<published>2016-09-13T18:46:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7d8929c470f7c7215d93cbe90d713e7b60d93dd6'/>
<id>urn:sha1:7d8929c470f7c7215d93cbe90d713e7b60d93dd6</id>
<content type='text'>
This commit also introduces a new shared-bindings directory which is used to store the common Python -&gt; C binding code. By having a shared directory we can ensure that the Python API across ports is the same. Each port will have a corresponding common-hal directory which provides definitions for the C api used in the shared-bindings code. That way the compiler can enforce the C api.

To migrate to this new shared API create a common-hal directory within your port and change the Makefile to compile both the shared-bindings and common-hal files. See atmel-samd/Makefile SRC_BINDINGS for an example.
</content>
</entry>
</feed>
