Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Michael, > > Baue ein kleines sleep nach dem Abfragen der Tastatur ein. (z.B. sleep 20;) > Das sollte dieses Problem lösen. > Die Tastenwerte, die Zurückgegeben werden sind nicht zufällig. > Dies lässt sich mit der steigenden Spannung am 100nF Kondensator > vor dem AD-Port erklären. > > Statt dem sleep könntest Du auch ein "wait rbkeyb.get()==0;" einbauen. > Es wird dann nach einem Tastendruck solange gewartet, bis diese > wieder losgelassen wurde. > In Deinem Fall: > b = rbkeyb.get(); > if (b!=0) m_byKey = b; > wait rbkeyb.get()==0; > > Übrigens werde ich rbkeyb.c2 überarbeiten und an stkeyb.c2 anpassen. > Es wird aber kompatibel zur alten Version bleiben. > > MfG André H. > > > > Hallo, > > > > ich habe gerade versucht, ein kleines Testprogramm zu schreiben, das die Tasteneingabe auf der 1*12-Tastatur > > auf dem externen LCD ausgibt. Als ich "vergaß", den Cursor zurückzusetzen, sah ich, dass beim Loslassen > > mancher Tasten zufällige andere Tasten ausgelöst werden: Hier drücke ich kurz die "7", und auf der Anzeige > > (4*16) erscheint > > > > 7777777777777777 > > 7777777777777777 > > 7777777777777777 > > 777441008552##99 > > > > Hardware: CC2 auf ReglerBoard, 1*12-Tastatur über Adapter angeschlossen, 4*16-LCD. Aktuelles OS geladen > > (meldet CC2 V2). > > > > Das gehört doch nicht so, oder? Hier das Programm (Auszug): > > > > ------------------ > > function initialisiere() { > > rblcd.init(); > > rblcd.clear(); > > rbkeyb.select(0); > > m_bEnde = 0; > > } > > > > function wertanzeige(byte b) { > > rblcd.put(b); > > } > > > > thread keypoll { > > byte b; > > b = rbkeyb.get(); > > if (b!=0) { > > m_byKey = b; > > } > > } > > > > thread main { > > initialisiere(); > > run keypoll; > > while (!m_bEnde) { > > wait m_byKey; > > wertanzeige(m_byKey); > > m_byKey = 0; > > } > > halt; > > } > > ------------------- > > > > Michael