snestrup2000 Professor
01. april 2016 - 12:04 Der er 3 kommentarer og
1 løsning

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
arne_v Ekspert
01. april 2016 - 17:06 #1
Lave et array af arrays af char og strcpy ind i det.
snestrup2000 Professor
01. april 2016 - 19:39 #2
HEJ,

Er ved at prøve det. Melder tilbage (søndag senest).

KR
snestrup2000 Professor
03. april 2016 - 17:35 #3
HEJ,

Fik det til at funke med

char MyStrings = {"Str1","Str2"..... , "Str8");


og senere strcpy(Mystrings[index],Token);  // eller osse er det omvendt (har ikke syntaksen her), men det funker som ønsket.

Drop et svar og du er 30 p. rigere...

1000000 -> 000  tak for hjælpen.

KR
arne_v Ekspert
07. april 2016 - 03:26 #4
svar
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Coop ansætter ny digital direktør: Her er hans vigtigste opgave
Interview: Den danske supermarkedskoncern Coop skifter ud i topledelsen og ansætter Morten Viktor i en nyoprettet stilling som direktør for digital & e-commerce. "Min rolle bliver at få samlet hele det digitale kundemøde," fortæller han.
Computerworld
Stein Bagger gør comeback i ny branche: "De lignede et mafiahold, førte sig frem som nyrige og plaprede løs om urealistiske drømme"
Stein Bagger har skiftet navn og fører sig nu frem i store biler i en helt ny branche, skriver en dansk avis.
CIO
Podcast: Her er seks gode råd om ledelse og digitalisering fra danske top-CIO'er
The Digital Edge: Vi har talt med 17 af Danmarks dygtigste digitale ledere - og samlet deres seks bedste råd om digitalisering og ledelse. Få alle rådene på 26 minutter i denne episode af podcasten The Digital Edge.
Job & Karriere
Se Waoos forklaring: Derfor har selskabet fyret topchef Jørgen Stensgaard med omgående virkning
Waaos bestyrelse opsiger fiberselskabets topchef, Jørgen Stensgaard, der fratræder med omgående virkning. Se hele forklaringen fra Waao her.
White paper
Sådan grundlægger du en datacenterstrategi
Covid-19 understregede behovet for at kunne administrere datacentret på afstand – og for at lade virksomhedens øvrige medarbejdere løse endnu flere opgaver hjemmefra. Det har givet en lang række erfaringer, som kan komme din organisation til gavn på jeres videre digitale rejse. Herunder om, hvordan man optimerer forbindelsen mellem applikationer og data – og om, hvordan man målrettet placerer specifikke workloads, hvor det giver den største forretningsmæssige værdi. Det kan du læse meget mere om i denne hvidbog.