Hola! Espero que no sea muy tarde... pero vuelteando encontre tu pregunta.
Te puedo dar una idea de como hacer lo del contador, te acabo de hacer a la rapida algo de codigo, ya esta hecha la parte del contador ascentente, y lo de la seleccion de los tiempos.
pero... tengo un pequeño un pequeño problema... ahurita no tengo el programa que genera el el codigo de los retardos, asi que le lo dejo sin los retardos. Solo tengsolo tendrias que incorporar al codigo del programa las subrutinas de los delays.
Despues te dejo todo explicadito para que hayas tu proyecto.
Por si acaso, lo que hise funciona, pero lo hice a la rapida, asi que lo que no entiendas me preguntas, tambien puede que haya una mejor forma de hacerlo, pero esto ya te sierve de una guia.
chau