Display Ausgabe eines Strings mit Integer Zahl Kategorie: Programmierung (von Thomas Horn - 16.09.2002 1:25) | |
| |
Hallo, ich möchte gerne bei der Ausgabe über lcdext.print(s) , lcd.print(s, str.length(s)) mit s = x + "Pulse" die Anzahl der Pulse über das externe LCD - Display und auch über das kleine CC2 - Unit Display so ausgeben lassen, da� für x (int x) keine ASCII - Zeichen (Symbole), sondern die dazugehörigen Zahlen im jeweiligen Display mit ausgegeben werden. Da man nur strings auf dem jeweiligen Display ausgeben kann, bräuchte ich eine Funktion function get_string_of_int (int x) , die mir jede Integer Zahl als string ausgibt. Oder wie kann ich eine integer Zahl auch als Interger - Zahl mittels lcdext.print(s) , lcd.print(s, str.length(s)) ausgeben lassen ? Besonders in im LCD - Display erscheinen nur Symbole, anstelle von z.B. 2 Pulse (wenn x=2). Woran liegt das (Fehler im Programm) ? Ziel bei der jeweiligen Display Ausgabe: z.B. 2 Pulse wenn x=2 ist und nicht 2 als ASCII - Zeichen im Display Das (fehlerhafte) Programm (Auszug) lautet: function get_string_of_int(int x) returns byte { byte a; byte str; x=0;a=0; while x { x=x*10; str = str + 0x30 - x; a=a + 1; } return str; } thread main { string s; //Ausgabe nur als String - Typ möglich byte a; byte n; int channel; byte x; // Zahl der Pulse int id; // CAN BUS Daten senden can.init( 4,0x07FF,0x0000 ); id = 100; for channel =0...13 can.ready(channel); if ports.get(0) x = ports.getcount(0); get_string_of_int(x); . .// Senden von CAN BUS Nachrichten . { lcd.init(); //Ausgabe auf dem Display der CC2 - Unit sleep 100; s = x + "Pulse"; //Fehler, denn x ist int und s ist vom Typ String, wie zu ändern ? lcd.print(s, str.length(s)); } loop { lcdext.print(s); /* LCD - Display Ausgabe */ sleep 1500; lcdext.clear(); sleep 1500; } } | |
Antwort schreiben Antworten: Lesen hilft weiter (von André H. - 16.09.2002 9:16) |