circuitpython/ports
Jeff Epler a183425e00 ports/nrf: Implement audioio.AudioOut using PWM
This implements AudioOut, with known caveats:
 * pause/resume are not yet implemented (this is just a bug)
 * at best, the sample fidelity is 8 bits (this is a hardware limitation)

Testing performed:

My test system is a Particle Xenon with a PAM8302 op-amp
https://www.adafruit.com/product/2130 and 8-ohm speaker.  There's no
analog filtering between the Xenon's PWM pin and the "A+" input of
the amplifier; the "A-" pin is disconnected.  It is powered from
VUSB.

I used pin D4, which is *NOT* listed as a low-speed-only pin, but
the code does NOT switch the pin to high drive.  This is related to
an open issue for general inability to set drive level for pins
being used by a "special function" on nrf:
https://github.com/adafruit/circuitpython/issues/1270

Nothing about the code I've written should limit the usable pins.

All samples I played were 16-bit, generally monophonic at 11025Hz
and 22050Hz from the Debian LibreOffice package.
2019-07-26 07:57:11 -05:00
..
atmel-samd audiocore: Factor from audioio 2019-07-25 06:44:26 -05:00
bare-arm ports/{bare-arm,minimal}/Makefile: Only build with core source files. 2018-02-22 12:48:51 +11:00
cc3200 WIP: after merge; before testing 2018-07-11 16:45:30 -04:00
esp32 esp32/modules: Include umqtt library in frozen modules. 2018-06-15 16:39:49 +10:00
esp8266 updated samd and esp8266 ports 2019-07-05 10:01:51 -07:00
minimal minimal/main: Allow to compile without GC enabled. 2018-05-21 13:13:21 +10:00
nrf ports/nrf: Implement audioio.AudioOut using PWM 2019-07-26 07:57:11 -05:00
pic16bit all: Update Makefiles and others to build with new ports/ dir layout. 2017-09-06 14:09:13 +10:00
qemu-arm put back test in qemu-arm build 2018-07-28 23:40:17 -04:00
stm32 WIP: after merge; before testing 2018-07-11 16:45:30 -04:00
stm32f4 Update SystemCoreClock macro 2019-07-24 16:31:25 -04:00
teensy WIP: after merge; before testing 2018-07-11 16:45:30 -04:00
unix Fix unix build by using safe mode stub 2019-03-12 11:56:35 -07:00
windows WIP: after merge; before testing 2018-07-11 16:45:30 -04:00
zephyr zephyr/Makefile: Add kobj_types_h_target to Z_EXPORTS. 2018-05-21 10:35:16 +10:00