Re: Probleme mit komplexen Datentypen Kategorie: Programmierung (von lizard - 17.01.2007 12:11) | |
Als Antwort auf Re: Probleme mit komplexen Datentypen von Migi - 16.01.2007 19:31
| |
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): 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); }; Danke und Gruss Tom | |
Antwort schreiben Antworten: Re: Probleme mit komplexen Datentypen (von Migi - 17.01.2007 23:32) Re: Probleme mit komplexen Datentypen (von lizard - 18.01.2007 10:31) |