Paso 1: Codificación de los latidos del corazón (controladora)
En el host, escoger un pin y ciclo entre alta y baja. Aquí está el código que utilizo para pin 4 del ciclo cada 3 segundos (sobre todo):#include "timer.h"
#define hbPin 4
int hwHeartbeat = alto;
hbTimer contador de tiempo = timer (1000 * 3); 3 segundo latido del corazón
En la función loop():
Si (hbTimer.update() == 1) {}
Si (hwHeartbeat == HIGH) {}
digitalWrite (hbPin, bajo);
hwHeartbeat = bajo;
} else {}
digitalWrite (hbPin, HIGH);
hwHeartbeat = alto;
}
hbTimer.reset();
}
Timer.h:
Clase "temporizador"--controla una instancia de tiempo y devuelve 1 si se pasa o 0 de lo contrario
Requiere un intervalo de tiempo en milisegundos
contador de tiempo de clase
{
Variables de clase inicializadas en el inicio
timerDuration largo sin firmar; ¿Cuál es este temporizador para?
Variables de tiempo de ejecución
startMillis largo sin firmar; ¿Cuándo comenzó?
Constructor de
público:
Timer (temporizador largo sin signo) {}
timerDuration = contador;
startMillis = millis();
}
int update(void) {}
Si (millis() - startMillis > = timerDuration) {}
retorno 1;
} else {}
return 0;
}
}
void reset(void) {}
startMillis = millis();
}
};
Periódicamente mi aplicación se ramifica en una subrutina que tarda 15 segundos en ejecutar, esto ha de tenerse en cuenta cuando puse los valores en el código de la baratija.