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> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > Hi, > > ich weiß nicht genau was Du machen willst. Möchtest Du die Tastatur pollen bis eine Taste gedrückt wurde, > empfehele ich folgendes: > > do > { > key_in=Key_Scan(); > key_ch=Key_TranslateKey(key_in); > AbsDelay(200); > } > while(key_ch == -1); > Msg_WriteChar(key_ch); > > Die Schleife läuft solange, bis der Wert von key_ch ungleich -1 ist. Das bedeutet ein gültiges Zeichen > wurde getippt. > > > Gruss Peter > > > Hallo, > > > > möchte mit der 12er-Tastatur einen oder mehrere Parameter einlesen (z.B. stellen der Uhrzeit). > > Es soll die do-Schleife solange durchlaufen werden, bis eine Taste gedrückt wurde. > > Wenn keine Taste gedrückt wird ist der Rückgabewert -1 und somit müsste while(key_ch==-1) > > die Schleife immer durchlaufen, tut sie aber nur 1x. > > > > while(0) do-Anweisung wird 1x durchlaufen = ok > > while(1) do-Anweisung wird endlos durchlaufen = ok > > while(key_ch) do-Anweisung wird endlos durchlaufen auch wenn man Taste 0 drückt > > > > Ist mein Programm korrekt???? > > > > Danke > > > > > > > > _____________________________________________________________ > > > > word key_in; > > char key_ch, std_z; > > > > void main(void) > > { > > std_z=0; > > Key_Init(); > > std_z=key_input(); > > Msg_WriteChar(0x20); > > Msg_WriteChar(std_z); > > while(1); > > > > } > > > > char key_input(void) > > { > > do > > { > > key_ch=-1; > > key_in=Key_Scan(); > > if (key_in != 0) > > key_ch=Key_TranslateKey(key_in); > > AbsDelay(200); > > Msg_WriteChar(key_ch); > > } > > while(key_ch == -1); > > return key_ch; > > }