Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: luisee1416 en 20 de Noviembre de 2020, 18:55:55
Título: PROGRAMACION EN ASSEMBLER-Rutina de retardo
Publicado por: luisee1416 en 20 de Noviembre de 2020, 18:55:55
..
Título: Re:PROGRAMACION EN ASSEMBLER-Rutina de retardo
Publicado por: Fer_TACA en 20 de Noviembre de 2020, 19:45:35
Si lo que quieres es que parpadee mientras esta pulsado debes de cambiar el código a:
Código: ASM
Repeticion btfsc PORTA,Interruptor
goto Apagado
bsf PORTB,Luz
call delay_1sg
bsf PORTB,Luz
call delay_1sg
bcsf PORTB,Luz
goto Repeticion
Apagado bcf PORTB,Luz
goto Repeticion
Delay_1sg movlw xxxxxxxx
xxxxxx xxxxxxxx
xxxxxx xxxxxxxx
xxxxxx xxxxxxxx
return
end
En la rutina de delay tendrás que poner un valor a alguno de los timers del pic usado e ir decrementándole y cuando llegue a 0 sales de esa rutina al haberse cumplido el tiempo mientras que no valga 0 te mantendrás el ella. Dependiendo del tiempo que quieras lograr tendrás que usar un timer de 8 o de 16 bits, incluso si es muy grande quizás hasta algún registro auxiliar. Esta es la foema mas simple si estas comenzando. Cuando adquieras mas conocimientos lo normal es realizar esas temporizaciones usando interrupciones.
Título: Re:PROGRAMACION EN ASSEMBLER-Rutina de retardo
Publicado por: luisee1416 en 20 de Noviembre de 2020, 21:30:21
Gracias por la ayuda,
Título: Re:PROGRAMACION EN ASSEMBLER-Rutina de retardo
Publicado por: KILLERJC en 20 de Noviembre de 2020, 22:44:46