ARDUINO - HJÆLP TIL AT TOKENIZE'.. LINIE..
HEJ,(Indledningsvis: Jeg er ABSOLUT ikke nogen ørn til C (C++), så det kan godt være at jeg ikke alene skal have noget af det her skåret ud i pap , men også bøjet i NEON... ).
Jeg har en Arduino UNO, som skal styre 4 motorer ved hjælp af 2 L293-chips og ved hjælp af PWM.
Det vil jeg gøre ved at jeg via USB-porten på PC sender kommandoliner ud til ARD'en. ARD'en fortolker disse kommandolinier, og tager så de respektive aktioner.
Kommandolinie syntaks :
M[motornummer],S[speed],D[retning],C[count],X[xpos],Y[Ypos]<CR>
Motornumr (1-4),
Speed 0-1024
Retning H(øjre) / V(enstre)
Count 0-1024
Xpos 0-1024
ypos 0-1024
M-kommandoen kommer ALTID først. de andre er valgfrie i forhold til M-kommandoen.
Det er nu endelig lykkedes mig at få det serielle interupt il at funke, hente kommandolinen , men jeg mangler nu en kommando (?) så jeg kan lægge mine TOKEN's i et STRING Array. Check af kommanoer og (omdanne til Integer (ATOI) er ikke noget problem senere.
Det jeg gør er følgende:
CopyStr = kommandolinie;
char *token;
char *rest = CopyStr;
while((token = strtok_r(rest, delim, &rest)))
{
Serial.write("token: ");
Serial.write(token);
Serial.write("\n");
}
Og det er disse TOKENs jeg giodt vil have lagt ind i et array...
Kristian