Exercício 6
Data de publicação: Feb 23, 2014 7:36:59 PM
Temporizador START/STOP de 10 segundos
Neste exemplo pretende-se que um LED ligue durante 10 segundos após o pressionamento do botão START. O botão STOP desliga o LED e faz o reset ao temporizador. A imagem em baixo ilustra o fluxograma do programa principal.
Macro: MAIN
Após o pressionamento do botão START, é ligado o LED e habilitada a interrupção TMR0. Esta chama o subprograma TEMPORIZADOR aproximadamente 61 vezes por segundo. Por cada interrupção, a variável CONTADOR é incrementada até atingir o valor 610 (equivalente a 10 segundos) e desliga o LED.
Macro: Temporizador
O botão STOP está ligado ao pino B0 para que através da interrupção INT pare incondicionalmente o temporizador. Esta interrupção chama o subprograma STOP, que desliga o LED, desabilita a interrupção TMR0 e inicializa o CONTADOR.
Macro: STOP