ok, danke, ich bin mir zwar nicht sicher ob ich das verstanden habe,
aber die "x=data[1]" habe ich rausgekürzt undüberall wo x verwendet wurde direkt durch "data[1]" ersetzt.
hier der code:
Code:
#include "asuro.h" // Odometrie test
unsigned int data[2];
unsigned char s[5] = "thze\0";
void PrintCharR()
{
unsigned char einer, zehner, huni, tausend;
tausend = data[1]/1000;
huni = (data[1]-(tausend*1000))/100;
zehner = (data[1]-(tausend*1000 + huni*100))/10;
einer = (data[1]-(tausend*1000 + huni*100 + zehner*10))/10;
s[0]=tausend+'0';
s[1]=huni+'0';
s[2]=zehner+'0';
s[3]=einer+'0';
SerWrite(s,5);
}
int main(void)
{
Init();
int i=0;
while(1)
{
OdometrieData(data); // aktuelle "Position der Odometrie einlesen
SerWrite("Rechte Odometrie testen: ",24); //Wert der rechten Odometrie Senden
PrintCharR(data[1]);
SerWrite("\r\n\n",3);
for (i=0; i<400; i++) //1 sec pause zwischen jedem erscheinen des odo-wertes
{
Sleep(72);
}
}
return 0;
}
nun nochmals ein paar fragen, damit ich die funktionen allgemein verstehen:
hier in den klammer muss nicht zwingend etwas drinn stehen??
muss die funktion zwingend mit "void" deklariert werden?
Code:
PrintCharR(data[1]);
zu was dient das "data[1]" in den klammern??
allgemein:
könnte mir jemand anhand von meinem beispiel versuchen zu erklären, wie der syntax einer funktion... funktioniert??
wäre no1. thx gruß listner
Lesezeichen