circuitpython/ports/raspberrypi
Jeff Epler bef07961ab raspberrypi: audiopwmout: subtle for #5092
I noticed that the loop over 65535 possible denominators took a long time,
causing up to 100ms wait for a sound sample to start playing!

This algorithm, adapted from an algorithm shown in Python's fractions.py,
is guaranteed to find the best denominator in a small number of steps
(I think log2-many steps but I'm not sure). In practice, it means the time
between samples playing is just 10ms, and some of that is recreating the
sine wave sample in Python each time.

It often finds the same solution as the old code, but sometimes it finds
one a bit better since it compares the ratios using float point instead
of integer arithmetic.
2021-08-24 16:33:20 -05:00
..
bindings/rp2pio Added support for specifying the JMP pin (RP2 PIO) 2021-07-22 18:39:04 +02:00
boards Deprecate Display's constructor arg set_vertical_scroll 2021-08-23 09:17:59 -05:00
common-hal raspberrypi: audiopwmout: subtle for #5092 2021-08-24 16:33:20 -05:00
peripherals run code formatting script 2021-03-15 19:27:36 +05:30
sdk@bfcbefafc5 Update pico-sdk to 1.2.0, using raspberrypi repo 2021-07-20 17:31:29 -04:00
sdk_config/pico Add board-specific pico-sdk settings; set xosc multipler for Adafruit boards 2021-07-30 18:50:21 -04:00
supervisor Check background pending before sleep 2021-08-19 12:18:13 -07:00
.gitignore Add initial RP2040 support 2021-01-20 19:16:56 -08:00
audio_dma.c improve SAMD audio DMA 2021-08-21 14:34:37 -04:00
audio_dma.h improve SAMD audio DMA 2021-08-21 14:34:37 -04:00
background.c run code formatting script 2021-03-15 19:27:36 +05:30
background.h Add initial RP2040 support 2021-01-20 19:16:56 -08:00
boot_stage2.ld Redo RP2040 flash settings 2021-03-18 16:55:42 -07:00
fatfs_port.c run code formatting script 2021-03-15 19:27:36 +05:30
flash_info.h.jinja Fix Arduino RP2040 flash size 2021-07-21 11:02:55 -07:00
gen_stage2.py Fix Arduino RP2040 flash size 2021-07-21 11:02:55 -07:00
link.ld Redo RP2040 flash settings 2021-03-18 16:55:42 -07:00
Makefile Change optimizer option so RP2040 DEBUG builds work 2021-08-23 21:37:34 -05:00
mpconfigport.h run code formatting script 2021-03-15 19:27:36 +05:30
mpconfigport.mk Fix various RP2040 audio dma things: (see detailed commit message) 2021-07-08 08:14:49 -04:00
mphalport.c Add initial RP2040 support 2021-01-20 19:16:56 -08:00
mphalport.h run code formatting script 2021-03-15 19:27:36 +05:30
qstrdefsport.h Add initial RP2040 support 2021-01-20 19:16:56 -08:00
README.rst Add initial RP2040 support 2021-01-20 19:16:56 -08:00
stage2.c.jinja Fix doc build and address feedback 2021-03-22 15:24:27 -07:00

RP2040
==================

This port supports many development boards that utilize RP2040 chips. See
https://circuitpython.org/downloads for all supported boards.


Building
--------

For build instructions see this guide: https://learn.adafruit.com/building-circuitpython/


Port Specific modules
---------------------

.. toctree::
    ../../shared-bindings/rp2pio/index