Hola a todos! Estoy empezando a programar en el ensamblador del Pic 16F876A y no se hacer el siguiente problema:
-Implemente un programa que configure el timer0 del pic 16F876A
para que cuente los pulsos que genera un pulsador conectado al
puerto A (RA0), y los presente en el puerto B.
Lo del Timer0 no lo pillo muy bien, lo he configurado como contador, y ami entender que he visto en el manual sección 5.0 el valor de TMR0 se actualiza cada vez que hay un cambio de estado en RA4, pero tampoco estoy muy seguro. He hecho el siguiente programa en MPLAB pero no hace nada:
LIST P=16F876A
INCLUDE "P16F876A.INC"
__config _CP_OFF&_CPD_OFF&_LVP_OFF&_WDT_OFF&_XT_OSC
count EQU 0x20
ORG 0
goto INICIO
ORG 5
INICIO
bsf STATUS, RP0 ;Vamos a Banco 1
movlw 0x06
movwf ADCON1
clrf TRISA ;Puerto A como entrada
movlw b'11111111'
movwf TRISB ;Puerto B como salida
movlw b'11111000' ;Configuramos el timer como contador de Eventos
movwf OPTION_REG
bcf STATUS, RP0 ;Volvemos a Banco 0
Programa
movfw TMR0
movwf PORTB
goto Programa
END
Gracias por la atención! Saludos!
-Implemente un programa que configure el timer0 del pic 16F876A
para que cuente los pulsos que genera un pulsador conectado al
puerto A (RA0), y los presente en el puerto B.
Lo del Timer0 no lo pillo muy bien, lo he configurado como contador, y ami entender que he visto en el manual sección 5.0 el valor de TMR0 se actualiza cada vez que hay un cambio de estado en RA4, pero tampoco estoy muy seguro. He hecho el siguiente programa en MPLAB pero no hace nada:
LIST P=16F876A
INCLUDE "P16F876A.INC"
__config _CP_OFF&_CPD_OFF&_LVP_OFF&_WDT_OFF&_XT_OSC
count EQU 0x20
ORG 0
goto INICIO
ORG 5
INICIO
bsf STATUS, RP0 ;Vamos a Banco 1
movlw 0x06
movwf ADCON1
clrf TRISA ;Puerto A como entrada
movlw b'11111111'
movwf TRISB ;Puerto B como salida
movlw b'11111000' ;Configuramos el timer como contador de Eventos
movwf OPTION_REG
bcf STATUS, RP0 ;Volvemos a Banco 0
Programa
movfw TMR0
movwf PORTB
goto Programa
END
Gracias por la atención! Saludos!