can someone help me? I'm new to pic programming, what I'm trying to do is make bit 3 of port b turn on as long as bit 0 and 7 are 1, main is bit 0. if bit 0 is not 1 output, bit 3, is 0. The bit 3 is turning on, but when I change the bit 0 the bit 3 doesn't change to off (0). I'm using INTCON REGISTER.
Here's my code:
#include "p16f628a.inc"
; CONFIG
__config 0x3F18
; __CONFIG _FOSC_INTOSCIO & _WDTE_OFF & _PWRTE_OFF & _MCLRE_OFF & _BOREN_OFF & _LVP_OFF & _CPD_OFF & _CP_OFF
LIST P=16F628A ;DECLARAR EL PIC
RADIX HEX ;DECLARAR QUE SE TRABAJARA EN HEXADECIMAL
STATUS EQU 0x03
PORTA EQU 0X05
PORTB EQU 0X06
CMCON EQU 0X1F
ORG 0X00 ;DECLARAR DONDE INICIARA
GOTO CONF
ORG 0X04
GOTO INTERRUPCIONES
ORG 0X08 ;BRINCAR REGISTROS DE MEMORIA
CONF
BSF CMCON, 0
BSF CMCON, 1
BSF CMCON, 2 ; ANALOG A DIGITAL
BSF STATUS, 5
MOVLW 0XFF
MOVWF PORTA
MOVLW 0x81
MOVWF PORTB
BCF STATUS,5
BSF INTCON,3
BSF INTCON,4
BSF INTCON,7
MAIN
BCF PORTB,3
GOTO MAIN
INTERRUPCIONES
BCF INTCON,GIE
BTFSC INTCON,INTF
GOTO TEMPERATURA
TEMP
BSF INTCON,GIE
BCF INTCON,INTF
RETFIE
TEMPERATURA
BTFSC PORTB,7
BSF PORTB,3
BSF INTCON,GIE
GOTO TEMP
END