Buscar

Prova AV1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Nome do(a) Aluno(a): GABRIEL DA COSTA DOS SANTOS Matrícula: 201802482644 
Disciplina: ARA0108 MICROPROCESSADOR Data: 07/ 10/ 2021 
Período: 2021.2 / AV1 Turma: 3001 
 
OBSERVAÇÕES: 
Leia com atenção as questões antes de responder. 
As questões devem ser respondidas nesta própria folha de prova. 
Caso necessite de mais espaço para resolução das questões, o espaçamento entre as questões pode ser 
alterado. 
Terminada a prova, o aluno deverá salvar em PDF e enviar ao professor via Teams. 
Boa prova. 
 
 
___________________________________________________________________________________________________________ 
1. Questão (valor 6,0 pontos) 
Desenvolva um programa em Assembly para microcontroladores PIC16F628A que realize as seguintes tarefas: 
- Ao ser pressionado um primeiro botão ligue um Led vermelho; 
- Ao ser pressionado um segundo botão ligue um Motor DC; 
- Ao ser pressionado um terceiro botão desligue o Motor DC e apague o Led vermelho; 
 
Deverão ser seguidas as seguintes definições: 
- As portas RA1, RA2 e RA3 serão configuradas como entradas para o primeiro, segundo e terceiro botões respectivamente; 
- As portas RB4 e RB5 serão configuradas como saídas para o Led vermelho e para o Motor DC respectivamente; 
 
Deverão ser seguidas as seguintes nomenclaturas: 
- Primeiro botão referenciado como BT_VM; 
- Segundo botão referenciado como BT_MT; 
- Terceiro botão referenciado como BT_CLR; 
- Led vermelho referenciado como LED_VM; 
- Motor DC referenciado como MT_DC; 
 
Deverão ser seguidas as seguintes configurações: 
__CONFIG _BOREN_ON & _CP_OFF & _PWRTE_ON & _WDT_ON & _LVP_OFF & _MCLRE_OFF & _XT_OSC 
 
Obs.: As portas de entrada deverão ser acionadas com nível lógico baixo. 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* EX1 - BOTÃO E LED * 
;* DESBRAVANDO O PIC * 
;* * 
;* PROF. PAULO SILVEIRA DATA: 10/03/2020 aluno: Gabriel costa * 
;* DISCIPLINA: SISTEMAS A MICROCONTROLADORES * 
;* * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* DESCRIÇÃO DO ARQUIVO * 
;*-------------------------------------------------------------------------------------------------------------------------------------------------* 
;* SISTEMA MUITO SIMPLES PARA REPRESENTAR O ESTADO DE UM BOTÃO ATRAVÉS DE UM LED *. 
;* * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* ARQUIVOS DE DEFINIÇÕES * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
#INCLUDE <P16F628A.INC> ;ARQUIVO PADRÃO MICROCHIP PARA 16F628A 
 __CONFIG _BOREN_ON & _CP_OFF & _PWRTE_ON & _WDT_ON & _LVP_OFF & _MCLRE_OFF & _XT_OSC 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* PAGINAÇÃO DE MEMÓRIA * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
;DEFINIÇÃO DE COMANDOS DE USUÁRIO PARA ALTERAÇÃO DA PÁGINA DE MEMÓRIA 
 
#DEFINE BANK0 BCF STATUS,RP0 ;SETA BANK 0 DE MEMÓRIA 
#DEFINE BANK1 BSF STATUS,RP0 ;SETA BANK 1 DE MAMÓRIA 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* VARIÁVEIS * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
; DEFINIÇÃO DOS NOMES E ENDEREÇOS DE TODAS AS VARIÁVEIS UTILIZADAS 
; PELO SISTEMA 
 
 CBLOCK 0x20 ;ENDEREÇO INICIAL DA MEMÓRIA DE 
 ;USUÁRIO 
 
 
 W_TEMP ;REGISTRADORES TEMPORÁRIOS PARA 
 STATUS_TEMP ;INTERRUPÇÕES 
 ;ESTAS VARIÁVEIS NEM SERÃO UTI- 
 ;LIZADAS 
 ENDC ;FIM DO BLOCO DE MEMÓRIA 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* FLAGS INTERNOS * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
