Buenos días,
No tengo mucha experiencia en esto de programar Arduino (poca también con otros tipos de programación ), por lo que muchos conceptos que supongo serán básicos no los acabo de comprender.
Mi duda es acerca de una función en la que hay un número entre paréntesis. Esta función está definida y es la siguiente:
void trama2serie(int a[])
{
int i;
for(i=0;i<(5+a[1]);i++){
Serial.print(a[i],DEC);
Serial.print(" ");
}
Serial.print("\n");
}
Si alguien pudiese explicarme un poco qué es lo que hace esta función se lo agradecería, pero creo que con esta parte no tengo problema ya que lo entiendo más o menos. Mi duda real es con el siguiente código:
if (puertoMon.available() > 0) {
for (s = 0 ; s < 2; s++) {
if (EsperarDato(2)) {
goto inicio;
}
trama[s] = puertoMon.read();
}
for (t = 2; t < 5 + trama[1]; t++) {
if (EsperarDato(2)) {
goto inicio;
}
trama[t] = puertoMon.read();
}
trama2serie(trama);
Como veis, utiliza la función EsperarDato(2). El puertoMon es un puerto half duplex de software. Utiliza este puerto para leer datos que llegan y la función EsperarDato() para poder leerlos y ordenarlos.
Mi duda es sobre el significado del 2 entre paréntesis. He llegado a la conclusión de que es el número de bytes que espera, pero no estoy del todo seguro que sea correcto.
Un saludo a todos y muchas gracias de antemano.