Generar Pausa en Picc

Hola gente qué tal....

Sucede que estoy haciendo un programa basado en un reloj pero tengo un problemita; y es que no sé cómo generar una pausa del reloj, algó así como un play y un pause para el reloj; NO lo estoy haciendo con ds1302, así que les recomiendo si alguno de ustedes conoce alguna instrucción o en su defecto una librería para generar un retardo equivalente a una pausa.

Un saludo a todos.
 
el tipico
#use delay(clock=40000000) //la frecuencia del micro

delay_us(1000); // 1msegundo
delay_ms(1000); //1 segundo

aunque la forma optima es utilizando interrupciones
 
Imagino que el reloj lo estas implementando mediante el timer? entonces podrías detener la interrupción del timer cuando apretes el boton de "Pause" de esa manera se detendría el conteo, y rehabilitarla cuando oprimas "Play"
 
Respuesta rapida 52 minutos y 15 segundos

for(n=0;n<(52*60)+15=;n++) delay_ms(1000);

esta es la peor forma de hacerlo.

La forma de hacerlo son con los timers y si funciona con pilas debes dormirlo.

Como que con las interrupciones no llegas a las horas, se busca un valor alto, por ejemplo cada 100ms.

En la rutina de interrupciones pones un contador que aumente en cada interrupcion y cuando llege a ((52*60)+15)*10 (por que son 100ms) encienda la bombilla o lo que haga falta.
 
podrias utilizar un while: si x pata cambia se mete al while de tal forma que no siga contando, si la undes nuevamente, se sale y no vuelve a entrar hasta que la vuelvas a undir, con un suich y una resistencia de pull-up, puede que sea lo que necesitas
 
Atrás
Arriba