Ir ao conteúdo
  • Cadastre-se

Welington Giovani

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

posts postados por Welington Giovani

  1. 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            ;

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!