circuitpython/docs
MikeTeachman 1f6cb8f047 mixmrt/machine_i2s: Add I2S protocol support.
This commit adds support for machine.I2S on the mimxrt port.  The I2S API
is consistent with the existing stm32, esp32, and rp2 implementations.

I2S features:
- controller transmit and controller receive
- 16-bit and 32-bit sample sizes
- mono and stereo formats
- sampling frequencies from 8kHz to 48kHz
- 3 modes of operation:
  - blocking
  - non-blocking with callback
  - uasyncio
- configurable internal buffer
- optional MCK

Tested with the following development boards:
- MIMXRT1010_EVK, MIMXRT1015_EVK, MIMXRT1020_EVK, MIMXRT1050_EVK
- Teensy 4.0, Teensy 4.1
- Olimex RT1010
- Seeed ARCH MIX

Tested with the following I2S hardware peripherals:
- UDA1334
- GY-SPH0645LM4H
- WM8960 codec on board the MIMXRT boards and separate breakout board
- INMP441
- PCM5102
- SGTL5000 on the Teensy audio shield

Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
2022-03-30 14:12:40 +11:00
..
develop docs/develop/porting.rst: Fix build and import problems in the example. 2022-02-04 11:15:46 +11:00
differences docs/differences/python_35: Mark PEP 486 as not applicable. 2022-03-07 14:15:21 +11:00
esp32 esp32/modesp32: Add new gpio_deep_sleep_hold function. 2022-03-21 23:59:07 +11:00
esp8266 docs: Remove reference to obsolete neopixel_write function. 2022-02-02 16:27:10 +11:00
library mixmrt/machine_i2s: Add I2S protocol support. 2022-03-30 14:12:40 +11:00
pyboard docs: Remove trailing spaces and convert tabs to spaces. 2021-12-15 11:49:22 +11:00
readthedocs/settings docs: Add RTD local_settings file, to add custom templates. 2014-12-21 11:21:06 +00:00
reference tools/mpremote: Add "umount" command. 2022-02-25 13:10:45 +11:00
rp2 docs/rp2/quickref.rst: Add section on PIO. 2021-11-19 15:30:14 +11:00
static docs: Add M-logo as favicon. 2017-02-07 20:04:40 +11:00
templates docs/templates: Add unix and zephyr quickref links to top-index. 2021-08-13 20:21:21 +10:00
unix windows: Improve default search path. 2020-02-11 13:34:35 +11:00
wipy docs: Use the correct * keyword-only notation. 2022-02-09 15:01:00 +11:00
zephyr zephyr: Upgrade to Zephyr v3.0.0. 2022-03-07 16:48:35 +11:00
Makefile docs: Fix Sphinx 3.x warnings, and enable warnings-as-errors on build. 2020-06-05 21:42:17 +10:00
README.md docs/README: Add short paragraph about using readthedocs. 2020-01-12 11:45:55 +11:00
conf.py all: Bump version to 1.18. 2022-01-17 09:50:31 +11:00
index.rst docs/zephyr: Add quick reference for the Zephyr port. 2021-08-13 20:20:57 +10:00
license.rst docs/license: Update copyright year. 2017-06-23 21:48:27 +03:00
make.bat docs/make.bat: Change Windows output dir from '_build' to 'build'. 2021-09-13 18:15:38 +10:00

README.md

MicroPython Documentation

The MicroPython documentation can be found at: http://docs.micropython.org/en/latest/

The documentation you see there is generated from the files in the docs tree: https://github.com/micropython/micropython/tree/master/docs

Building the documentation locally

If you're making changes to the documentation, you may want to build the documentation locally so that you can preview your changes.

Install Sphinx, and optionally (for the RTD-styling), sphinx_rtd_theme, preferably in a virtualenv:

 pip install sphinx
 pip install sphinx_rtd_theme

In micropython/docs, build the docs:

make html

You'll find the index page at micropython/docs/build/html/index.html.

Having readthedocs.org build the documentation

If you would like to have docs for forks/branches hosted on GitHub, GitLab or BitBucket an alternative to building the docs locally is to sign up for a free https://readthedocs.org account. The rough steps to follow are:

  1. sign-up for an account, unless you already have one
  2. in your account settings: add GitHub as a connected service (assuming you have forked this repo on github)
  3. in your account projects: import your forked/cloned micropython repository into readthedocs
  4. in the project's versions: add the branches you are developing on or for which you'd like readthedocs to auto-generate docs whenever you push a change

PDF manual generation

This can be achieved with:

make latexpdf

but require rather complete install of LaTeX with various extensions. On Debian/Ubuntu, try (500MB+ download):

apt-get install texlive-latex-recommended texlive-latex-extra