pessoal, estou tendo dificuldades em efetuar as seguintes operações utilizando o codigo abaixo, por favor me ajudem
a.) alterar o programa para acionamento pela porta.3 e acionando as saidas
portb.0 e portb.7
b.) alterar o programa para que se use duas entradas porta.1 e porta.2 e
ao se acionar a entrada 1 a saida porb.0 acione(PERMANECENDO ASSIM ATE OCORRER OUTRO PULSO DE DESACIONAMENTO), e a entrada 2 ative a saida portb.4 (PERMANECENDO ASIM ATÉ OCORRER OUTRO PULSO DE DESACIONAMENTO), porém so pode ocorrer o acionameno da saida caso o nivelde outra SAIDA esteja desativado.
#INCLUDE <P16F628A.INC>
__CONFIG _BODEN_ON & _CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_ON & _XT_OSC
#DEFINE BANK0 BCF STATUS,RP0 ;SETA BANK 0 DE MEMÓRIA
#DEFINE BANK1 BSF STATUS,RP0 ;SETA BANK 1 DE MAMÓRIA
CBLOCK 0x20 ;ENDEREÇO INICIAL DA MEMÓRIA DE
ENDC ;FIM DO BLOCO DE MEMÓRIA
#DEFINE BOTAO PORTA.3,0 ; 0 -> PRESSIONADO
; 1 -> LIBERADO
#DEFINE LED PORTB.0,1 ;PORTA DO LED
; 0 -> APAGADO
; 1 -> ACESO
PORTB.7, 1;
ORG 0x00 ;ENDEREÇO INICIAL DE PROCESSAMENTO
GOTO INICIO
ORG 0x04 ;ENDEREÇO INICIAL DA INTERRUPÇÃO
RETFIE ;RETORNA DA INTERRUPÇÃO
INICIO
CLRF PORTA ;LIMPA O PORTA
CLRF PORTB ;LIMPA O PORTB
BANK1
MOVLW B'00000001'
MOVWF TRISA ;DEFINE RA0 COMO ENTRADA E DEMAIS
;COMO SAÍDAS
MOVLW B'00000000'
MOVWF TRISB ;DEFINE TODO O PORTB COMO SAÍDA
MOVLW B'10000000'
MOVWF OPTION_REG ;PRESCALER 1:2 NO TMR0
;PULL-UPS DESABILITADOS
;AS DEMAIS CONFG. SÃO IRRELEVANTES
MOVLW B'00000000'
MOVWF INTCON ;TODAS AS INTERRUPÇÕES DESLIGADAS
BANK0 ;RETORNA PARA O BANCO 0
MOVLW B'00000111'
MOVWF CMCON ;DEFINE O MODO DE OPERAÇÃO DO COMPARADOR ANALÓGICO
MAIN
BTFSC BOTAO ;O BOTÃO ESTÁ PRESSIONADO?
GOTO BOTAO_LIB ;NÃO, ENTÃO TRATA BOTÃO LIBERADO
GOTO BOTAO_PRES ;SIM, ENTÃO TRATA BOTÃO PRESSIONADO
BOTAO_LIB
BCF LED ;APAGA LED
GOTO MAIN ;RETORNA AO LOOP PRINCIPAL
BOTAO_PRES
BSF LED ;LIGA LED
GOTO MAIN ;RETORNA AO LOOP PRINCIPAL
END ;