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 Peter, > > > kann mal jemand bitte meinen Code checken. Ich glaube ich habe ein Problem mit einem ordentlichen > > Programmdurchlauf. Womöglich arbeit mein thread falsch und ich komme nie zu einer Stelle im Code. > > Oder kann ich das Problem irgendwie mit capture und release lösen. > > Zuerst ein paar grundlegende Dinge: > 1. Benutze immer das Code-Tag für Quellcode. Ansonsten kann man diesen nur schwer lesen und > wird meistens auch falsch dargestellt, da einzelne Sonderzeichen ganze Passagen als HTML-Tag > interpretiert werden können. > 2. Poste bitte keine so langen Codes als Text direkt ins Posting !! > Packe sich bitte als ZIP, lade diese auf einen WEB-Space Deiner Wahl und verlinke > diese Datei dann im Text. > Ansonsten wird sich kaum jemand die Mühe machen, sich mit Deinem Programm zu beschäftigen. > 3. Wenn Du das Programm schon als Text postest, dann poste bitte nur das wesentliche und > mit genauer Fehlerbeschreibung. Denn so wie ich es kurz überflogen habe, werden einige > selbstdefnierte Module bzw. Erweiterungen benutzt, die keiner außer Dir kennen kann. > 4. Optimiere das Programm etwas, um zeilen (und somit Code) zu sparen. > Als Bsp.: > > Dies kann man auch einfacher schreiben: > <code> > a2_var.y[1].port = 0;// Taster 0 > a2_var.y[2].port = 1; // Taster 1 > a2_var.y[3].port = 2; // Taster 2 > a2_var.y[4].port = 3; // Taster 3 > a2_var.y[5].port = 4; // Taster 4 > a2_var.y[6].port = 5; // Taster 5 > a2_var.y[7].port = 6; // Taster 6 > a2_var.y[8].port = 7; // Taster 7 > > a2_var.y[9].port = 0; // Taster 8 > a2_var.y[10].port = 1; // Taster 9 > a2_var.y[11].port = 2; // Taster 10 > a2_var.y[12].port = 3; // Taster 11 > a2_var.y[13].port = 4; // Taster 12 > a2_var.y[14].port = 5; // Taster 13 > a2_var.y[15].port = 6; // Taster 14 > a2_var.y[16].port = 7; // Taster 15 > > a2_var.y[17].port = 0;// Taster 0 > a2_var.y[18].port = 1; // Taster 1 > a2_var.y[19].port = 2; // Taster 2 > a2_var.y[20].port = 3; // Taster 3 > a2_var.y[21].port = 4; // Taster 4 > a2_var.y[22].port = 5; // Taster 5 > a2_var.y[23].port = 6; // Taster 6 > a2_var.y[24].port = 7; // Taster 7 > > a2_var.y[25].port = 0; // Taster 8 > a2_var.y[26].port = 1; // Taster 9 > a2_var.y[27].port = 2; // Taster 10 > a2_var.y[28].port = 3; // Taster 11 > a2_var.y[29].port = 4; // Taster 12 > a2_var.y[30].port = 5; // Taster 13 > a2_var.y[31].port = 6; // Taster 14 > a2_var.y[32].port = 7; // Taster 15</code> > > Und zwar so:<code> > for i=0 ... 31 a2_var.y[i+1].port = 7t = i % 8;</code> > Und schon spart man sich 31 Zeilen ... > > Auch soetwas ist viel zu umständlich und unübersichtlich: > <code> > a2_var.textoutput[0] = 'V'; > a2_var.textoutput[1] = 'e'; > a2_var.textoutput[2] = 'n'; > a2_var.textoutput[3] = 't'; > a2_var.textoutput[4] = 'i'; > a2_var.textoutput[5] = 'l'; > a2_var.textoutput[6] = '0'; > a2_var.textoutput[7] = '1'; > a2_var.textoutput[8] = 0; > > //touchlcd.textmode(3); > touchlcd.touch_schalter(5,7,1,a2_var.textoutput,9);</code> > > Warum benutzt Du keine Strings? > In etwas so:<code> > string text; > ... > text="Ventil010"; > touchlcd.touch_schalter(5,7,1,text,9);</code> > > Auch die Art mit den If-Abfragen als Switch kann man übersichlticher darstellen: > Also Ausschnitt: > <code> > if menue == 3 > { > a8_func.a3(); > } > > if menue == 4 > { > a8_func.a4(); > } > > if menue == 5 > { > a8_func.a5(); > } > > if menue == 6 > { > a8_func.a6(); > } > > if menue == 7 > { > a8_func.a7(); > } > > if menue == 8 > { > a8_func.a8(); > } > > > if menue == 9 > { > a8_func.a9(); > }</code> > > Dies lässt sich so viel übersichlticher Schreiben:<code> > ... > if menue == 3 a8_func.a3(); > else if menue == 4 a8_func.a4(); > else if menue == 5 a8_func.a5(); > else if menue == 6 a8_func.a6(); > else if menue == 7 a8_func.a7(); > else if menue == 8 a8_func.a8(); > else if menue == 9 a8_func.a9(); > ...</code> > > > Das sind alles Kleinigkeiten, die ein Programm übersichlticher machen und auch die Fehlersuche > erleichtern. So habe ich auf jeden Fall keine Lust und Zeit die Routinen nach Fehlern zu > durchforsten. > > MfG André H.