<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/shared-bindings/microcontroller/Pin.h, branch 5.2.0</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=5.2.0</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=5.2.0'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2020-03-05T21:35:31+00:00</updated>
<entry>
<title>rename routines to be clearer; fix wiznet arg types</title>
<updated>2020-03-05T21:35:31+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2020-03-05T21:35:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=817b5be320b36b9cac59b195b1c19359783fe032'/>
<id>urn:sha1:817b5be320b36b9cac59b195b1c19359783fe032</id>
<content type='text'>
</content>
</entry>
<entry>
<title>new pin validation routines; don't use mp_const_none if NULL will do</title>
<updated>2020-02-29T04:43:04+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2020-02-29T04:32:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b6206406de2a232299ebdd1d187c7656ae79f8f2'/>
<id>urn:sha1:b6206406de2a232299ebdd1d187c7656ae79f8f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>revert error</title>
<updated>2019-11-15T18:04:25+00:00</updated>
<author>
<name>Hierophect</name>
<email>hierophect@gmail.com</email>
</author>
<published>2019-11-15T18:04:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=81223c76bd0c9be22032c09f034dccd84c7c74f7'/>
<id>urn:sha1:81223c76bd0c9be22032c09f034dccd84c7c74f7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>move neopixel_in_use flag to shared-bindings</title>
<updated>2019-11-15T17:59:52+00:00</updated>
<author>
<name>Hierophect</name>
<email>hierophect@gmail.com</email>
</author>
<published>2019-11-15T17:59:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=2c6781f74d0c8b53c0bdcd7f0b954ac831167937'/>
<id>urn:sha1:2c6781f74d0c8b53c0bdcd7f0b954ac831167937</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add never_reset and reset to pin common hal, adjust files</title>
<updated>2019-11-15T17:47:00+00:00</updated>
<author>
<name>Hierophect</name>
<email>hierophect@gmail.com</email>
</author>
<published>2019-11-15T17:47:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=de5691acf5060d6e2182da4c84095a007f6da606'/>
<id>urn:sha1:de5691acf5060d6e2182da4c84095a007f6da606</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Initial merge of micropython v1.9.2 into circuitpython 2.0.0 (in development) master.</title>
<updated>2017-08-26T02:17:07+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2017-08-26T02:17:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ef61b5ecb59e9b4e37e3e3c023c62d583c23eb16'/>
<id>urn:sha1:ef61b5ecb59e9b4e37e3e3c023c62d583c23eb16</id>
<content type='text'>
cpx build compiles and loads and works in repl; test suite not run yet
esp8266 not tested yet
</content>
</entry>
<entry>
<title>atmel-samd: Rework status LED implementation</title>
<updated>2017-04-12T22:24:50+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2017-04-12T22:24:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4a4f29b8f95aa67f63397ae4efe78c6994398ccf'/>
<id>urn:sha1:4a4f29b8f95aa67f63397ae4efe78c6994398ccf</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>atmel-samd &amp; esp8266: Make sure pins are not already in use.</title>
<updated>2016-12-07T23:21:14+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2016-12-06T18:31:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0ae344841ff048424b886e1f386b16c0c9ba4ee2'/>
<id>urn:sha1:0ae344841ff048424b886e1f386b16c0c9ba4ee2</id>
<content type='text'>
This prevents corrupting previous functional objects by stealing their pins
out from under them. It prevents this by ensuring that pins are in default
state before claiming them. It also verifies pins are released correctly and
reset on soft reset.

Fixes #4, instantiating a second class will fail.
Fixes #29, pins are now reset too.
</content>
</entry>
<entry>
<title>shared-bindings: Ensure pin objects are actually pins.</title>
<updated>2016-11-29T23:50:01+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott.shawcroft@gmail.com</email>
</author>
<published>2016-11-29T23:49:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4933fa1c27f987be558a33b1736089b04e880a03'/>
<id>urn:sha1:4933fa1c27f987be558a33b1736089b04e880a03</id>
<content type='text'>
Fixes #12
</content>
</entry>
<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>
</feed>
