hi leute, hab jetzt mein code bischen übersichtlicher gemacht (war ja ein schönes durcheinander oO)
Code:
#include "asuro.h" // Odometrie test
unsigned int data[2];
unsigned char s[5] = "thze\0";
void PrintCharR(unsigned int x)
{
unsigned char einer, zehner, huni, tausend;
x = data[1];
einer=x%10;
zehner=(x-einer)/10;
huni=(x-(zehner*10+einer))/100; //nicht mit %, da "%" zu viel speicher brauch
if(x >= 1000)
tausend= 1;
else
tausend= 0;
s[0]=tausend+'0';
s[1]=huni+'0';
s[2]=zehner+'0';
s[3]=einer+'0';
SerWrite(s,5);
}
int main(void)
{
Init();
unsigned char a[5];
int i=0;
while(1)
{
OdometrieData(data); // aktuelle "Position der Odometrie einlesen
a[5] = s[5];
SerWrite("Rechte Odometrie testen: ",24); //Wert der rechten Odometrie Senden
PrintCharR(a);
SerWrite("\r\n\n",3);
for (i=0; i<2000; i++) //5 Sekunden Pause
{
Sleep(72);
}
}
return 0;
}
dennoch funktioniert er immern och nicht, so wie er soll... er spukt über serwrite. "datenmüll" aus. hier mal ein auszug aus dem verlauft:
Code:
Rechte Odometrie testen:00M7
Rechte Odometrie testen:00M5
Rechte Odometrie testen:00M6
Rechte Odometrie testen:00M7
Rechte Odometrie testen:00M9
Rechte Odometrie testen:00N2
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N7
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N9
Rechte Odometrie testen:00N9
Rechte Odometrie testen:00N9
Rechte Odometrie testen:00O0
Rechte Odometrie testen:00O0
Rechte Odometrie testen:00O3
Rechte Odometrie te
Rechte Odometrie testen:00N7
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00N8
Rechte Odometrie testen:00O3
Rechte Odometrie testen:00O1
Rechte Odometrie testen:00O4
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O2
Rechte Odometrie testen:00O0
kann mir jemand erklären, warum er an der stelle no den zehnern immer buchstaben schreibt, bzw, warum es einfach nicht so funktioniert, so wie ich mir das vorstelle
?
danke im vorraus
Lesezeichen