A maior rede de estudos do Brasil

Grátis
4 pág.
Sistemas a Microprocessadores Trabalho Av2 2016.1 Robson

Pré-visualização | Página 1 de 1

1 | P á g i n a 
Objetivo: acender os LEDs de um display de 7 segmentos ao mudar a 
posição das chaves, utilizando o PIC16F628A. 
Display 7 segmentos: 
 
Possíveis combinações: 
RA4 RA3 RA2 RA1 Display 
0 0 0 0 0 
0 0 0 1 1 
0 0 1 0 2 
0 0 1 1 3 
0 1 0 0 4 
0 1 0 1 5 
0 1 1 0 6 
0 1 1 1 7 
1 0 0 0 8 
1 0 0 1 9 
1 0 1 0 A 
1 0 1 1 B 
1 1 0 0 C 
1 1 0 1 D 
1 1 1 0 E 
1 1 1 1 F 
2 | P á g i n a 
LIST P=16F628A 
#DEFINE BANCO0 BCF STATUS,RP0 
#DEFINE BANCO1 BSF STATUS,RP0 
STATUS EQU 0x03 
PORTA EQU 0x05 
PORTB EQU 0x06 
RP0 EQU 0x05 
ORG 0 
GOTO INICIO 
ORG 5 
INICIO: BANCO1 
 CRLF PORTB 
 MOVLW B’00011110’ 
 MOVWF PORTA 
 BANCO0 
LOOP: BTFSS PORTA,4 
 GOTO ZERO_SETE 
 GOTO OITO_FOXTROT 
ZERO_SETE: BTFSS PORTA,3 
 GOTO ZERO_TRES 
 GOTO QUATRO_SETE 
OITO_FOXTROT: BTFSS PORTA,3 
 GOTO OITO_BRAVO 
 GOTO CHARLIE_FOXTROT 
ZERO_TRES: BTFSS PORTA,2 
 GOTO ZERO_UNO 
 GOTO DOIS_TRES 
QUATRO_SETE: BTFSS PORTA,2 
 GOTO QUATRO_CINCO 
 GOTO SEIS_SETE 
OITO_BRAVO: BTFSS PORTA,2 
 GOTO OITO_NOVE 
 GOTO ALPHA_BRAVO 
CHARLIE_FOXTROT: BTFSS PORTA,2 
 GOTO CHARLIE_DELTA 
 GOTO ECHO_FOXTROT 
ZERO_UNO: BTFSS PORTA,1 
 GOTO ZERO 
 GOTO UNO 
Comentado [LF1]: Introdução dada por ele em sala de aula. 
Comentado [LF2]: Estou dizendo que utilizarei RP4, RP3, RP2 e RP1. 
Comentado [LF3]: Testa o RP4 Se estiver em nível alto, pula a instrução seguinte. 
Comentado [LF4]: Com RP4 em nível baixo, as possibilidades estão entre 0 e 7, nomeei a Label como ZERO_SETE. 
Comentado [LF5]: Com RP4 em nível alto, as possibilidades estão entre 8 e F, nomeei a Label como OITO_FOXTROT. 
Comentado [LF6]: Testa o RP3, no intervalo entre 0 e 7. Se estiver em nível alto, pula a instrução seguinte. 
Comentado [LF7]: Com RP3 em nível baixo, as possibilidades estão entre 0 e 3, nomeei a Label como ZERO_TRES. 
Comentado [LF8]: Com RP3 em nível alto, as possibilidades estão entre 4 e 7, nomeei a Label como QUATRO_SETE 
3 | P á g i n a 
DOIS_TRES: BTFSS PORTA,1 
 GOTO DOIS 
 GOTO TRES 
QUATRO_CINCO: BTFSS PORTA,1 
 GOTO QUATRO 
 GOTO CINCO 
SEIS_SETE: BTFSS PORTA,1 
 GOTO SEIS 
 GOTO SETE 
OITO_NOVE: BTFSS PORTA,1 
 GOTO OITO 
 GOTO NOVE 
ALPHA_BRAVO: BTFSS PORTA,1 
 GOTO ALPHA 
 GOTO BRAVO 
CHARLIE_DELTA: BTFSS PORTA,1 
 GOTO CHARLIE 
 GOTO DELTA 
ECHO_FOXTROT: BTFSS PORTA,1 
 GOTO ECHO 
 GOTO FOXTROT 
ZERO: MOVLW B’00111111’ 
 MOVWF PORTB 
 GOTO LOOP 
UNO: MOVLW B’00000110’ 
 MOVWF PORTB 
 GOTO LOOP 
DOIS: MOVLW B’01011011’ 
 MOVWF PORTB 
 GOTO LOOP 
TRES: MOVLW B’01001111’ 
 MOVWF PORTB 
 GOTO LOOP 
QUATRO: MOVLW B’01100110’ 
 MOVWF PORTB 
 GOTO LOOP 
CINCO: MOVLW B’01101101’ 
 MOVWF PORTB 
 GOTO LOOP 
4 | P á g i n a 
SEIS: MOVLW B’01111101’ 
 MOVWF PORTB 
 GOTO LOOP 
SETE: MOVLW B’00000111’ 
 MOVWF PORTB 
 GOTO LOOP 
OITO: MOVLW B’011111111’ 
 MOVWF PORTB 
 GOTO LOOP 
NOVE: MOVLW B’01100111’ 
 MOVWF PORTB 
 GOTO LOOP 
ALPHA: MOVLW B’01110111’ 
 MOVWF PORTB 
 GOTO LOOP 
BRAVO: MOVLW B’01111100’ 
 MOVWF PORTB 
 GOTO LOOP 
CHARLIE: MOVLW B’00111001’ 
 MOVWF PORTB 
 GOTO LOOP 
DELTA: MOVLW B’01011110’ 
 MOVWF PORTB 
 GOTO LOOP 
ECHO: MOVLW B’01111001’ 
 MOVWF PORTB 
 GOTO LOOP 
FOXTROT: MOVLW B’01110001’ 
 MOVWF PORTB 
 GOTO LOOP 
END

Crie agora seu perfil grátis para visualizar sem restrições.