Nueva libreria Temporizador (modificada)

@Lucario448 ¡ jó ! me has emocionao... :smiley: :smiley: :smiley:

Bueno por alusiones:
Voy a contestar a mandragoratools porque entiendo que las cuestiones de Lucario448 no son para mi.

En segundo lugar y siguiendo tus directrices según me explicas (y yo entiendo)¿ para llevar a cabo esta libreria, no haria falta para nada hacer uso de el archivo ".cpp"?

Ya ves que no es indispensable, pero si la libreria crece, es conveniente tener separados el <libreria.h>, que contiene las definiciones y demás, del <libreria.cpp> que contiene la implementacion de las funciones,
Al final todo se junta al compilarlos gracias a los <#include>

Usando como ejemplo en el pin 13 un led al transcurrir el tiempo indicado en timer.iniciar(0,0,0,10);
el led se enciende, y permanece encendido indefinidamente no vuelve a apagarse, es como si el ciclo solo se efectuase una vez y ya, ¿Que puede andar mal aquí?

Evidentemente si quieres que el programa haga algo lo tienes que escribir.
Lo que tu quieres se haria así:

// ... Coloco el pin 13 como quiero que esté durante la temporización
digitalWrite(pinLed,HIGH);
// Ahora coloco el temporizador y sigo con el programa...
timer.iniciar(0,0,0,10);
// ... vamos chequeando ...
if(timer.completado())
{
   digitalWrite(pinLed,LOW);
}
// ... sigue el programa ...

Por supuesto esto puede no bastar porque el loop() hará que se cargue de nuevo el timer(0,0,0,10)
y repitamos el ciclo. Para evitarlo (si fuese el caso) podemos crear un flag (un indicador) que nos diga que ese timer
y el proceso asociado ya se ejecutó y no queremos volver a ejecutarlo...
Hay muchas posibilidades y no dependen solo de la libreria, sino del uso que se hace de ella.

Añadele milisegundos (aunque es una tonteria) para que puedas practicar, y todo aquello que consideres pueda ser necesario, teniendo siempre en cuenta que es un software auxiliar para que los usuarios completen sus programas.
Tu creas la herramienta. Ellos el programa que la usa.