Ich brauche ein wenig Hilfe bei der richtigen Schaltung für eine Verbindung zwischen einem Mikrocontroller und dem HDMI CEC-Bus .
Hier ist der ganze Plan:
Grundsätzlich möchte ich einen ATMega-Mikrocontroller verwenden, um das CEC-Bussignal zu decodieren und über den CEC-Bus mit anderen angeschlossenen Geräten (TV / BD-Player / AV) zu kommunizieren.
Der momentane Zustand:
Ich habe die CEC-Leitung an den Eingangserfassungsstift meines Mikrocontrollers angeschlossen. Und die CEC-Masse mit der Masse des Mikrocontrollers. Der CEC-Bus arbeitet mit 3,3 V (max. 3,63 V) und mein Mikrocontroller mit 5 V. Dies ist kein großes Problem und funktioniert gut (aufgrund der Schaltschwelle). Ein C-Programm dekodiert das Signal und sendet es derzeit über UART aus. Dies funktioniert hervorragend und ich kann jedes Signal meiner CEC-fähigen Geräte lesen.
Nun das Problem:
Im aktuellen Zustand kann ich nur Signale lesen, aber ich möchte natürlich auch etwas schreiben. Wie muss ich meinen Mikrocontroller anschließen, um den Status zwischen High / Low am Bus zu ändern?
Vielleicht die Lösung?!:
Aufgrund der unterschiedlichen Logikpegel (3,3 V <-> 5 V) benötige ich zunächst eine Pegelverschiebung. Ich würde einen einfachen Spannungsteiler (10k und 6,8k) verwenden und ihn von einem Ausgangspin (außer dem Pin, den ich zum Lesen des Signals verwende) an die CEC-Leitung anschließen. Würde es so funktionieren? Wenn die Leitung HIGH ist und ich mit meinem Mikrocontroller auch einen HIGH-Zustand anwende, verursacht dies Probleme? Wie würde ich den Stromausfall minimieren?
Ich möchte hier nichts beschädigen und mein elektrisches Wissen ist nur das Grundlegende: D.