Improve docs and update to CircuitPython.
This commit is contained in:
parent
25ae844d55
commit
7c302c395e
24
README.md
24
README.md
@ -1,9 +1,9 @@
|
|||||||
# Adafruit CircuitPython
|
# Adafruit CircuitPython
|
||||||
|
|
||||||
[](https://travis-ci.org/adafruit/circuitpython)
|
[](https://travis-ci.org/adafruit/circuitpython) [](http://circuitpython.readthedocs.io/)
|
||||||
|
|
||||||
This is an open source derivative of [MicroPython](http://www.micropython.org)
|
This is an open source derivative of [MicroPython](http://www.micropython.org)
|
||||||
for use on educational development boards designed and sold by Adafruit
|
for use on educational development boards designed and sold by [Adafruit](https://www.adafruit.com)
|
||||||
including the [Arduino Zero](https://www.arduino.cc/en/Main/ArduinoBoardZero), [Adafruit Feather M0 Basic](https://www.adafruit.com/products/2772), [Adafruit Feather HUZZAH](https://www.adafruit.com/products/2821) and
|
including the [Arduino Zero](https://www.arduino.cc/en/Main/ArduinoBoardZero), [Adafruit Feather M0 Basic](https://www.adafruit.com/products/2772), [Adafruit Feather HUZZAH](https://www.adafruit.com/products/2821) and
|
||||||
[Adafruit Feather M0 Bluefruit LE](https://www.adafruit.com/products/2995).
|
[Adafruit Feather M0 Bluefruit LE](https://www.adafruit.com/products/2995).
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ This project is in beta. Most APIs should be stable going forward.
|
|||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
Guides and videos are available through the [Adafruit Learning System](https://learn.adafruit.com/) under the [CircuitPython category](https://learn.adafruit.com/category/circuitpython). An API reference is also available on [Read the Docs](http://circuitpython.readthedocs.io/en/latest/?).
|
Guides and videos are available through the [Adafruit Learning System](https://learn.adafruit.com/) under the [CircuitPython category](https://learn.adafruit.com/category/circuitpython) and [MicroPython category](https://learn.adafruit.com/category/micropython). An API reference is also available on [Read the Docs](http://circuitpython.readthedocs.io/en/latest/?).
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
See [CONTRIBUTING.md](https://github.com/adafruit/circuitpython/blob/master/CONTRIBUTING.md)
|
See [CONTRIBUTING.md](https://github.com/adafruit/circuitpython/blob/master/CONTRIBUTING.md)
|
||||||
@ -27,6 +27,24 @@ Contributors who follow the
|
|||||||
are welcome to submit pull requests and they will be promptly reviewed by
|
are welcome to submit pull requests and they will be promptly reviewed by
|
||||||
project admins.
|
project admins.
|
||||||
|
|
||||||
|
## Differences from [MicroPython](https://github.com/micropython/micropython)
|
||||||
|
|
||||||
|
* Port for Atmel SAMD21 (Commonly known as M0 in product names.)
|
||||||
|
* No `machine` API on Atmel SAMD21 port.
|
||||||
|
* Only supports Atmel SAMD21 and ESP8266 ports.
|
||||||
|
* Unified hardware API: [`nativeio`](https://circuitpython.readthedocs.io/en/latest/shared-bindings/nativeio/__init__.html), [`microcontroller`](https://circuitpython.readthedocs.io/en/latest/shared-bindings/microcontroller/__init__.html), [`board`](https://circuitpython.readthedocs.io/en/latest/shared-bindings/board/__init__.html), [`bitbangio`](https://circuitpython.readthedocs.io/en/latest/shared-bindings/bitbangio/__init__.html) (Only available on atmel-samd21 and ESP8266 currently.)
|
||||||
|
* Tracks MicroPython's releases (not master).
|
||||||
|
* No module aliasing. (`uos` and `utime` are not available as `os` and `time` respectively.)
|
||||||
|
* Modules with a CPython counterpart, such as `time`, are strict [subsets](https://circuitpython.readthedocs.io/en/latest/shared-bindings/time/__init__.html) of their [CPython version](https://docs.python.org/3.4/library/time.html?highlight=time#module-time). Therefore, code from CircuitPython is runnable on CPython but not necessarily the reverse.
|
||||||
|
* tick count is available as [`time.monotonic()`](https://circuitpython.readthedocs.io/en/latest/shared-bindings/time/__init__.html#time.monotonic)
|
||||||
|
* `os` only available as `uos`
|
||||||
|
* atmel-samd21 features
|
||||||
|
* RGB status LED
|
||||||
|
* Auto-reset after file write over mass storage. (Disable with `samd.disable_autoreset()`)
|
||||||
|
* Wait state after boot and main run, before REPL.
|
||||||
|
* Main is one of these: code.txt, code.py, main.py, main.txt
|
||||||
|
* Boot is one of these: settings.txt, settings.py, boot.py, boot.txt
|
||||||
|
|
||||||
## Project Structure
|
## Project Structure
|
||||||
Here is an overview of the top-level directories.
|
Here is an overview of the top-level directories.
|
||||||
|
|
||||||
|
@ -1,23 +1,28 @@
|
|||||||
# SAMD21x18
|
SAMD21x18
|
||||||
|
=========
|
||||||
|
|
||||||
This port brings MicroPython to SAMD21x18 based development boards including the
|
This port brings MicroPython to SAMD21x18 based development boards including the
|
||||||
Arduino Zero, Adafruit Feather M0 Basic and Adafruit M0 Bluefruit LE.
|
Arduino Zero, Adafruit Feather M0 Basic and Adafruit M0 Bluefruit LE.
|
||||||
|
|
||||||
## Building
|
Building
|
||||||
|
--------
|
||||||
|
|
||||||
To build for the Arduino Zero:
|
To build for the Arduino Zero:
|
||||||
|
|
||||||
make
|
make
|
||||||
|
|
||||||
To build for other boards you must change it by setting `BOARD`. For example:
|
To build for other boards you must change it by setting ``BOARD``. For example:
|
||||||
|
|
||||||
make BOARD=feather_m0_basic
|
make BOARD=feather_m0_basic
|
||||||
|
|
||||||
Board names are the directory names in the `boards` folder.
|
Board names are the directory names in the `boards <https://github.com/adafruit/circuitpython/tree/master/atmel-samd/boards>`_ folder.
|
||||||
|
|
||||||
## Deploying
|
Deploying
|
||||||
|
---------
|
||||||
|
|
||||||
|
Arduino Bootloader
|
||||||
|
^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
### Arduino Bootloader
|
|
||||||
If your board has an existing Arduino bootloader on it then you can use bossac
|
If your board has an existing Arduino bootloader on it then you can use bossac
|
||||||
to flash MicroPython. First, activate the bootloader. On Adafruit Feathers you
|
to flash MicroPython. First, activate the bootloader. On Adafruit Feathers you
|
||||||
can double click the reset button and the #13 will fade in and out. Finally,
|
can double click the reset button and the #13 will fade in and out. Finally,
|
||||||
@ -25,7 +30,9 @@ run bossac:
|
|||||||
|
|
||||||
tools/bossac_osx -e -w -v -b -R build-feather_m0_basic/firmware.bin
|
tools/bossac_osx -e -w -v -b -R build-feather_m0_basic/firmware.bin
|
||||||
|
|
||||||
### No Bootloader via GDB
|
No Bootloader via GDB
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
This method works for loading MicroPython onto the Arduino Zero via the
|
This method works for loading MicroPython onto the Arduino Zero via the
|
||||||
programming port rather than the native USB port.
|
programming port rather than the native USB port.
|
||||||
|
|
||||||
@ -45,9 +52,11 @@ In another terminal from `micropython/atmel-samd`:
|
|||||||
...
|
...
|
||||||
(gdb) continue
|
(gdb) continue
|
||||||
|
|
||||||
## Connecting
|
Connecting
|
||||||
|
----------
|
||||||
|
|
||||||
### Serial
|
Serial
|
||||||
|
^^^^^^
|
||||||
|
|
||||||
All boards are currently configured to work over USB rather than UART. To
|
All boards are currently configured to work over USB rather than UART. To
|
||||||
connect to it from OSX do something like this:
|
connect to it from OSX do something like this:
|
||||||
@ -57,7 +66,14 @@ connect to it from OSX do something like this:
|
|||||||
You may not see a prompt immediately because it doesn't know you connected. To
|
You may not see a prompt immediately because it doesn't know you connected. To
|
||||||
get one either hit enter to get `>>>` or do CTRL-B to get the full header.
|
get one either hit enter to get `>>>` or do CTRL-B to get the full header.
|
||||||
|
|
||||||
### Mass storage
|
Mass storage
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
|
||||||
All boards will also show up as a mass storage device. Make sure to eject it
|
All boards will also show up as a mass storage device. Make sure to eject it
|
||||||
before referring to any files.
|
before referring to any files.
|
||||||
|
|
||||||
|
Port Specific modules
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
bindings/samd/__init__
|
44
conf.py
44
conf.py
@ -59,17 +59,18 @@ source_parsers = {'.md': CommonMarkParser,
|
|||||||
#master_doc = 'index'
|
#master_doc = 'index'
|
||||||
|
|
||||||
# General information about the project.
|
# General information about the project.
|
||||||
project = 'Adafruit\'s MicroPython'
|
project = 'Adafruit CircuitPython'
|
||||||
copyright = '2014-2016, MicroPython contributors (https://github.com/adafruit/micropython/graphs/contributors)'
|
copyright = '2014-2017, MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)'
|
||||||
|
|
||||||
|
# These are overwritten on ReadTheDocs.
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
# The version info for the project you're documenting, acts as replacement for
|
||||||
# |version| and |release|, also used in various other places throughout the
|
# |version| and |release|, also used in various other places throughout the
|
||||||
# built documents.
|
# built documents.
|
||||||
#
|
#
|
||||||
# The short X.Y version.
|
# The short X.Y version.
|
||||||
version = '1.8'
|
version = '0.0'
|
||||||
# The full version, including alpha/beta/rc tags.
|
# The full version, including alpha/beta/rc tags.
|
||||||
release = '1.8.6'
|
release = '0.0.0'
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||||
# for a list of supported languages.
|
# for a list of supported languages.
|
||||||
@ -83,7 +84,40 @@ release = '1.8.6'
|
|||||||
|
|
||||||
# List of patterns, relative to source directory, that match files and
|
# List of patterns, relative to source directory, that match files and
|
||||||
# directories to ignore when looking for source files.
|
# directories to ignore when looking for source files.
|
||||||
exclude_patterns = ["*/build-*", "atmel-samd/asf", "atmel-samd/**.c", "atmel-samd/**.h", "bare-arm", "cc3200", "cc3200/FreeRTOS", "cc3200/hal", "drivers", "esp8266", "examples", "extmod", "lib", "minimal", "mpy-cross", "pic16bit", "py", "qemu-arm", "stmhal", "stmhal/hal", "stmhal/cmsis", "stmhal/usbdev", "stmhal/usbhost", "teensy", "tests", "tools", "unix", "windows", "zephyr"]
|
exclude_patterns = ["*/build-*",
|
||||||
|
"atmel-samd/asf",
|
||||||
|
"atmel-samd/asf_conf",
|
||||||
|
"atmel-samd/common-hal",
|
||||||
|
"atmel-samd/boards",
|
||||||
|
"atmel-samd/QTouch",
|
||||||
|
"atmel-samd/*.c",
|
||||||
|
"atmel-samd/*.h",
|
||||||
|
"bare-arm",
|
||||||
|
"cc3200",
|
||||||
|
"cc3200/FreeRTOS",
|
||||||
|
"cc3200/hal",
|
||||||
|
"drivers",
|
||||||
|
"esp8266",
|
||||||
|
"examples",
|
||||||
|
"extmod",
|
||||||
|
"lib",
|
||||||
|
"minimal",
|
||||||
|
"mpy-cross",
|
||||||
|
"pic16bit",
|
||||||
|
"py",
|
||||||
|
"qemu-arm",
|
||||||
|
"shared-module",
|
||||||
|
"stmhal",
|
||||||
|
"stmhal/hal",
|
||||||
|
"stmhal/cmsis",
|
||||||
|
"stmhal/usbdev",
|
||||||
|
"stmhal/usbhost",
|
||||||
|
"teensy",
|
||||||
|
"tests",
|
||||||
|
"tools",
|
||||||
|
"unix",
|
||||||
|
"windows",
|
||||||
|
"zephyr"]
|
||||||
|
|
||||||
# The reST default role (used for this markup: `text`) to use for all
|
# The reST default role (used for this markup: `text`) to use for all
|
||||||
# documents.
|
# documents.
|
||||||
|
@ -5,7 +5,7 @@ These are drivers available in separate GitHub repos.
|
|||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
|
|
||||||
Register Library <http://adafruit-micropython-register.readthedocs.io/en/latest/>
|
Register Library <https://circuitpython.readthedocs.io/projects/register/en/latest/>
|
||||||
RGB Displays <http://micropython-rgb.readthedocs.io/>
|
RGB Displays <http://micropython-rgb.readthedocs.io/>
|
||||||
Analog-to-digital converters: ADS1015 and ADS1115 <http://micropython-ads1015.readthedocs.io/>
|
Analog-to-digital converters: ADS1015 and ADS1115 <http://micropython-ads1015.readthedocs.io/>
|
||||||
DS3231 Real-time Clock (Precision RTC) <https://circuitpython.readthedocs.io/projects/ds3231/en/latest/>
|
DS3231 Real-time Clock (Precision RTC) <https://circuitpython.readthedocs.io/projects/ds3231/en/latest/>
|
||||||
|
@ -24,7 +24,6 @@ docs are low-level API docs and may link out to separate getting started guides.
|
|||||||
docs/common_hal
|
docs/common_hal
|
||||||
docs/drivers.rst
|
docs/drivers.rst
|
||||||
docs/supported_ports.rst
|
docs/supported_ports.rst
|
||||||
docs/unsupported_ports.rst
|
|
||||||
docs/library/index.rst
|
docs/library/index.rst
|
||||||
README
|
README
|
||||||
CONTRIBUTING
|
CONTRIBUTING
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
MicroPython license information
|
MicroPython & CircuitPython license information
|
||||||
===============================
|
===============================================
|
||||||
|
|
||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2013-2015 Damien P. George, and others
|
Copyright (c) 2013-2017 Damien P. George, and others
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
@ -27,6 +27,9 @@
|
|||||||
#include "lib/utils/pyhelp.h"
|
#include "lib/utils/pyhelp.h"
|
||||||
#include "shared-bindings/help.h"
|
#include "shared-bindings/help.h"
|
||||||
|
|
||||||
|
//| :func:`help` - Built-in method to provide helpful information
|
||||||
|
//| ========================================================
|
||||||
|
//|
|
||||||
//| .. method:: help(object=None)
|
//| .. method:: help(object=None)
|
||||||
//|
|
//|
|
||||||
//| Prints a help method about the given object. When ``object`` is none,
|
//| Prints a help method about the given object. When ``object`` is none,
|
||||||
|
@ -10,3 +10,4 @@ follow.
|
|||||||
:maxdepth: 3
|
:maxdepth: 3
|
||||||
|
|
||||||
*/__init__
|
*/__init__
|
||||||
|
help
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
//|
|
//|
|
||||||
//| .. module:: microcontroller
|
//| .. module:: microcontroller
|
||||||
//| :synopsis: Pin references and core functionality
|
//| :synopsis: Pin references and core functionality
|
||||||
//| :platform: SAMD21
|
//| :platform: SAMD21, ESP8266
|
||||||
//|
|
//|
|
||||||
//| The `microcontroller` module defines the pins from the perspective of the
|
//| The `microcontroller` module defines the pins from the perspective of the
|
||||||
//| microcontroller. See `board` for board-specific pin mappings.
|
//| microcontroller. See `board` for board-specific pin mappings.
|
||||||
|
@ -76,6 +76,8 @@
|
|||||||
//| I2C
|
//| I2C
|
||||||
//| PWMOut
|
//| PWMOut
|
||||||
//| SPI
|
//| SPI
|
||||||
|
//| TouchIn
|
||||||
|
//| UART
|
||||||
//|
|
//|
|
||||||
//| All libraries change hardware state and should be deinitialized when they
|
//| All libraries change hardware state and should be deinitialized when they
|
||||||
//| are no longer needed. To do so, either call :py:meth:`!deinit` or use a
|
//| are no longer needed. To do so, either call :py:meth:`!deinit` or use a
|
||||||
|
Loading…
x
Reference in New Issue
Block a user