Stránka 1 z 1
Osekanie textu alebo co to je :D
Napsal: 03 říj 2020, 15:17
od 00alkskodi00
Chlapy mam amatersku otazku
Mam nejaky takyto text v arduine nacitany zo serial
D: 10.552m 0097
Potreboval by son vytiahnut s toho iba 10.552 aby som to mohol pouzit nadalsi vypocet
Rozmyslal som ze to iba jednpducho osekam od pozicie po poziciu ale problem je ze ono sa to meni neustale napr D: 8.33m 0052...
Su to udaje z laseroveho dialkomeru a naozaj neviem ako to urobit
Re: Osekanie textu alebo co to je :D
Napsal: 03 říj 2020, 15:55
od ondraN
Zkus to takhle
Kód: Vybrat vše
float x;
if(Serial.available()>0){
do{
if(isDigit(Serial.peek())){
break;
}
Serial.read();
}while(Serial.available()>0);
x=Serial.parseFloat(SKIP_NONE);
// tady muzes docist zbytek za tim cislem
}
A nebo taky takhle
Kód: Vybrat vše
float x;
if(Serial.available()>0){
x=Serial.parseFloat(SKIP_ALL);
}
Re: Osekanie textu alebo co to je :D
Napsal: 03 říj 2020, 18:00
od martinius96
Kód: Vybrat vše
String midString(String str, String start, String finish) {
int locStart = str.indexOf(start);
if (locStart == -1) return "";
locStart += start.length();
int locFinish = str.indexOf(finish, locStart);
if (locFinish == -1) return "";
return str.substring(locStart, locFinish);
}
void setup() {
Serial.begin(115200);
String line = "D: 10.552m 0097";
String retazec = midString(line, " ", "m");
float hodnota = retazec.toFloat();
Serial.println(hodnota, 3); //vypis hodnoty float na 3 desatinne miesta (NEOVPLYVNI TO PREMENNU HODNOTA A POCET DESATINNYCH MIEST V NEJ)
}
void loop() {
}
Re: Osekanie textu alebo co to je :D
Napsal: 03 říj 2020, 19:22
od 00alkskodi00
dikes za odpoved idem skusat