Wie mehrere Taster anschließen?

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Steck mal das ROTE Kabel an GND, und das GRÜNE dann an zB. GPIO4 ... Dann ginge schon mal der Taster links unten.
    Dann schließt du GELB an zB. GPIO11 und auch dieser Taster ginge.
    Schließt du SCHWARZ ebenfalls an einen GPIO ginge der Taster ebenfalls sofern der GRÜN auch gedrückt wird... Und beim Rest verhält es sich gleich :fies:
    BLAU an einen GPIO und dieser Taster geht.
    BRAUN an ein GPIO und dieser geht sofern BLAU oder GELB auch gedrückt wird.

    Beachte das du dafür PULL_DOWN nutzen musst, also GPIO -> GND. Das ist besser für die GPIO's ;)

  • Dass man das so machen kann ist mir vollkommen klar. Mich stört aber


    Schließt du SCHWARZ ebenfalls an einen GPIO ginge der Taster ebenfalls sofern der GRÜN auch gedrückt wird... Und beim Rest verhält es sich gleich :fies:

    Das Endergebnis muss ja so sein, dass jeder Taster unabhängig von anderen bedienbar ist.
    War da nicht irgendwas von internen Pull-up und Pull-down Widerständen? Kann ich also einzelne Eingänge als low festlegen und (mit wenigen Microampere) 3,3 V darauf legen um zu schalten? Bzw. andere Eingänge als high festlegen und da GND darauf legen um zu schalten?

    Einmal editiert, zuletzt von PsychoMantis (29. März 2015 um 11:33)

  • Leider ist die Lenkradfernbedienung nun mal so aufgebaut. Am original-Autoradio funktioniert jede Taste auch unabhängig voneinander.
    Also müsste es doch möglich sein an diese Fernbedienung ein paar Widerstände, Transistoren, Optokoppler etc. dranzulöten um das gewünschte Resultat zu erreichen. Nur fehlen mir irgendwie die Ideen.

  • Naja wenn man zB vor SCHWARZ einen Transistor packt, dessen Basis an SCHWARZ geht und die CE-Stecke auf GND und GRÜN, dann könnte man den Taster auch ohne den GRÜN-Taster nutzen


    Irgendwie so:

    (ohne Rücksicht auf Korrektheit. Nur zur Veranschaulichung!)


    Vor die Basis sollte man aber noch einen 6,8k Ohm Widerstand setzen


    //EDIT: Obwohl..... Ich glaub das war nicht gut durchdacht - das funktioniert gar nicht da der GPIO ja nicht als Ausgang sondern Eingang geschaltet wird :blush: Also war das jetzt Quatsch dau2.gif

  • Hallo zusammen,

    ich sehe die Schaltung als Key-Pad.

    Demzufolge werden z.B. alle vertikalen Strippen an je einen GPIO-Out angeschlossen. Alle horizontalen Strippen kommen an je einen GPIO-Input.

    Die Output-GPIOs werden regelmäßig jeweils auf HIGH gesetzt. Die GPIO-Inputs werden abgefragt. Aus der Kenntnis, welcher Output gerade aktiv ist und an welchem Input ein Flankenwechsel beobachtet wurde, folgt unmittelbar, welche Taste gedrückt wurde.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (29. März 2015 um 13:24)

  • Das klingt gut, muss aber entsprechend programmiert werden. Wie programmiert man so was?
    Ich möchte mit dieser Lenkradfernbedienung einfache Dinge tun wie z.B. vorspulen bei xmbc oder Lautstärke hoch/runter.

    Was ist von dieser Lösung zu halten? Sechs Optokoppler - sind also sechs GPIO-Eingänge, die einzeln geschaltet werden können.

    Einmal editiert, zuletzt von PsychoMantis (29. März 2015 um 14:59)

  • Deine Schaltung hat so noch einige Fehler. Was ich hier noch vermisse, wäre eine Info was Du nun genau vor hast. Wie und wo die LFB genutzt werden soll, im Auto gleichzeitig mit dem Autoradio, o. zu Haus nur als Steuerung eines Mediacenters.

  • Ja, klar, das mit den 5V war nur für die Optokoppler gedacht.
    Was ich vor habe: das alte Autoradio durch RPi2 ersetzen und mittels dieser Fernbedienung einfache Funktionen in XBMC steuern (Lautstärke, Vorspulen etc.).

    Habe die Fernbedienung mit Gewalt & Lötkolben etwas modifiziert, so dass der Schaltplan nun wie folgt aussieht.

    Nun dürfte es wohl ein Leichtes sein das anzuschließen. Ich würde sagen den roten mit dem brauen verbinden, dann ein 2k Widerstand davor setzen und an diesen 3,3 V anschließen.
    Dann die internen Pull-Down-Widerstände aktivieren und die Leitungen schwarz, grün, gelb, blau und die beiden neuen (die noch angelötet werden) an die GPIO-Eingänge des RPi ran. Stimmt das so?

    Und wenn jemand noch paar Links hat wie ich damit dann XBMC steuere, dann nur her damit.

    Einmal editiert, zuletzt von PsychoMantis (29. März 2015 um 17:17)

  • Ich würde vielleicht einen etwas anderen Lösungsansatz wählen, welcher aber nur funktionieren kann wenn keine Schalter in der Schaltung sind. ( Nicht wie in deiner ersten Schaltung. ) Ich würde eine alte IR Fernbedienung zerlegen und die Tasten der LFB daran anschließen. Die IR Diode der FB würde ich durch einen Optokoppler ersetzen, welcher anstelle eines IR Empfängers am RPi angeschlossen wird. Damit könnte man sich die softwaretechnische Anpassung der Hardware an das Mediacenter sparen und den Standard lircd benutzen. Außerdem braucht man nur einen GPIO Port, welchen man auch noch galvanisch vom Auto entkoppelt hat.

    Einmal editiert, zuletzt von Fliegenhals (29. März 2015 um 18:11)

  • Auf die Idee wäre ich nie gekommen. Das klingt wirklich gut.
    Ich wollte ans RPi eigentlich eh noch einen Infrarot-Empfänger anschließen. Der von dir erwähnte Optokoppler wäre doch quasi so etwas wie ein Infrarot-Empänger, oder verstehe ich das falsch. Kann man zwei Inrarot-Empänger ans RPi anschließen?

  • Zwei Empfänger am RPi würde ich nicht anschließen, es wäre aber technisch möglich (aber nicht zu empfehlen), wenn man beide Signale z.B. über ein Logik Oder-Gatter einspeist. Wenn Du noch etwas Platz in der LFB hast, könntest Du falls Du eine geeignete IR FB hast, den IC der IR FB, die IR Diode mit Vorwiderstand & Quarz dort direkt einbauen. Bei vielen IR FB ist nur ein SMD Schaltkreis mit wenig Beschaltung verbaut, wenn man sich auf das Minimum beschränkt, sollte man die nötigen Teile auf einer ca. 2 x 1,5 cm Leiterplatte ( Je nach IC Größe der Spender IR FB ) unterkriegen. Man kann statt des Optokoppler auch die normale IR Diode verwenden, wenn man sowieso einen IR Empfänger benutzen will. ( Bei der Verwendung eines Optokoppler muß man sich vermutl. noch einen kleinen Filter bauen, welcher die Trägerfrequenz vom Signal trennt. )

  • Platz ist in der LFB kaum vorhanden, aber wenn ich es richtig verstanden habe, kann ich die Uralt-Infrarot-Fernbedienung auch irgendwo anders verbauen - Hauptsache die IR-Diode davon hat Sichtkontakt zum Empfänger.
    Bzgl. Empfänger habe ich hier was gefunden. Oder kann ich den bereits vorhandenen einfach nutzen? Im Renault Espace JE ist ab Werk ein Autoradio verbaut, was man mit einer Infrarotfernbedienung steuern kann.


  • Platz ist in der LFB kaum vorhanden, aber wenn ich es richtig verstanden habe, kann ich die Uralt-Infrarot-Fernbedienung auch irgendwo anders verbauen - Hauptsache die IR-Diode davon hat Sichtkontakt zum Empfänger.

    Im Auto sollte es eigendlich keine Probleme mit dem Einbauort bestehen, ich würde auch vermuten, dass Du keinen direkten Sichtkontakt brauchst, da dass IR Signal auch von eine Scheibe o.ä. reflektiert wird.


    Bzgl. Empfänger habe ich hier was gefunden. Oder kann ich den bereits vorhandenen einfach nutzen? Im Renault Espace JE ist ab Werk ein Autoradio verbaut, was man mit einer Infrarotfernbedienung steuern kann.

    Ob man den IR Empfänger aus dem Radio ohne weiteres verwenden kann, kann man so einfach nicht sagen. Ich vermute mal dass es mit evtl. einer Anpassung gehen wird. Wenn der IR Empfänger mit 3,3v funktioniert sollte es ohne Probleme gehen, falls man einen 5v Empfänger hat, müsste man das Ausgangssignal auf einen für den RPi verträglichen Wert begrenzen.

    Einmal editiert, zuletzt von Fliegenhals (30. März 2015 um 19:09)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!