habe so eben eine Drucktaster an meine Arduino angeschlossen und es so Programmier, dass wenn ich die Drucktaster betätige eine Tastatur befehl ausgibt.
Das Problem an der Geschichte ist, Arduino soll eine einziges mal den Tastatur befehl ausgeben auch wenn ich die Drucktaster permanent gedrückt halte.
z.B.
Drucktaster gedrückt = Tastatur Befehl "A", egal wie lang ich die Drucktaster gedrückt halte, es soll nur ein einziges mal den Befehl "A" ausgeben.
Drucktaster loslassen = keine Funktion.
tarkankantur:
Drucktaster gedrückt = Tastatur Befehl "A", egal wie lang ich die Drucktaster gedrückt halte, es soll nur ein einziges mal den Befehl "A" ausgeben.
Du könntest das erreichen, indem Du nach dem Ausgeben von 'A' eine Schleife einfügst, die durchlaufen wird, solange der Taster gedrückt ist (bzw. bleibt). Also ungefähr
while(digitalRead(tasterpin)==0) { delay(10); }
Nachteil dieser Schleife ist, dass der Arduino sonst nichts tun kann. Vorteil ist, dass es sehr einfach ist und funktioniert.
Gruß
Gregor
PS: Wie bist Du auf den Betreff gekommen? Was ist FSX?
gregorss:
Du könntest das erreichen, indem Du nach dem Ausgeben von 'A' eine Schleife einfügst, die durchlaufen wird, solange der Taster gedrückt ist (bzw. bleibt). Also ungefähr
while(digitalRead(tasterpin)==0) { delay(10); }
Nachteil dieser Schleife ist, dass der Arduino sonst nichts tun kann. Vorteil ist, dass es sehr einfach ist und funktioniert.
Gruß
Gregor
PS: Wie bist Du auf den Betreff gekommen? Was ist FSX?
Vielen vielen dank, lieber Gregor. FSX ist die Kürzel von Flug Simulator X von Microsoft.
Ich versuche gerade mit Hilfe von Arduino Schalter zu basteln mit deren Hilfe ich im Spiel, Lichter von Flugzeug an und aus schalten kann und Fahrwerk ein und aus fahren.
Alles andere habe ich nicht hinbekommen. Ich bedanke mich noch mal recht herzlich bei allen Member.
Meine nächste frage wehre, wie kann ich diesen Programm erweitern.
Möchte weitere Pins mit Keyboard.write belegen.
z.B. Pin 3 mit "B", Pin 4 mit C, Pin 5 mit D u.s.w.
Deine Lösung gefällt mir nicht. Du blockierst den Sketch in der while-Schleife solange der Taster gedrückt ist und so kannst Du keine anderen Tasten kontrollieren.
Hallo,
wenn man bei Deinem, uns nicht gefallenden- Beispiel bleibt, dann ist doch
alles vorgegeben.
Du hast hier "pinMode(2, INPUT_PULLUP);" für einen Buchstaben festgelegt.
Wenn Du jetzt einen weiteren Buchstaben bedienen möchtest, dann brauchst
Du einen weiteren Pin. Das könnte dann so aussehen:
"pinMode(7, INPUT_PULLUP);"
Nun brauchst Du also noch eine zweite Abfrage, die der ersten gleichen könnte.
Wenn DU nur ein wenig nachdenken würdest, dann hättest Du mit:
if(digitalRead(5)==LOW){
Keyboard.write(0x44);
while(digitalRead(5)==0) { delay(210); }}
eine passende Lösung gefunden.
Du hast hier jetzt eine Lösung für einen zweiten Buchstaben- es ist von mir
beabsichtigt, das es mit C&P nicht so einfach läuft.
Wir werden hier nicht Deinen Skecht Stück für Stück erweitern, das was Du
möchtest, ist billigstes Basic-Wissen, das DU Dir aneignen solltest.
Die anderen, besseren, Dir vorgeschlagenen Beispiele- laufen alle stumpf durch.
Wenn Du keines von denen zum laufen bekommst, dann hast Du bestimmt KEIN
"wie nutze ich einen Drucktaster" Problem.
Gruß und Spaß
Andreas
SkobyMobil:
Hallo,
wenn man bei Deinem, uns nicht gefallenden- Beispiel bleibt, dann ist doch
alles vorgegeben.
Du hast hier "pinMode(2, INPUT_PULLUP);" für einen Buchstaben festgelegt.
Wenn Du jetzt einen weiteren Buchstaben bedienen möchtest, dann brauchst
Du einen weiteren Pin. Das könnte dann so aussehen:
"pinMode(7, INPUT_PULLUP);"
Nun brauchst Du also noch eine zweite Abfrage, die der ersten gleichen könnte.
Wenn DU nur ein wenig nachdenken würdest, dann hättest Du mit:
if(digitalRead(5)==LOW){
Keyboard.write(0x44);
while(digitalRead(5)==0) { delay(210); }}
eine passende Lösung gefunden.
Du hast hier jetzt eine Lösung für einen zweiten Buchstaben- es ist von mir
beabsichtigt, das es mit C&P nicht so einfach läuft.
Wir werden hier nicht Deinen Skecht Stück für Stück erweitern, das was Du
möchtest, ist billigstes Basic-Wissen, das DU Dir aneignen solltest.
Die anderen, besseren, Dir vorgeschlagenen Beispiele- laufen alle stumpf durch.
Wenn Du keines von denen zum laufen bekommst, dann hast Du bestimmt KEIN
"wie nutze ich einen Drucktaster" Problem.
Gruß und Spaß
Andreas
besten dank, Andreas.
werde mich in Zukunft mehr mit Arduino beschäftigen.
Gruß Tarkan.
agmue:
Allerdings finde ich sie sehr kreativ. Laß es mich mal eine schöne Sackgasse nennen.Ein nicht ganz so blockierender Ansatz (habe nur einen UNO):