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 Migi > > Danke für den Tipp! Werde meinen Code mal dahingehend durchsehen und allenfalls anpassen. > > Noch zwei Detailfragen zum Thema: > > Funktionieren die IFs und allenfalls auch die FORs richtig, wenn ich den zu prüfenden Wert > zuerst in eine lokale Variable abfülle? Kannst Du ev. ein kleine Beispiel posten, welches > zeigt wie Du diese Probleme in den Griff gekriegt hast? > > Kann es nach Deiner Erfahrung sein, dass die Übergabe komplexer Datentypen an Funktionen > zu Problemen führt.Der folgende Codeausschnitt zeigt ein Beispiel dafür, d.h. Übergabe eine Datentyps > aus einem Array an eine andere Funktion (Fett): > > <code> > function processdisplayinput(data.displaystruct display) { > byte d[64]; > byte commandchar; > byte l; > byte Type, Val1, Val2; > > edip.receiveframe(display.address, display.status.inputbuffer); > > l=edip.getRxData(display.status.inputbuffer,d); > if l>0 and l<255 { > display.status.sleeptimer=system.timer()+display.timeout; > } > while l>0 and l<255 { > if d[2]>0 and d[2]<255 { > Type=d[0]; > Val1=d[2]; > Val2=d[3]; > command(display,Type,Val1,Val2); > }; > l=edip.getRxData(display.status.inputbuffer,d); > }; > }; > > <b>function controldisplay(data.displaystruct display)</b> { > processdisplayinput(display); > > if display.status.newpara.mode==display.status.para.mode { > refresh(display); > } else { > exit(display); > enter(display); > }; > }; > > thread displaythread { > int t; > for t=0 ... data.DisplayCount-1 { > <b>controldisplay(data.display[t]);</b> > }; > sysstat.Update(data.Threaddisp); > }; > </code> > > Danke und Gruss > > Tom