Estoy explorando la comunicación serial usando el arduino, y hasta ahora no he tenido demasiados problemas. Hasta ahora al menos. Estoy usando un módulo externo para leer una capacitancia (el módulo es un DN060-02v04 de JYETech) y se supone que transmite automáticamente una gran cantidad de información sobre sus lecturas. De acuerdo con la documentación que lo acompaña, se transmite en formato 8-n-1 a 38400bps corregido. Bastante simple, estoy usando SoftwareSerial y tengo la velocidad de transmisión configurada correctamente. Se supone que debo obtener una serie de bytes que representan caracteres ascii, sin embargo, los números que recibo no parecen corresponder a nada utilizable. Estoy pensando que tal vez el arduino esté tratando de leer en formato 7-e-1, pero no estoy seguro porque no puedo encontrar ninguna información al respecto. También podría estar haciendo otra cosa mal, pero realmente no puedo pensar en nada. Así que la pregunta real: ¿Se comunica el arduino usando 8-n-1 o 7-e-1?
Más detalles: estoy usando un arduino UNO, ejecutándome en linux y usando la versión 1.0 de arduino para programarlo.
EDITAR: Código fuente:
#include <SoftwareSerial.h>
// rx tx
SoftwareSerial capSerial(2, 13);
int tmp;
int next;
void setup()
{
capSerial.begin(38400);
Serial.begin(38400);
}
void loop()
{
if (capSerial.available() > 0)
{
tmp = next;
next = capSerial.read();
Serial.print(next);
Serial.print('\n');
}
}