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 Leute, > ich habe massive Probleme, einen ASCII-String zu extrahieren. > Die Daten kommen über die HWCOMM herein. > Beispiel: g="AZ243.0 EL67.0"; > Es handelt sich hierbei um den Azimut-Wert 243 Grad und dem Elevationswert 67 > Dann sollen am Ende zwei Zahlen zwei Variablen zugeordent werden. > Die dann in der C-Control weiter verarbeitet werden sollen. > > Ich habe mir schon das neueste OS von "CC2Net" geholt. > Doch leider habe ich keinen Erfolg und es herrscht Ratlosigkeit. > > Die LCD-Anzeige bringe ich nicht dazu, den "2-ten Wert" am Anfang der zweiten Zeile zu > schreiben, sie klebt es stattdessen an das Ende des Wertes der ersten Zeile. > Ob "goto" oder "line" es geht leider nicht. > > > Hier das Listing: > > > > string g, azs, els; > long az, el; > > /******************************************** > Daten an ser.c2 > ASCII-Daten von WX-Track an die Serielle > *********************************************/ > //------------ > thread main > //------------ > > { > hwcom.init (); > hwcom.setspeed (hwcom.SPEED_9600); > > pcflcd.setpcf(1); // I2C LCD-Anzeige adressieren > pcflcd.init(); // I2C LCD-Anzeige initieren > sleep 35; // x ms Pause > pcflcd.clear(); // I2C LCD-Anzeige löschen > pcflcd.setLight(1); // LCD-Beleuchtung: 0=AUS, 1=EIN > pcflcd.line(1); // 1. Zeile der Anzeige vorbereiten > pcflcd.print("Online Tracking Data"); > pcflcd.line(1); > pcflcd.print("AZ: "); > pcflcd.line(2); > pcflcd.print("EL: "); > > loop > { > pcflcd.goto(2,0); > g = " "; > wait hwcom.rxd(); > { > hwcom.receive(g,20,100); > > strx.mid(g,azs,2,5); //Übernahme des Azimutwertes, zB: 243.0 > strx.mid(g,els,10,4); //Übernahme des Elevationswertes, zB: 67.0 > > az = strx.getNum(azs); > el = strx.getNum(els); > > // ******************************** ab hier kommt später die Weiterverarbeitung************* > pcflcd.goto(2,5); > pcflcd.zahl3p(az); > pcflcd.goto(3,5); > pcflcd.zahl3p(el); > pcflcd.goto(4,5); > pcflcd.print(g); > } > > } > > } > > > Wer kann mir weiterhelfen ??