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 User, > > ich habe noch eine Frage zur Programmierung des E-Dip: > Zur Zeit habe ich einen Thread geschieben, der ständig im Hintergrund läuft und über wait den Interrupt > des E-Dip abfragt. Hier der Code: > <code> > //------------------------------------------------------------------------ > thread touchabfrage //Hier werden die Touchbuttons der eDIP's abgefragt > //------------------------------------------------------------------------ > > // Dieser Thread läuft ständig im Hintergrund und fragt die Interruptleitung > // des eDIP's ab - nach gedrückten Touchbuttons. > // Bei einem entsprechenden Druck wird in die Globalvariable "def.edipTouch" > // der aktuelle Wert des Buttons abgelegt > > { > > //r=edip.receiveframe(def.edipAddr,Display1); > // eDIP-Touch wird über Interrupt abgefragt, Port P1H.4, Wannenstecker Pin 5 > wait not ports.get(12); // nur weitermachen, wenn Interupt von edip vorliegt! > { > r=edip.receiveframe(def.edipAddr,Display1); > /* > Scheinbar wird in diesem Array bei der edip-Abfrage über receiveframe > die Antwort als String abgelegt. Dabei bedeuten: > t[0] = 'A' Touchtaste/-Schalter wurde gedrückt > t[2] = Nummer > = 'N' Menüeintrag wurde gedrückt > t[2] = Menüeintrag > = 'B' Bargraph wurde angewählt > t[2] = Bargraph + t[3] = Wert > = 'T' Anforderung Touchmenü öffnen > = 'H' Touchbereich > t[3] = x + t[4] = Y + t[2] = 0 (losgelassen) > t[2] = 1 (berührt) > t[2] = 2 (drag) > = 'X' Touchschalter > t[2] = Schalter + t[3] = Status > = 'V' Version > t[1] = Text (???) > */ > > // ab hier die weiteren Befehlsfolgen für die Edip nach Touch... > do > { > a=edip.getRxData(Display1,t); > if a<255 and a > { > def.edipBereich= t[0]; //siehe oben > //def.edipT1=t[1]; > def.edipTouch = t[2]; //Touch > } > } while a<255 and a; > sleep 100; > } > } > </code> > Meine Frage: ist dies sinnvoll oder ist es besser, den gleichen Code nicht in einen Thread, sondern > in eine Funktion zu packen > und eben diese Funktion immer wieder aufzurufen, wenn man eine Eingabe über das E-Dip erwartet? > > Danke für Eure Antworten, > Heiko