; DEFINIÇÃO DE TODOS OS FLAGS UTILIZADOS PELO SISTEMA 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* CONSTANTES * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
; DEFINIÇÃO DE TODAS AS CONSTANTES UTILIZADAS PELO SISTEMA 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* ENTRADAS * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
; DEFINIÇÃO DE TODOS OS PINOS QUE SERÃO UTILIZADOS COMO ENTRADA 
; RECOMENDAMOS TAMBÉM COMENTAR O SIGNIFICADO DE SEUS ESTADOS (0 E 1) 
 
#DEFINE BT_VM PORTA,1 
 
#DEFINE BT_MT PORTA,2 
 
#DEFINE BT_CLR PORTA,3 
 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* SAÍDAS * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
; DEFINIÇÃO DE TODOS OS PINOS QUE SERÃO UTILIZADOS COMO SAÍDA 
; RECOMENDAMOS TAMBÉM COMENTAR O SIGNIFICADO DE SEUS ESTADOS (0 E 1) 
 
#DEFINE LED_VM PORTB,4 
 
#DEFINE MT_DC PORTB,5 
 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* VETOR DE RESET * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
 ORG 0x00 ;ENDEREÇO INICIAL DE PROCESSAMENTO 
 GOTO INICIO 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* INÍCIO DA INTERRUPÇÃO * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
; AS INTERRUPÇÕES NÃO SERÃO UTILIZADAS, POR ISSO PODEMOS SUBSTITUIR 
; TODO O SISTEMA EXISTENTE NO ARQUIVO MODELO PELO APRESENTADO ABAIXO 
; ESTE SISTEMA NÃO É OBRIGATÓRIO,MAS PODE EVITAR PROBLEMAS FUTUROS 
 
 ORG 0x04 ;ENDEREÇO INICIAL DA INTERRUPÇÃO 
 RETFIE ;RETORNA DA INTERRUPÇÃO 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* INICIO DO PROGRAMA * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
INICIO 
 BANK0 ;ALTERA PARA O BANCO 0 
 MOVLW B'00000111' 
 MOVWF CMCON ;DEFINE O MODO DE OPERAÇÃO DO COMPARADOR ANALÓGICO 
 
 CLRF PORTA ;LIMPA O PORTA 
 CLRF PORTB ;LIMPA O PORTB 
 
 BANK1 ;ALTERA PARA O BANCO 1 
 MOVLW B'00001110' 
 MOVWF TRISA ;DEFINE RA2 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 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* INICIALIZAÇÃO DAS VARIÁVEIS * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* ROTINA PRINCIPAL * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
MAIN 
 
TESTA_BOTAO_LED 
 BTFSC BT_VM 
 GOTO TESTA_BOTAO_MOTOR 
 GOTO LIGA_LED 
 
TESTA_BOTAO_MOTOR 
 BTFSC BT_MT 
 GOTO TESTA_BOTAO_CLEAR 
 GOTO LIGA_MOTOR 
 
TESTA_BOTAO_CLEAR 
 BTFSC BT_CLR 
 GOTO TESTA_BOTAO_LED 
 GOTO DESLIGA_TUDO 
 
LIGA_LED 
 BSF LED_VM 
 GOTO MAIN 
 
LIGA_MOTOR 
 BSF MT_DC 
 GOTO MAIN 
 
DESLIGA_TUDO 
 BCF LED_VM 
 BCF MT_DC 
 GOTO MAIN 
 
 
 
 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
;* FIM DO PROGRAMA * 
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 END ;OBRIGATÓRIO 
 
 
 
2. Questão (valor 2,0 pontos) 
Qual dos circuitos eletrônicos abaixo é capaz representar corretamente o funcionamento da lógica desenvolvida na questão 1? 
JUSTIFIQUE SUA ESCOLHA. 
Resposta: DIAGRAMA 5 Porque e o único que corresponde as entradas e saída como e feita pela questão anterior e também a 
utilização do cristal e o master clear off 
 
 
Diagrama 1 Diagrama 2 
 
 
Diagrama 3 Diagrama 4 
 
 
 
Diagrama 5 Diagrama 6 
___________________________________________________________________________________________________________ 
Campus: Prova Montada em 07/10/2021 por 
SULACAP PAULO CEZAR ROCHA SILVEIRA

Outros materiais