CHF | EUR | USD

PSoC 6 mit PDM-PCM-Wandler: Erzeugen der gewünschten Samplingrate

Einigen der PSoC-6-Varianten enthalten einen PDM-PCM-Wandler. Dies erlaubt der MCU problemlos mit einem PDM-Mikrofon verbunden zu werden und den 1-Bit-PDM-Strom in 16-, 18-, 20- oder 24-Bit-PCM-Ausgangsdaten umzuwandeln. Die Rate, mit der diese PCM-Samples ankommen, ist die Samplingfrequenz (fs). Diese ist über ModusToolbox konfigurierbar. Im Gerätekonfigurator (Device Configurator) können Sie die gewünschte Samplingrate jedoch nicht direkt eingeben (wie z. B. die Baudrate beim Konfigurieren eines der UARTs). Stattdessen müssen Sie den peripheren Taktgeber und die Dezimationsrate konfigurieren, um die richtige fs zu erzeugen.

Die PSoC6-WiFi-/Bluetooth-Evaluierungskarte CY8CPROTO-062-4343W von Cypress Semiconductor. (Bildquelle: Cypress Semiconductor)

Im Architecture Technical Reference Manual (TRM) finden Sie mehrere Beispielkonfigurationen für fünf Standard-Audio-Samplingraten, darunter die weit verbreiteten 44100 Hz. Bei der Karte CY8CPROTO-062-4343W ist dieser Vorgang leider nicht ganz unkompliziert, weil der ECO-Quarz auf der Karte ein anderer als der im TRM-Beispiel ist und vom Gerätekonfigurator als ungültiger Wert interpretiert wird. Eine ausführliche Beschreibung, wie Sie eine gewünschte Samplingrate (in diesem Beispiel 44100 Hz) konfigurieren und die Schwierigkeiten bei der CY8CPROTO-062-4343W umgehen, finden Sie im Artikel „Sampling Audio at 44.1 kHz with the CY8CPROTO-062-4343W Board“.

Über den Autor

Image of Matt Mielke

Matt Mielke erhielt 2016 seinen Bachelor of Science in Computer Engineering (Computertechnik) von der South Dakota School of Mines and Technology. Daraufhin wurde er bei der Abteilung Applications Engineering von Digi-Key Electronics angestellt, wo er Kunden durch die Entwicklung von Referenzdesigns und die Erstellung von technischen Inhalten unterstützt. Zu seinen Interessen zählen die systemnahe Embedded-Programmierung, das Niederleistungsdesign und die digitale Signalverarbeitung.

More posts by Matt Mielke