USB Audio Design Guide
ensure that valid master clock generation continues regardless of cable unplugs
etc.
This core gets clock selection Get/Set commands from Endpoint 0 via the
c_clk_ctl
channel. This core also records the validity of external clocks, which is also queried
through the same channel from Endpoint 0.
This core also can cause the decouple core to request an interrupt packet on change
of clock validity. This functionality is based on the Audio Class 2.0 status/interrupt
endpoint feature.
3.11
MIDI
The MIDI driver implements a 31250 baud UART input and output. On receiving
32-bit USB MIDI events from the
buffer
core, it parses these and translates them
to 8-bit MIDI messages which are sent over UART. Similarly, incoming 8-bit MIDI
messages are aggregated into 32-bit USB-MIDI events an passed on to the
buffer
core. The MIDI core is implemented in the file
usb_midi.xc
.
3.12
PDM Microphones
3.13
Overview of PDM implemention
The design is capable of integrating PDM microphones. The PDM stream from the
microphones is converted to PCM and output to the host via USB.
Interfacing to the PDM microphones is done using the XMOS microphone array
library (
lib_mic_array
).
lib_mic_array
is designed to allow interfacing to PDM
microphones coupled with efficient decimation to user selectable output sample
rates.
The
lib_mic_array
library is only available for xCORE-200 series devices.
The following components of the library are used:
·
PDM interface
·
Four channel decimators
XM0088546.1
Summary of Contents for xCORE-200 Multi-channel Audio board
Page 6: ...1 Overview XM0088546 1...