
Olha só, na minha luta ferrenha para entender o C, me deparei com uma questão.
Como fazer um DELAY e ao mesmo tempo continuar executando minha rotina principal, até que esse delay estoure e set um flag de sinalização.
Veja em assembler eu faria assim:
;{
Delay_PiscaLed:
Decfsz D1, F ; aguarda o time D1 estourar para executar a rotina que é piscar um led.
Return ; Enquanto não estoura o time D1, volto a executar a rotina MAIN.
Btfsc Led ; O led esta no portB0, por exemplo.
Bcf Led ; Apaga o led.
Btfss Led ; Mudança de nível?
Bsf Led ; Acende o led.
Return
;}
AGORA COMO EU FAÇO ISSO EM "C". Veja que não quero utilizar o timer do MCU, eu queria fazer direto em software, o motivo é porque tenho uma porrada de timer para serem acionados afim de acender e apagar leds conforme um botão será acionado ou não....vários botões.
Veja é C, eu tenho a instrução:
Delay_ms(2) ; Essa instrução, vai aguardar 2 milesegundos para estourar o timer, o problema é que o programa main fica amarrado aqui nesse ponto esperando terminar o delay...entenderam.
Obrigado
