PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Odometrie und HyperTerminal



sissi
26.09.2005, 21:00
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!!

Xeus
26.09.2005, 21:05
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

Winne
26.09.2005, 21:22
Hallo sissi und Herzlich Willkommen im Forum,

vielleicht funktiniert das.




#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;
}

stochri
26.09.2005, 21:48
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

sissi
27.09.2005, 08:06
Danke Winne, werde das nachher direkt mal ausprobieren und danke Stochri für die Nörgerlei - werds mir merken...:-)