Oppure

Loading
14/11/12 1:43
LittleHacker
Ciao a tutti,
ho un problema con Arduino, c'è che io invio con il cellulare(via bluetooth), una stringa formata da un carattere e numeri(variabili), ok, vado a stamparli a video, con Serial.print(Read); e mi fa vedere tutto, ma quando vado ad inserire un'if con indexOf o startWith, per sapere quali comandi mi sono arrivati, la condizione funziona a sinchiozzo, cioè:

#include <SoftwareSerial.h>
#include <string.h>

SoftwareSerial mySerial(2, 3); // RX, TX

void setup(){
 mySerial.begin(9600); 
 Serial.begin(9600);
}

void loop(){
    if(mySerial.available()){
    char reads = mySerial.read();
    String Read = "";
    Read = String(reads);
    //Serial.print(Read);
    if(Read.startsWith("Y")){ //Ecco
      Serial.println("Si");
    }else{
      Serial.println("NO");
    }
    }
    delay(10);
}

Lo startWith, mi dice 1 volta SI e 3 volte NO, e anche l'indexOf :_doubt: . Come mai?
Grazie! :k:
Edit: Novità
Ho appena scoperto che se la Y la invio manualmente, con S2 Bluetooth, allora questo me la riconosce sempre, invece se, come nel mio programma, gli invio una raffica di:
Y239
Y483
Y984
Y54
Y1
Non mi riconosce la Y all'inizio :hail:
Ultima modifica effettuata da LittleHacker 14/11/12 1:50
aaa