contador

download contador

If you can't read please download the document

description

codigo de programacao

Transcript of contador

;BOTO LED#INCLUDE __CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC;DEFINE OS NOMES DOS COMANDOS QUE DEFINEM O BANCO DE MEMRIA A SER USADO#DEFINE BANK0 BCF STATUS,RP0#DEFINE BANK1 BSF STATUS,RP0;DEFINE O NOME DO COMANDO QUE DEFINEM OS PINOS E ENTRADA, DO BOTO#DEFINE BOTAO PORTA,0;DEFINE O NOME DO COMANDO QUE DEFINEM O PINO DE SADA;*******************VARIVEIS**************************************CBLOCK 0x0c ;ENDEREO INICIAL DA MEMRIA DE USURIOTEMPO1 TEMPO2 ; REGISTRADORES AUXILIARES DE TEMPOTEMPO3ENDC ;FIM DO BLOCO DE MEMRIAN0 EQU B'00111111'N1 EQU B'00000110'N2 EQU B'01011011'N3 EQU B'01001111'N4 EQU B'01100110';DEFINE O VETOR DE RESETE, ONDE O PROGRAMA INCIAORG 0GOTO INICIO;**************ROTINA DELAY - 200ms*************************DELAYMOVLW .20MOVWF TEMPO3DL3MOVLW .200MOVWF TEMPO2DL1MOVLW .300MOVWF TEMPO1DL2NOPNOPDECFSZ TEMPO1,FGOTO DL2DECFSZ TEMPO2,FGOTO DL1DECFSZ TEMPO3,FGOTO DL3RETURN;*******************ROTINA CONTADOR*********************CONTA MOVLW N0 MOVWF PORTBCALL DELAY MOVLW N1 MOVWF PORTB CALL DELAYMOVLW N2 MOVWF PORTB CALL DELAYMOVLW N3 MOVWF PORTB CALL DELAYMOVLW N4 MOVWF PORTB CALL DELAYRETURN;**********************FIM GIRA_H********************************INICIOBANK1;SETA O BANCO 1 PARA USAR OS RFS'sMOVLW B'00000001'MOVWF TRISAMOVLW B'00000000'MOVWF TRISBMOVLW B'10000000'MOVWF OPTION_REG ;PULL UPS DESABILITADOSMOVLW B'00000000'MOVWF INTCON ;TODAS AS INTERRUPES FORAM DESATIVADASBANK0; VOLTA PARA O BANCO 0 CLRF PORTBMAINBTFSS BOTAO ;VERIFICA SE O BOTO FOI PRESSIONADOGOTO BOTAO_LIBGOTO BOTAO_PRESBOTAO_LIBCLRF PORTB; LIMPA O PORTBGOTO MAINBOTAO_PRES CALL CONTAGOTO MAINEND