Kann ich Audio über das GPIO empfangen?

24

Der Pi verfügt standardmäßig über eine 3,5-mm-Audiobuchse, diese kann jedoch nicht für den Audioeingang verwendet werden

Wir haben jedoch eine Menge GPIO-Pins an verschiedenen Schnittstellen. Wäre es möglich, analoges Audio über das GPIO in den Pi zu empfangen?

Elinux sagt mir:

Es ist auch möglich, die GPIO-Anschlussstifte P1-12 und 13 (Chipsatz GPIO 18 und 21) neu zu konfigurieren, um eine I2S- (möglicherweise ist eine Hardwaremodifikation erforderlich [12] ) oder PCM-Schnittstelle bereitzustellen. Für I2S oder PCM werden jedoch PCM_FS und PCM_DIN (Chipsatz-Pins 19 und 20) benötigt.

Es scheint überall Hinweise auf diese I2S-Verbindung zu geben, aber es wird nirgendwo ein klares Ja oder Nein gegeben.

ACarter
quelle
Nein, die Audio-Buchse wird nur entsprechend dieser Frage ausgegeben .
Frepa
@Frepa, yup, habe das nicht gesehen, ich habe knapp abgestimmt.
6.
Bearbeitet die Frage, kann ich es über GPIO tun?
6.
Natürlich können Sie Audioeingaben über GPIO und ADC erhalten. Ich werde bald ein solches Projekt durchführen, also werde ich meine Ergebnisse veröffentlichen, wenn Sie wollen.
Dicoder
Bitte poste sie! ;)
28.

Antworten:

13

Das Datenblatt der Peripheriegeräte für das BCM2835, das auf dem Raspberry Pi verwendet wird, gibt Ihnen die Antwort in Kapitel 8. Ich zitiere:

"Das PCM-Audio-Interface ist ein APB-Peripheriegerät, das die Ein- und Ausgabe von Telefonie oder hochwertigen seriellen Audioströmen ermöglicht. Es unterstützt viele klassische PCM-Formate, einschließlich I2S."

Allein 20 Seiten mit Informationen zu diesem Thema.

Wie Sie sagten: Nicht alle Pins sind am GPIO-Anschluss verfügbar! PCM_FS und PCM_DIN (die wahrscheinlich benötigten) befinden sich nicht im GPIO-Anschluss. Sie müssen den Schaltplan überprüfen, um festzustellen , ob Sie diese auf irgendeine Weise erreichen können.

AKTUALISIEREN:

Nach den Schaltplänen haben Sie Pech:

Bildbeschreibung hier eingeben

Leider mit nichts verbunden! Keine Chance, irgendetwas damit in Verbindung zu bringen !!

Aber etwas Seltsames ist los, wenn diese Pins die tatsächlich fehlenden I2S-Pins sind, dann sollte die V2.0-Platine diese Pins auch nicht angeschlossen haben. In der Dokumentation heißt es jedoch, dass diese Pins auf dem neu hinzugefügten Anschluss P5 verfügbar sind. Diese sind mit verschiedenen Pins verbunden, dann heißt es im Wiki ... Das muss noch etwas genauer untersucht werden ... bald mehr ...

Ikku
quelle
Es sah alles so hoffnungsvoll aus ... Ich kann die Ausgabe bekommen, aber nicht die Eingabe! Danke, dass du das gefunden
hast
Hmmm, ich kann anscheinend keine Referenz der PCM-Pins im Schaltplan finden ...
ACarter
Ich neigther, aber ich bin noch nicht fertig damit, aber die Chancen stehen schlecht.
Ikku
"Eben schreit aus der Badewanne, dass er nicht wirklich sicher ist, ob wir es verloren haben - es könnte sich nur hinter einigen GPIO-Muxes verstecken." ( sieht nicht gut aus )
ACarter
1
Ich schätze, ich habe das schon vor einiger Zeit überprüft, das könnte der Grund sein, warum ich bei ebay einen USB-Audio-Stecker wie diesen bestellt habe
ikku
13

Wie hier gezeigt, können Sie I2S über P5 erhalten:

http://elinux.org/RPi_Low-level_peripherals#P5_header

Und hier ist ein Kernel-Treiber für die Verwendung:

http://blog.koalo.de/2013/05/i2s-support-for-raspberry-pi.html

Koalo
quelle
1
Willkommen bei Raspberry Pi Stack Exchange! In der Regel ist es besser, wenn Sie nicht nur eine Antwort auf einen Link veröffentlichen (was ist, wenn die verknüpfte Ressource nicht mehr verfügbar ist?). Möchten Sie Ihre Antwort bearbeiten, um wichtige Punkte der von Ihnen verknüpften Webseiten zusammenzufassen?
nc4pk
4
@Koalos Arbeit am I2S-Fahrer ist bewundernswert. Er sollte 2K-Wiederholung erhalten, nur um uns mit seiner Anwesenheit zu segnen.
Hundeohren
Ich muss meine Unwissenheit zugeben und dich bitten, ein bisschen mehr zu erklären: Wo ist der p5-Anschluss? Ich habe Hardware: BCM2835 Revision: a02082 Es ist ein Pi3-Modell B
L.Trabacchin
Beim PI 3 sind die entsprechenden Pins im Hauptstecker integriert.
Koalo
5

Welche Revision des Boards ist das? Beim Rev B 512M sind alle vier PCM-Pins dem P5-Anschluss zugeordnet. Sie müssen der Platine Ihre eigenen Pins hinzufügen, aber die Unterseite verwenden, um den GPIO-Anschluss auf der Vorderseite weiterhin zu nutzen.

Suchen Sie im Schaltplan unten links auf dem BCM2835-IO2-Chip nach den mit GEN7-10 bezeichneten GPIO28-31-Pins, die der Zuordnung von PCM Clk, Fs, DIn, DOut zu den P5-Löchern 3-6 entsprechen. Diese Pinbelegung würde PCM liefern, wenn sie als Alt2-Funktionalität zugewiesen wird.

gb

Gary
quelle