Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
list p=16f84a
include <p16f84a.inc>
__CONFIG _XT_OSC & _CP_OFF & _WDT_OFF & _PWRTE_ON
errorlevel -302
;**** Definici�n de variables ****
Unidad equ 0x0C ; Guardamos conteo de unidad
Decena equ 0x0D
Centena equ 0x0E
Contador1 equ 0x0F ; Registro utilizado en demora
Contador2 equ 0x10 ; Registro utilizado en demora
Contador equ 0x11 ; Control de Refresco de Display
MuestroU equ 2 ; Para control del 1er Display
MuestroD equ 1 ; Para control del 2� Display
MuestroC equ 0 ; Para control del 3er Display
call BCD7SEG
bcf PORTA,MuestroD ; Apago el display de Decena
movwf PORTB ; Cargo PORTB con Centena
bsf PORTA,MuestroC ; Enciendo el display de Centena
call Demora_5ms
decfsz Contador,1 ; Pregunto si ya se ha repetido 10 veces el ciclo
goto Refresco ; No, repito.
goto Bucle ; Si, actualizo cuenta
;**** Demora ****
Demora_5ms
movlw 0xFF
movwf Contador1 ; Iniciamos contador1
Repeticion1
movlw 0x05
movwf Contador2 ; Iniciamos contador2
Repeticion2
decfsz Contador2,1 ; Decrementa Contador2 y si es 0 sale
goto Repeticion2 ; Si no es 0 repetimos ciclo
decfsz Contador1,1 ; Decrementa Contador1
goto Repeticion1 ; Si no es cero repetimos ciclo
return ; Regresa de la subrutina
end