¿Cómo puedo enviar varios valores desde Procesando a Arduino a través de la biblioteca Serial?

2

He realizado una prueba básica enviando un solo valor int a Arduino desde Procesamiento a través de la biblioteca Serial de procesamiento y todo está bien. Me gustaría enviar varios valores de int, pero no estoy completamente seguro de cuál es la mejor manera de hacerlo.

De acuerdo con los documentos Serial.write

  

escribe bytes, caracteres, ints, bytes [], cadenas en el puerto serie

así que una opción sería enviar una cadena que pueda dividir y obtener los valores:

arduino.write(intValue1+","+intValue2);

pero no estoy seguro de cómo leer la conversión de datos cuando la reciba en Arduino.

Otra cosa que me viene a la mente es usar un byte[] ya que estoy enviando varios valores, pero no he trabajado mucho con bytes, así que cualquier consejo sobre cómo empacar / desempaquetar dos en un byte[] y volver sería muy útil.

¡Gracias!

    
pregunta George Profenza

1 respuesta

3

Construya una matriz de bytes que contenga sus datos. Recuerde que cada byte solo puede ir hasta 255, por lo que si su int es más grande que eso, necesitará usar múltiples bytes por int.

Luego en el arduino

while (Serial.available() > 0) {
  Serial.read() //now do something with this byte
}

Esto se repetirá hasta que no haya más bytes para leer, y cada vez que lea un byte.

    
respondido por el Seth Archer Brown

Lea otras preguntas en las etiquetas