libreria-arduino-countdown

Librería Arduino Countdown

La librería Countdown implementa un contador simple. El contador se inicializa a un cierto valor mediante la variable StartValue. El valor actual del contador se guarda en la variable Value.

El contador dispone del método Tick(), que reduce el valor de Value hasta llegar a cero. También dispone del método Reset, que reinicia Value al valor StartValue.

Opcionalmente, se dispone de una función de callback denominada OnFinish, que dispara cuando el contador llega a cero.

Aparte de para emplear un contador simple, como por ejemplo un contador de vueltas o un encoder, el interés principal de la librería es emplear la función de Callback para liberar de parte del código al flujo principal del programa.

Por ejemplo, podemos usar el contador para ignorar los N primeros ciclos de una señal para esperar a que se estabilice, o para lanzar una función cada N ocurrencias de un evento.

Finalmente, la funcionalidad de la librería es más interesante si la combinamos con otras librerías como AsyncTask, MultiTask, StateMachine o PetriNet.

Manual de uso

Constructor

La clase Countdown se instancia a través de uno de sus constructores.

Countdown(uint16_t startValue);

Countdown(uint16_t startValue, CountdownAction OnFinish);

Usar Countdown

// Valor inicial del contador
int16_t StartValue;

// Valor actual del contador
uint16_t Value;

// Disminuye el valor de Value y lanza OnFinish si Value == 0
void Tick();

// Reinicia el valor de Value a StartValue
void Reset();

// Función de callback lanzada cuando Value == 0
CountdownAction OnFinish;

Ejemplos

La librería Countdown incluye los siguientes ejemplos para ilustrar su uso.

  • Countdown: Ejemplo de uso de la clase Countdown

Instalación

  • Descargar la última versión desde GitHub
  • Descomprimir el archivo
  • Copiar en tu carpeta de librerías (normalmente Mis Documentos\Arduino\libraries)
  • Relanzar el IDE de Arduino

github-full