Você está na página 1de 3

Jessica Freitas Bastos – AI – manhã

Atividade 5 – Microcontrolador – Prof, Carlos do Carmo

Utilizando a linguagem assembler, no contador de “ 0 a 9” com tabela desenvolvido em sala de


aula para o display de 7segmentos, acrescentar três botões um de inicio de contagem, um de
parada de contagem e um outro para reset da contagem.

#INCLUDE <P18F4520.INC>

#DEFINE DISPLAY LATD

MAX EQU .10

CBLOCK 0X0020

CONT1

CONT2

CONT3

CONT_TABLE

ENDC

ORG 0X0000

GOTO INICIO

ORG 0X0050

INICIO

MOVLW B'0111111'

MOVWF TRISB

MOVLW B'00000000'

MOVWF TRISD

MOVLW B'11111000'

MOVWF TRISB

CLRF LATB

CLRF DISPLAY

CLRF CONT_TABLE

MAIN

BTFSS PORTB,0
MOVF CONT_TABLE,W

CALL TABELA_7s

MOVWF DISPLAY

BSF LATB,7

BTFSS PORTB,1

CALL STOP

INCREMENTA

MOVLW .3

CALL DELAY

BCF LATB,7

MOVLW .2

CALL DELAY

INCF CONT_TABLE,F

MOVF CONT_TABLE,W

XORLW MAX

BTFSS STATUS,Z

GOTO MAIN

CLRF CONT_TABLE

GOTO MAIN

DELAY

MOVWF CONT3

ROT3

MOVLW .83

MOVWF CONT2

ROT2

MOVLW .200

MOVWF CONT1

ROT1

NOP

NOP

NOP
NOP

NOP

NOP

DECFSZ CONT1,F

GOTO ROT1

DECFSZ CONT2,F

GOTO ROT2

DECFSZ CONT3,F

GOTO ROT3

RETURN

TABELA_7s

ANDLW B'00001111'

RLNCF WREG

ADDWF PCL,F

RETLW B'00111111'

RETLW B'00000110'

RETLW B'01011011'

RETLW B'01001111'

RETLW B'01100110'

RETLW B'01101101'

RETLW B'01111101'

RETLW B'00000111'

RETLW B'01111111'

RETLW B'01101111'

STOP

BTFSS PORTB,2

BCF LATD,7

GOTO MAIN

GOTO STOP

END

Você também pode gostar