Servus beieienander. Ich wollte mal anfragen ob jemand Erfahrung damit hat, einen Tastenanschlag bei einem Handy (in meinem Fall wird es ein Nokia 6110 sein) mit einem Transitor auszulösen. Ich möchte mein Handy nämlich zukünftig über einen uC bedienen. Bedenken habe ich, da ein Transistor seine Collector-Emitter-Spannung leider nicht bis auf 0V "herunterziehen" kann.ein Schalter allerdrings schon. Leider habe ich noch keine Möglichkeit für praktische Tests, will aber schonmal theoretisch vorplanen. Kann mir also jemand sagen obs geht oder nicht? Vielen dank
1.) geht wahrscheinlich, ist aber davon abhängig wie die tastatur funktioniert 2.) warum nicht per seriellem port ran oder gleich nen gsm-modem?
Hallo, > Ich wollte mal anfragen ob jemand Erfahrung damit hat, einen > Tastenanschlag bei einem Handy (in meinem Fall wird es ein Nokia 6110 > sein) mit einem Transitor auszulösen. > Ich möchte mein Handy nämlich zukünftig über einen uC bedienen. Nein, habe ich nicht. Ich habe noch so ein altmodisches Handy - also eines mit den Tasten 0...9. Viel mehr Tasten braucht man ja auch nicht zum Wählen. Und da tippe ich dann immer mit dem Finger drauf. Transistoren oder Mikrocontroller sind mit zu empfindlich dafür. ;-) > Bedenken habe ich, da ein Transistor seine Collector-Emitter-Spannung > leider nicht bis auf 0V "herunterziehen" kann.ein Schalter allerdrings > schon. Ein FET kann das auch; je nach Modell hast Du dann nur wenige Milliohm zwischen Source und Drain. Gruß, Michael
Möglicherweise schalten die Tasten nicht gegen Masse, sondern sind in einer Matrix angeordnet. Sollte dies der Fall sein: So eine Tastaturmatrix kann man mit einfachen Transistoren nicht ohne weiteres schalten, da ein gemeinsames Bezugspotenzial fehlt. Alternativen: 1. Je ein Analogschalter parallel zu den Tasten: Damit kann potenzial- frei geschaltet werden. Du kannst bspw. für je 4 Tasten einen 4066 einsetzen. 2. Das Ganze geht auch digital: Du speicherst die gewünschten Tasten- zustände in Tristate-D-Latches (bspw. 74xx373). Jede Tastenzeile bekommt ihren eigenen Latch, die Zeilenansteuerleitungen werden mit den /OE-Eingängen, die Q-Ausgänge mit den Spaltenleseleitungen verbunden, so dass bei Aktivierung einer Tastenzeile durch die Handy-Elektronik auch der entsprechenden Latch aktiviert wird und so dem Handy Tastendrücke gemäß dem im Latch gespeicherten Bitmuster vorgegaukelt werden. Der Mikrocontroller beschreibt die Latches über die D- und CLK-Eingänge. Dazu musst du natürlich erst die genaue Beschaltung der Matrix im Handy analysieren. Außerdem müssen die Latch-Bausteine signalspannungsmässig mit der Handy-Elektronik zusammenpassen. Der 74LVX373 läuft bspw. schon ab 2V und könnte ein Kandidat sein. Bei der ersten Variante musst du weniger denken, dafür brauchst du mehr Mikrocontroller-I/Os und evtl. mehr ICs.
Du hast recht, es ist so eine Matrix > 2. Das Ganze geht auch digital: Du speicherst die gewünschten Tasten- > zustände in Tristate-D-Latches (bspw. 74xx373). Jede Tastenzeile > bekommt ihren eigenen Latch, die Zeilenansteuerleitungen werden mit > den /OE-Eingängen, die Q-Ausgänge mit den Spaltenleseleitungen > verbunden, so dass bei Aktivierung einer Tastenzeile durch die > Handy-Elektronik auch der entsprechenden Latch aktiviert wird und so > dem Handy Tastendrücke gemäß dem im Latch gespeicherten Bitmuster > vorgegaukelt werden. Der Mikrocontroller beschreibt die Latches über > die D- und CLK-Eingänge. Dazu musst du natürlich erst die genaue > Beschaltung der Matrix im Handy analysieren. Außerdem müssen die > Latch-Bausteine signalspannungsmässig mit der Handy-Elektronik > zusammenpassen. Der 74LVX373 läuft bspw. schon ab 2V und könnte ein > Kandidat sein. Kannst du mir das vllt etwas genauer beshreiben, oder irgendwelche schlauen Seiten zu diesem Thema sagen? ich versteh davon leider noch nicht viel und Jeder Satz mit "Latch" ist ein Fragezwichen für mich. Und das Datenblatt mcht mich auch nicht ganz schlau. Aber das würde mich schon sehr interessieren. Da kann man scheinbar so manch eine Leiterbahn einsparen.
> Jeder Satz mit "Latch" ist ein Fragezwichen für mich. Zum Thema Latch: http://de.wikipedia.org/wiki/Latch Der 74x373 hat gleich 8 davon. Zusätzlich sind die Ausgänge tristate, können also in einen hochohmigen Zustand geschaltet werden. Alternativ könnte man auch ein 8-fach-D-Flipflop verwenden (74x374), für die Schaltung ergibt sich dadurch kein Unterschied. http://de.wikipedia.org/wiki/D-Flipflop#D-Flipflop So wie im obigen Bild habe ich mir das ungefähr vorgestellt. Ich bin im Beispiel von folgenden Randbedingungen ausgegangen: 1. Die Tastaturmatrix hat 4 Zeilen und 8 Spalten. Ist die Zeilenzahl größer als 4, musst du zusätzliche 74x373-Latches hinzufügen. Ist die Spaltenzahl kleiner als 8, legst du die unbenutzten D-Eingänge der Latches einfach auf GND oder VCC, anstatt sie an den µC anzuschließen. Mehr als 8 Spalten hat die Tastatur wahrscheinlich nicht. Wenn doch, werden pro Zeile mehrere Latches benötigt. 2. Die Handy-Elektronik treibt die Zeilenleitungen Z0-Z3 der Tastaturmatrix mit einem Low-Active-Signal und liest den aktuellen Zustand über die Spaltenleitungen S0-S7. Die Handy-Elektronik legt also an diejeige Zeile, die gerade gelesen werden soll, ein Low-Signal an, alle anderen Zeilen lässt sie offen. Dann schaut sie nach, an welchen Spaltenleitungen das Low-Signal ankommt. Das sind dann die gedrückten Tasten der aktivierten Zeile. Treibt die Handy-Elektronik nicht die Zeilen, sondern die Spalten, dann vertausche einfach die Zeilen mit den Spaltenleitungen. Ist das Zeilensignal nicht low- sondern high-active, schaltest du vor die EN-Eingänge der Latches jeweils einen Inverter. Aus den Pullup-Widerständen R1-R4 (ca. 10kOhm) machst du Pulldown-Widerstände (jeweils vom Inverter-Eingang nach GND. Um festzustellen, wie die Handy-Elektronik die Tastaturmatrix genau anspricht, wäre ein Oszi nicht schlecht, vielleicht geht es mit ein paar Tricks aber auch ohne. Wie schon in meinem ersten Beitrag erwähnt, musst du auf die richtigen Signalpegel achten. Sind sie in deiner Schaltung höher als diejenigen im Handy, geht dieses kaputt. Funktionsweise der Schaltung: Der Mikrocontroller schreibt in jeden der Latches eine Bitkombination, die den Zustand der Tasten der entsprechenden Zeile beschreibt. Dabei steht eine 0 für "gedrückt" und eine 1 für "nicht gedrückt". Das Schreiben geschieht dadurch, dass das Bitmuster auf den Leitungen MS0-MS7 ausgegeben und anschließend für der den anzusprechenden Latch auf die MZn-Leitung (n=0..3) ein kurzer High-Impuls gegeben wird. Liest die Handy-Elektronik eine Zeile aus, indem sie die Zeilenleitung auf low zieht, werden die 8 Ausgänge des zugehörigen Latches über den EN-Eingang aktiviert, die Ausgänge aller anderen Latches bleiben hochohmig. Die Handy-Elektronik liest somit an den Spaltenleitungen den gespeicherten Inhalt des Latches aus. Die Widerstände R5-R12 (ca. 1kOhm) begrenzen den Strom, wenn trotz angeschlossener Tastendruckelektronik Tasten von Hand betätigt werden. Und die Alternative mit den Analogschaltern? So schlecht ist die auch nicht :) Bei der obigen rein digitalen Schaltung kommst du zwar mit ein paar ICs weniger aus, aber je nach Anzahl der Tasten ist der Unterschied nicht einmal so groß. Dafür musst du schon recht viele Schaltungsdetails des Handys analysieren und auf die richtigen Signalpegel achten. Die Verwendung von Analogschaltern ist im Vergleich dazu flexibler und funktioniert unabhängig von der internen Beschaltung im Handy, fast so, also würde man je ein Relais parallel zu jeder Taste schalten. Wieviele Tasten hat das Handy denn? Musst du alle davon ansprechen können?
Hey das war mal ne Antwort. Dickes Danke!!! Ich verstehe also richtig, dass ich in den Latch durch ein positives Signal an C1 einspeichern kann was gerade an D1-D8 anliegt (high / low) und dann durch ein low-signal an EN wird dieses Abbild dann an den Ausgängen ausgegeben. Ein Oszi habe ich, und werde damit hoffentlich auch herausfinden wie das Handy arbeitet. Aber meinst du wirklich dass die Spannung so kritisch ist? mit den 1k-Widerständen dürfte doch genug absicherung für 1V, 2V differenz sein oder nicht? Mehr spannungsunterschiede zu 5V mit denen meine Elektronik arbeiten soll erwarte ich zumindest nicht. Das Handy, welches ich bedienen möchte hat 18 Tasten, wobei ich davon 12 Tasten steuern möchte (0-9,*,#,Abheben,Auflegen). Dies würde sich mit einer 4x4 Matrik verwirklichen lassen. Die anderen Tasten (LMenü,Up,Down,RMenü) liegen in einer weiteren Zeile der Matrix. Sollte das Handy also die Spalten meiner Matrix abtasten, brauche ich für die weitere Zeile keine zusätzlichen Bauteile. Dann werde ich auch diese Tasten dazunehmen. Ja Analogschalter sind schon die sicherere Methode, aber nunja, soo viele Kabel um die paar signale. Und ich will ja was lernen. Gerade wo ich doch jetzt in die Digitaltechnik einsteigen möchte.
> Ich verstehe also richtig, dass ich in den Latch durch ein positives > Signal an C1 einspeichern kann was gerade an D1-D8 anliegt (high / low) > und dann durch ein low-signal an EN wird dieses Abbild dann an den > Ausgängen ausgegeben. Wer Datenblätter lesen kann ist klar im Vorteil...
Hallo, hatte mal ein ähnliches Problem. Die Daten eines Mitutoyo Meßschiebers sollten über USB an ein Laptop als Tastencode geschickt werden. Die "Schnittstelle" ist eine Zifferntastatur mit opt. Maus drin. Auch in diesem Teil war eine Matrix zu schalten, mit Zeilen- und Spaltenleitungen. Der Tastaturcontroller ist eim EM78M611, Datenblatt s. ALLDATASHEET. Die Verbindung der Leitungen gelang mir mit einer Handvoll Transistoren, wobei immer der Transistor für die jeweilige Zeile und Spalte angesteuert werden. (Siehe Schaltplan) Das Ganze hat in der Tastatur noch Platz gefunden, so daß ich jetzt an der sowieso benötigten Tastatur/Maus-Kombination auch noch den Meßschieber anschließen kann. Vielleicht klappts auch mit dem Handy so.... ulf.
Jetz ma ne sau dumme Frage: Was muss ich eigentlich bei meinem Handy rausmessen? ich kapier's grad gar nicht. Bei jedem Taster steht ein Kontakt auf V+ der andere auf GND. Wenn der Taster schließt, stehen beide Auf GND. Müsste da nicht irgendwie ein pulsieren drin sein? Ulf wrote: > Hallo, > > hatte mal ein ähnliches Problem. Die Daten eines Mitutoyo Meßschiebers > sollten über USB an ein Laptop als Tastencode geschickt werden. > Die "Schnittstelle" ist eine Zifferntastatur mit opt. Maus drin. > Auch in diesem Teil war eine Matrix zu schalten, mit Zeilen- und > Spaltenleitungen. Der Tastaturcontroller ist eim EM78M611, Datenblatt s. > ALLDATASHEET. > Die Verbindung der Leitungen gelang mir mit einer Handvoll Transistoren, > wobei immer der Transistor für die jeweilige Zeile und Spalte > angesteuert werden. > (Siehe Schaltplan) > Das Ganze hat in der Tastatur noch Platz gefunden, so daß ich jetzt an > der sowieso benötigten Tastatur/Maus-Kombination auch noch den > Meßschieber anschließen kann. > Vielleicht klappts auch mit dem Handy so.... > > ulf. Sowas habe ich mir auch schon überlegt. Zwar mit n paar 40106ern aber Transistoren tuns ja prinzipiel auch. Trotzdem gefällt mir irgendwie die andre Methode besser. Ein Lösungsweg wäre es, aber. Trotzdem Danke für deine Idee.
Zur "sau dummen Frage": Wenn wirklich jede Taste ein "V+" gegen GND schaltet, solltest Du mal überprüfen, ob die auf GND liegenden Leitungen miteinander verbunden sind. Aber: Ich kann mir nicht vorstellen, daß der Handyentwickler für jede Taste einen Portpin vergeudet hat... Bei mir war "V+" ca. 5V und schien auch nicht getaktet zu sein. Wenn man die Leitung aber mit einem ca. 10k Widerstand gegen GND belastete, lag ein schönes Rechtecksignal an. Am einfachsten wäre es, z.B. den "V+" von der Ziffer 9 mit GND einer anderen Ziffer zu verbinden. Kommt dabei die 9 auf das Display, ist wirklich ein Pin pro Taste verbaut und Du mußt ebensoviele Transistoren ansteuern. Ansonsten mußt Du für Zeile und Spalte je einen Transistor nehmen, z.B. 3Zeilen und 4Spalten = 7 Transistoren für eine 12 Tasten Matrix. Bei mir war "V+" ca. 5V und schien auch nicht getaktet zu sein. Wenn man die Leitung aber mit einem ca. 10k Widerstand gegen GND belastete, lag ein schönes Rechtecksignal an.(Pull high input) Und, wie gesagt, die jeweils 2 Transistoren haben die Tastatur sauber bedient. ulf.
Also: Ich hab mal alles ganz wild vermessen. Das Ergebnis steht im Bild. Das Handy setzt die Signalleitungen 1-5 Auf ca. 3V (wenn ich meinem Oszi glauben darf). Beim Drücken eines Schalters wird die entspechende Leitung durch die auf 0V liegenden Signalleitungen 6-9 ebenfalls auf 0V gezogen. Selbst mit 10kOhm belastet gibts keine Rechtecke zu finden. Die Taste löst mit 10k nicht aus, aber die entsprechende Signalleitung 1-5 wird von ~3V auf ca. ~0,5V heruntergezogen. Wie das Handy zwischen den Leitungen 6-9 unterscheidet ist mir ein Rätsel, welches höchstens durch Strommessung einen Sinn gibt, denke ich. Wer ne Idee hat bitte Posten! Ich hab grad keine Ahnung mehr wie des funktionieren könnte.
mal ne blöde frage warum kann man nicht einfach einen optokoppler verwenden und den an die tasten kontakte anloten, falls das nicht funktioniert wegen rechtecksignal oder so vileihct einen optotriac??? benötigt halt einige teuererer bauteile
> Wie das Handy zwischen den Leitungen 6-9 unterscheidet ist mir ein > Rätsel, welches höchstens durch Strommessung einen Sinn gibt, denke > ich. Ich glaube nicht, dass da etwas mit Stromsignalen gemacht wird. Ich würde eher auf ein Problem bei der Oszimessung tippen. An einer gedrückten Taste solltest du eigentlich ein Rechtecksignal messen können, unabhängig davon, auf welcher Seite die Ein- und Ausgänge des Handy-Controllers liegen und ob die Signalpegel high- oder low-active sind. Das Puls-/Pausenverhältnis kann allerdings sehr klein sein. Um die kurzen Pulse sehen zu können, muss du also die Zeitbasis des Oszis genügend weit aufdrehen, die Triggerschwelle richtig einstellen (ca. 1.5V) und am besten in den Triggermodus "normal" schalten. Es gibt m.W. nur zwei sinnvolle Möglichkeiten, eine Tastaturmatrix durch einem Controller anzusteuern (s. Bild): Variante a: Die Zeilenleitung ist normalerweise offen und wird bei Aktivierung auf Low geschaltet. Die Spaltenleitung wird über einen Pullup im Ruhezustand auf High gehalten. Nur wenn die Taste gedrückt ist und die betreffende Zeile aktiviert wird, wird die Spaltenleitung auf Low gezogen. Variante b: Wie Variante a, nur mit vertauschten High- und Low-Pegeln. > Beim Drücken eines Schalters wird die entspechende Leitung durch die > auf 0V liegenden Signalleitungen 6-9 ebenfalls auf 0V gezogen. Das sieht nach Variante b aus. Allerdings müssten die 0V durch kurze 3V-Pulse unterbrochen werden. > Die Taste löst mit 10k nicht aus, aber die entsprechende Signalleitung > 1-5 wird von ~3V auf ca. ~0,5V heruntergezogen. Ich nehme an, du hast den 10k-Widerstand gegen GND gelegt. Das sieht wiederum eher nach Variante a aus: Die 10k bilden mit dem Pullup (typischer Wert: 50k) einen Spannungsteiler, an dem du die Spannung 3V*10k/(10k+50k)=0,5V misst. In Variante b hätte ich erwartet, dass die Spannung durch die 10k auf 0V heruntergezogen wird, sonst taugt der Ausgangs-MOSFET im Controller nichts.
yalu wrote: > Ich glaube nicht, dass da etwas mit Stromsignalen gemacht wird. Ich > würde eher auf ein Problem bei der Oszimessung tippen. An einer > gedrückten Taste solltest du eigentlich ein Rechtecksignal messen > können, unabhängig davon, auf welcher Seite die Ein- und Ausgänge des > Handy-Controllers liegen und ob die Signalpegel high- oder low-active > sind. Das Puls-/Pausenverhältnis kann allerdings sehr klein sein. Um die > kurzen Pulse sehen zu können, muss du also die Zeitbasis des Oszis > genügend weit aufdrehen, die Triggerschwelle richtig einstellen (ca. > 1.5V) und am besten in den Triggermodus "normal" schalten. Langsam, meinOszi ist alt... sehr alt... So viele Knöpfe hat es gar nicht und ausser der Zeitbasis und der Spannungseinstellung funktioniert auch nicht viel. Die meisten Knöpfe sind so fest, dass sich eher der Knopf an sich, nicht das Poti dreht. Aber bisher habe ich immer alles erkennen können. Aber selbst wenn die Zeitbasis nicht stimmt, und auch das Triggern nicht funktioniert. ich müsste ja immerhin ein unsauberes Signal sehen, was ich sehe ist aber ganz klar. Nicht (aussergewöhnlich) unscharf, nix. > Es gibt m.W. nur zwei sinnvolle Möglichkeiten, eine Tastaturmatrix durch > einem Controller anzusteuern (s. Bild): > > ... Dachte ich eigentlich auch. > Das sieht nach Variante b aus. Allerdings müssten die 0V durch kurze > 3V-Pulse unterbrochen werden. ich seh leider nix. Aber ich glabe es ist schon eher Variante a. Nur denke ich sind die FETs ständig an und in dem moment, wenn eine Taste gedrückt wird, schaltet er in regelmäigen aber verdammt kurzen Momenten Die FETs nacheinander kurz aus. kann das sein? > Ich nehme an, du hast den 10k-Widerstand gegen GND gelegt. Das sieht > wiederum eher nach Variante a aus: ... Ganz genau. Tamme D. wrote: > Beitrag "Mein verrücktes Projekt ist fertig :)" hab ich auch schon gefunden, aber die möglichkeit ist die allerletzte, die ich nehmen werde. Aber genau dafür ist es ;-)
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.