bin mir nicht ganz sicher,aber ich kenne das problem
hterminal sendet und empfängt einen ascii und keine dec werte. gibt aber freeware im netz die das kann.musst mal googln
Hallo an alle,
wenn ich die Odometriedaten mit SerWrite() ausgeben will, dann bekomme auf dem HyperTerminal nur unleserliche Schriftzeichen. Ich denke, dass das daran liegt, dass SerWrite einen char übergeben bekommen muss, Odometrie aber nur Zahlen liefert, also habe ich das folgendermaßen versucht zu umgehen:
int main(void)
{
unsigned int data[2];
unsigned char tab[] = "0123456789AbCdEF";
Init();
while(1)
{
OdometrieData(data);
//Ausgabe des linken Motors
SerWrite(tab[(data[0]/1000)%10],1);
SerWrite(tab[(data[0]/100)%10],1);
SerWrite(tab[(data[0]/10)%10],1);
SerWrite(tab[data[0]%10],1);
}
}
aber das klappt auch nicht - ich will einfach zur Laufzeit den Wert sehen, den die Fotodioden liefern, also z.B. 255 oder 254 und so weiter,
kann mir jemand helfen?
Vielen Dank schon einmal!!
bin mir nicht ganz sicher,aber ich kenne das problem
hterminal sendet und empfängt einen ascii und keine dec werte. gibt aber freeware im netz die das kann.musst mal googln
Hallo sissi und Herzlich Willkommen im Forum,
vielleicht funktiniert das.
Code:#include "asuro.h" #include <stdlib.h> #include <string.h> //Funktion void PrintInt(int wert) { char text[6] ={0}; itoa(wert,text,10); SerWrite(text,strlen(text)); } int main(void) { unsigned int data[2]; Init(); while(1) { OdometrieData(data); //Ausgabe des linken Motors SerWrite("\n\r Links:",9); //Neue Zeile PrintInt(data[0]); //0 --> Linke Seite } return 0; }
Also ohne jetzt nörgeln zu wollen:
Aber Probleme, die schon mehrfach im Forum gelöst wurden könnte man ja auch mit ein wenig Sucharbeit in den Griff kriegen.
Gruss,
strochri
Danke Winne, werde das nachher direkt mal ausprobieren und danke Stochri für die Nörgerlei - werds mir merken...
Lesezeichen