Arduino CSV file

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Camro
Inlägg: 34
Blev medlem: 6 april 2011, 23:34:07

Arduino CSV file

Inlägg av Camro »

Hej

Hur gör man för att i en CSV (komma separerad fi) lägga de olika värdena i egna variabler? EX 12,456,789 där 12 ska ligga i variabel 0, 456 i variabel 1 osv. Teckenlängden är mao inte konstant. Även intresserad av hur man gör då det ingår ascii tecken i CSV-filen.
Användarvisningsbild
Icecap
Inlägg: 26139
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Arduino CSV file

Inlägg av Icecap »

Jag brukar att först ha texten som ska "splittas" i en buffer i sin helhet.

Sedan pekar jag på första tecken i den buffer och kallar atoi(). Den funktion omvandlar text till integer.
När jag har fått första värde rullar jag pekaren fram till första icke-siffer - och stegar ytterligare ett steg, förbi komman.

Detta upprepas till texten är slut och det kan såklart finnas diverse koll av om texten är slut, det är ny rad osv.

Ett annat sätt är att göra ung. det samma men istället strunta i atoi().
Om du har en variabel (X) och börjar med att låta den vara noll.
För varje siffra som läsas gör man:
X *= 10;
X += *Pekaren - '0';
Pekaren++;

När pekaren pekar på en icke-siffer är talet klart att använda, sedan stegar man över kommat och upprepar med nästa värde.
Camro
Inlägg: 34
Blev medlem: 6 april 2011, 23:34:07

Re: Arduino CSV file

Inlägg av Camro »

Ok jag ska prova detta, tack för snabbt svar.

Mvhj Tommy
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Arduino CSV file

Inlägg av sodjan »

Var på Arduinon ska denna "fil" lagras?
Eller vill du bara ha ett format att skicka via t.ex. serieporten?
Camro
Inlägg: 34
Blev medlem: 6 april 2011, 23:34:07

Re: Arduino CSV file

Inlägg av Camro »

CSV filen ska inte lagras, däremot ska delar av denna läggas i egna variabler.
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Arduino CSV file

Inlägg av sodjan »

Ah, OK. Jag vände på det... :-)
Du har en sträng med värden separerade med komma
som du vill dela upp alltså. Här gör man något liknande:
https://gist.github.com/glynhudson/1138458
Camro
Inlägg: 34
Blev medlem: 6 april 2011, 23:34:07

Re: Arduino CSV file

Inlägg av Camro »

Jag kollade på din länk, detta är exakt det jag sökte. Tackar för svaret, mycket nöjd. :tumupp:

Mvh Tommy
extradrajven
Inlägg: 18
Blev medlem: 1 juni 2013, 18:07:48

Re: Arduino CSV file

Inlägg av extradrajven »

Kanske löser funktionen scanf (eller sscanf) i stdio.h detta? Funktionen är utformad för att plocka data ur en ström i ett visst format.
Skriv svar