Está en la página 1de 2

Capítulo 10 Timers Parte 2

Recordando lo del capítulo anterior el Arduino Nano y UNO posee tres Timers, el
Timer0 que es de 8 bits, el Timer1 que es de 16 bits y el Timer2 que es de 8 bits.

En este capítulo se utilizará una nueva librería que se para poder usar el Timer2
que es de 8 bits.

La ventaja de usar el Timer2, es que se pueden usar todas las funciones de tiempo
que ya se han usado, y también se puede usar la librería de los Servomotores que
utiliza el Timer1, esto porque el Timer2 no su usa para estas funciones y librerías la
cual queda libre para usos generales.

La librería se llama:

“Ms timer2”

Se deja un link donde se puede descargar comprimida en .zip

https://playground.arduino.cc/Main/MsTimer2/

La sintaxis para usar dicha librería es la siguiente:

MsTimer2::set(tiempo, void (*f)())


Tiempo = unsigned long en “ms”.
void (*f)()) = función a llamar al desbordarse el contador Timer2.
Esta función establece un tiempo de tipo long en “ms” para el desbordamiento.
Para cada desbordamiento, se llamará a la función “F”, la cual se debe declarar tipo
“void” sin parámetros.

MsTimer2::start()
Esta función habilita la Interrupción.

MsTimer2::stop()

Esta función deshabilita o detiene la Interrupción.

Se muestra a continuación un ejemplo sencillo del mismo:


#include <MsTimer2.h>

void flash() {
static boolean output = HIGH;
// La palabra clave static (estática) se usa para crear variables que son visibles para
//una sola función. Sin embargo, a diferencia de las variables locales que se crean y
//destruyen cada vez que se llama a una función, las variables estáticas persisten
más //allá de la llamada a la función, preservando sus datos entre las llamadas a la
función.
//Las variables declaradas como static (estática) solo se crearán e inicializarán la
//primera vez que se llame a una función.
digitalWrite(13, output);
output = !output;
}

void setup() {
pinMode(13, OUTPUT);

MsTimer2::set(500, flash); // 500ms period


MsTimer2::start();
}

void loop() {
}

También podría gustarte