Hola a todos, me preguntaba si alguien me puede echar una mano con mi código. El problema que tengo es que necesito un array de bytes como este:
byte dato={0x28, 0xFF, 0xCA, 0x4A, 0x5, 0x16, 0x3, 0xBD};
Ese array tengo que formarlo a partir de un String que ya tengo:
String texto="0x28 0xFF 0xCA 0x4A 0x5 0x16 0x3 0xBD";
Pero no se como hacer para pasar de uno a otro.
Tendrías que ir por partes, por ejemplo se me ocurre:
void setup(){
Serial.begin(115200);
String cadena = "0x28 0xFF 0xCA 0x4A 0x5 0x16 0x3 0xBD";
byte n1=0, n2=0;
for (byte i=0; i<8; i++){
n1 = cadena.indexOf(" ", n2);
Serial.println(cadena.substring(n2,n1));
n2 = n1 + 1;
}
}
void loop(){
/Nada
}
Con esto ya tienes separados cada byte pero aun tienes el problema de que es texto y en Hexadecimal.
No podrás aplicar byte() ni tampoco el método String.toInt(), porque ambos esperan números decimales.