Comunicación bluetooth Android / Arduino

Enlace establecido con éxito y capaz de enviar datos.

Android envía datos de SeekBar cuando los cambiamos.

public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    if(seekBar.getId() == R.id.seekBar)
    {
        speed.setText(String.valueOf(progress));
        String outputData = String.valueOf(progress);
        streams.write(outputData.getBytes());
    }
}

streams.write()escribe datos en el OutputStreamde la Socket.

El problema es con el formato de los datos. Si envío '25', arduino recibe '2', '5' cuando lo hago Serial.read().

¿Cuál es el formato de los datos cuando outputDatase convierte en bytes? ¿Está todo terminado por \0?

Necesito recuperar el número entero en lugar de un solo dígito.

Respuesta 1

el arduinoboard parece leer el byte RX-Stream byte a byte. Si envía "25", transmite el byte ascii para el carácter '2' (que es 0x32 / 50 decimal) y luego la representación ascii para el carácter '5' (que es 0x35 / 53 decimal). El arduino interpreta estos números como caracteres. Entonces, si el número que desea transmitir es inferior a 256, puede hacerlo: En Android:

if(seekBar.getId() == R.id.seekBar)
    {
        speed.setText(String.valueOf(progress));
        if(progress<256)
            streams.write((byte)progress);
    }

Para asegurarse de que Arduino lo interpreta correctamente, use el carácter recibido como un corto y no como un carácter.

Espero que esto ayude

Respuesta: 2

Mi jefe se fue de vacaciones durante algunos días, soy un desarrollador de Java No sé mucho sobre Docker (solo conocimientos básicos) Tengo el proyecto de arranque Spring de Java, ya que hay un Dockerfile en la raíz de ...

Estoy tratando de grabar datos de profundidad desde el sensor Kinect al archivo y luego reproducirlo usando openNi. He escrito un programa simple basado en los ejemplos de openNi. Estoy usando el java wrapper. Los ...

Tengo un servicio en Java que crea un modelo RDF / XML-ABBREV. Mi problema es que la respuesta no contiene la etiqueta de versión xml. Respuesta actual: <rdf: RDF xmlns: myNS = "http: //www.sap.de / ...

Tengo una Lista de objetos, donde cada objeto tiene una cantidad de votos, así: Objeto Votos o1 5 o2 4 o3 3 o4 3 Quiero clasificar cada uno (no solo ordenar) en función del número de ...