Forum: Mikrocontroller und Digitale Elektronik Verschiedene fragen zu I2S, Analog und Digital auf einer Platine und Co


von Daniel (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mir ein paar PCBs entwickelt und bin, bis auf ein paar Punkte, 
eigentlich sehr zufrieden. Da ich nun jedoch nicht weiter komme wollte 
ich mal hier nachfragen.


######################################
######################################

Zu den einzelnen Boards:

Power

Power IN vom Netzteil => Sicherung => Kondensatoren => Anschlüße

Expand

Sollte sich von selbst erklären

Mainboard

Besitzt 3 RJ45 Anschlüße. An zwei kommen Sensorplatinen mit PIR und 
Temperatur und Helligkeitssensoren. An einen weiteren wird eine weitere 
Platine (Display) verbunden.

Auf diesem läuft ein ATMega128A.

Display

Diese wird auf einen Raspberry gesteckt. Auf dieser ist ein PCM5100 der 
aus dem Audio digital analog macht. Zudem UART.

Audio

Besitzt einen ATMega128A sowie zwei TDA7439 (Klangregler) und zwei 
TDA7375 (2CH Verstärker).

RGBW Board

Steuert 4 PWM Channels (RGBW) sowie bis zu 60 WS2812/SK6812 LEDs (Mehr 
mit externer LED Versorgung)

32CH Board

Besitzt einen ATMega128A. Erzeugt 32PWM Channels mit BC817, wahlweise 
VCC oder 5V (Jumper)

######################################
######################################

Das Mainboard kommuniziert mit dem Raspberry über UART (blau). Macht man 
eingaben werden diese vom Raspberry über den UART an das Mainboard 
gesendet. Dieses verarbeitet die Daten.

Das Mainboard ist mit dem Expand Board verbunden (grün). An diesen 
können die Adressen der Boards gesetzt werden. Von dort geht es dann zu 
den Boards. (Rosa)

Ich kann nun vom Raspberry aus jeden Platine steuern. Die Daten gehen 
erst per UART ans das Mainboard, und dann via I2C weiter zu den 
entsprechenden Platinen. Anhand der Sensoren kann das Mainboard auch via 
UART konfiguriert und dann Standalone arbeiten verrichten.

Soweit sogut.

Jedoch habe ich mit dem Audiosignalen Probleme. So haben die Expand 
Boards "Status-LEDs". Diese zeigen den jeweilgen Zustand der Boards an. 
Das Signal wird mit einem Timer generiert. Wenn die LED dann schaltet.. 
hört man ein "klack" im Lautsprecher.

Wenn man dann noch auf dem I2C kommuniziert. Ohje. Als würde man 
versuchen mit Aliens Kontakt aufzunehmen.

Schalte ich auf einen anderen Audio IN klappt es.

Ich kann mir das nur wie folgt erklären.

Das Audiosignal wird auf der Display Platine in ein analoges Signal 
umgewandelt (PCM5100) und dann mit dem UART (RJ45, Blau) und dann mit 
dem I2C, über das Expand Board, an das Audioboard weiter gegeben. Denn 
nur auf dem Audiokanal, welcher vom Raspberry, und über die ganzen 
Platinen geht, habe ich diese Störung.

Wie würde es nun aussehen, wenn ich das I2S Signal, vom Raspberry, bis 
zur Audioplatine leite, und erst auf dieser in einen PCM5100?

Kann ich das I2S Signal so weit "schicken"?

Wenn kein Audiosignal anliegt, habe ich zudem das Problem, das ich ein 
sehr hohes Pfeifen höre, fast kaum hörbar, viel viel höher und leiser 
als eine Hundepfeife, aber ein leichtes sehr hohes Pfeifen ist zu hören, 
woher kann dieses kommen?

von Helge (Gast)


Lesenswert?

wo kommt das nicht-analoge audio her? wie überträgst du ein analoges 
signal mim uart?

von Daniel (Gast)


Lesenswert?

Ich denke an der Zeichnung "komplett.png" kann man das gut erklären.

Also Power kommt an und geht ans Mainboard.. Das Mainboard wird dann mit 
einem RJ45 Kabel mit der Display Platine verbunden.

Durch dieses RJ45 Kabel gehen

=> VCC (je zwei Leitungen GND, zwei VCC)
=> RxD
=> TxD
=> Audio L
=> Audio R

Die Schirmung liegt ebenfalls auf GND.

Ist VCC auf der Display Platine angekommen erzeugt ein Spannungsregler 
LM2576-5 5V und versorgt einen Raspberry PI3+. Die vom Raspberry 
erzeugten 3V3 sowie das I2S Signal gehen dann zum PCM5100A.

Danach geht UART, und Audio R/L durch das RJ45 Kabel zurück zum 
Mainboard.

Am Mainboard angekommen geht der UART dann zum ATMega128A. Audio wird 
dann direkt weiter auf das Expandboard geleitet. (Grün, Flachbandkabel)

Und von dort dann durch Rosa (Flachbandkabel) an das Audioboard.

Durch die Flachbandkabel (Grün und Rosa) gehen jedoch auch die I2C Daten 
die vom Mainboard an die Slaves genutzt wird.

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
Noch kein Account? Hier anmelden.