Hallo, ich möchte den AD/DA-Wandler PCM3168A in Verbindung mit einem STM32F103RET6 Mikrocontroller nutzen bzw. eine I2S-Datenverbindung zwischen beiden ICs aufbauen. Beide ICs unterstützen zwar I2S, jedoch bin ich nun über ein kleines Detail gestolpert, bei dem ich gerade nicht einordnen kann, ob die Kommunikation dann überhaupt funktionieren wird. Und zwar liefert der PCM 24 Bit Datenpakete bzw. 6 Byte pro Abtastperiode (linker und rechter Kanal), siehe pcm_fig47.png (Screenshot aus dem Datenblatt). Der Mikrocontroller hingegen arbeitet laut Fig. 265 des Reference Manuals jedoch mit entweder 16 oder 32 Bit Datenpaketen pro Kanal (stm32_fig265.png). Sieht man sich das I2S configuration register des Mikrocontrollers auf den Seiten 720 und 721 an (stm32_i2scontrolreg.png) steht dort zu den Bits 1 und 2 (DATALEN), dass man die Datenlänge auch auf 24 Bit einstellen kann. Das ist schonmal gut. Bit 0 hingegen (CHLEN) lässt die "number of bits per audio channel" jedoch nur auf 16 oder 32 Bit einstellen. Nun bin ich mir unsicher, ob die beiden Bausteine miteinander kommunizieren können... Denke ich zu umständlich? Ich würde mich freuen bzw. wäre sehr dankbar, wenn das jemand aufklären könnte. Vielen Dank für eure Hilfe!
Klaus schrieb: > Und zwar liefert der PCM 24 Bit Datenpakete bzw. 6 Byte pro > Abtastperiode (linker und rechter Kanal), siehe pcm_fig47.png [...] > > Datenlänge auch auf 24 Bit einstellen kann. Das ist schonmal gut. > hingegen (CHLEN) lässt die "number of bits per audio channel" > jedoch nur auf [..] 32 Bit [...] > Denke ich zu umständlich? Nur ein bisschen. ;-) Schaue dir Fig47 nochmal genau an. I2S überträgt pro Kanal immer erst Nutzdaten und dann ein klein wenig Dummy-Daten (gestrichelte Linie zwischen den Kanälen zeigt, da ist was weggelassen). In deinem Fall besteht ein I2S Kanal aus 24Bit Audio-Daten (Nutzdaten) und 8Bit Dummy-Daten. Insgesamt also 32Bit für einen I2S Kanal. Da immer abwechselnd 2 Kanäle (CH1 + CH2) auf einer I2S Datenleitung (DOUT1) übertragen werden ist dein I2S Frame also 2x32bit mit 2x24bit Nutzdaten.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.


