Buscar

AV2 Microcontroladores

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

5407350100 A
06/06/2022 19:36
 
Nome: __________________________________________________________ Matrícula: ________________
Disciplina: WYF0959 / MICROCONTROLADORES Data: ___ /___ /______
Período: 2022.1 / AV2 Turma: 3001
 
 
Leia com atenção as questões antes de responder.
É proibido o uso de equipamentos eletrônicos portáteis e consulta a materiais de qualquer natureza durante a realização da prova.
Questões objetivas e discursivas que envolvam operações algébricas devem possuir a memória de cálculo.
Boa prova.
 
 
 
 
 
 
 
 
 
1. _______ de 1,00 
Dentre as vantagens do uso da linguagem de programação C com parado ao Assembly, assinale a alternativa incorreta:
Redução do tempo de desenvolvimento. 
Facilidade de manutenção. Pela estruturação da linguagem, corrigir problemas e alterar o código é
relativamente simples.
Um programa desenvolvido em C consome menos memória e apresenta maior velocidade de processamento
que um programa desenvolvido em Assembly.
Os códigos são de fácil escrita, com isso, o reuso dos códigos é facilitado, principalmente pela criação de
funções próprias.
Portabilidade. Transferir o código de um tipo de microcontrolador para outro, mesmo com arquiteturas
totalmente diferentes, é relativamente simples.
2. _______ de 1,00 
O código a seguir utiliza 2 botões que quando pressionados geram as interrupções externas INT0 e INT1. Analise o
código e assina a alternativa incorreta:
#define LED PB5 
ISR(INT0_vect);
ISR(INT1_vect);
//----------------------------------------------------------------------------------
int main()
{
DDRD = 0x00; 
PORTD = 0xFF; 
DDRB = 0b00100000; 
PORTB = 0b11011111; 
EICRA = 0b00000010;
EIMSK = 0b00000011;
sei(); //habilita interrupções globais, ativando o bit I do SREG
while(1){}
}
//-----------------------------------------------------------------------------------
ISR(INT0_vect) 
{
cpl_bit(PORTB,LED);
}
//-----------------------------------------------------------------------------------
ISR(INT1_vect) 
{
cpl_bit(PORTB,LED);
_delay_ms(200); 
A interrupção INT0 foi configurada para ocorrer somente na transição de 0 para 1 (borda de descida).
O botão ligado a interrupção INT1 foi habilitado para gerar uma interrupção por nível lógico 0.
Enquanto o botão ligado a INT1 for pressionado, o LED irá piscar com um intervalo de tempo de 200 ms.
As interrupções externas INT1 e INT0 são habilitadas através dos dois bits menos significativos do
registrador EIMSK
Quando o botão ligado a INT0 é pressionado, o LED troca de estado (liga ou desliga).
3. _______ de 1,00 
Em um microcontrolador, dispõe-se de um temporizador (timer), implementado a partir de um contador de oito bits,
onde a frequência de clock empregada no circuito do timer é de 16 MHz. Um projetista necessita empregar esse timer
para disparar uma rotina de interrupção no microcontrolador a cada 1,0 ms. Desse modo, o menor fator de escala que
deve ser utilizado no prescaler do timer em questão é de
32
16
128
8
64
4. _______ de 1,00 
De acordo com o código em C descrito abaixo, assinale a alternativa correta:
#define F_CPU 16000000UL 
#include 
#include 
#define set_bit(Y,bit_x) (Y|=(1<
#define clr_bit(Y,bit_x) (Y&=~(1<
#define tst_bit(Y,bit_x) (Y&(1<
#define BOTAO PD7 
#define LED PD2 
int main()
{
 DDRD = 0b00000100; 
 PORTD= 0b11111111;
 while(1) 
 {
 if(!tst_bit(PIND,BOTAO))
 {
 while(!tst_bit(PIND,BOTAO));
 _delay_ms(10); 
 if(tst_bit(PORTD,LED)) 
 clr_bit(PORTD,LED);
 else 
 set_bit(PORTD,LED)
 }
 }
}
O programa executa a tarefa de trocar o estado de um led sempre que um botão é pressionado.
O programa faz um led piscar enquanto um botão estiver pressionado.
O programa trata-se de um pisca-led que troca o estado do led a cada 10ms.
Ao pressionar um botão, o led acende e apaga uma vez com intervalo de tempo de 10 ms.
O programa testa um botão e pisca um led caso o botão não esteja pressionado.
5. _______ de 1,00 
O trecho de código pode ser utilizado, tanto na configuração dos pinos de uma porta, quando na escrita e leitura da
mesma.
unsigned char i;
DDRB = 0xC5;
PORTB = 0b11000011;
i = PINB;
Com relação às portas de entrada e saída, considerando ainda o trecho de código apresentado, assinale o item correto.
No trecho apresentado, os pinos PB7, PB6, PB0 e PB2 são configurados como saídas.
No trecho apresentado, os pinos PB7, PB6, PB0 e PB2 são configurados como entradas.
No trecho apresentado, DDRB seta os pinos DDB3, DDB2, DDB1 e DDB0.
No trecho apresentado, os pinos PB0, PB1, PB6 e PB7 são configurados como entradas.
A última linha do trecho apresentado (i= PINB;) carrega na variável i o último valor escrito pelo
microcontrolador na porta B.
6. _______ de 1,00 
Em microcontroladores uma interrupção é um sinal externo ou advindo de algum periférico que provoca uma troca de
contexto, ou seja, o microcontrolador para o que está executando para atender o dispositivo que fez a sinalização. Com
relação às interrupções do ATMega assinale a alternativa incorreta.
Quando ocorre um pedido de interrupção para a CPU, o programa é desviado para um endereço pré-
estabelecido, o vetor de interrupção.
A ocorrência de um determinado evento faz com que uma sinalização (flag) relacionada a este evento seja
setada.
Se a interrupção associada a este evento estiver habilitada, a CPU receberá um pedido de interrupção.
Existem vários eventos causadores de interrupção tais como transição em alguns pinos, estouro de timers.
Uma interrupção não faz com que a execução normal do programa pare, elas são tratadas de forma paralela.
7. _______ de 1,00 
Considere as linhas de código a seguir:
signed char a, b;
a = 100;
b = 200;
a *= b;
Assinale a alternativa correta:
 
A variável a deveria ser declarada como unsigned char.
A operação acarreta em um estouro da capacidade da variável, gerando um resultado errado.
A operação descrita acima realiza o resto da divisão de a por b.
A operação descrita acima terá como resultado a = 20000.
A operação realiza a soma entre as variáveis a e b.
8. _______ de 1,00 
Um microntrolador possui diversos periféricos especializados que podem ser adequadamente configurados por meio de
registradores próprios. Dentre estes, o módulo temporizador tem um importante papel. No caso do ATMega, ele possui
três temporizadores/contador com características próprias. O temporizador/contador 0 do ATMega tem as seguintes
características, exceto:
Possui um divisor do clock para o contador de até 10 bits - prescaler..
Funciona como gerador de frequência.
Pode contar eventos externos.
Apresenta uma função especial para a contagem precisa de 1 s, permitindo o uso de um cristal externo
independente para o seu clock (32,768 kHz)..
Funciona como um contador simples baseado no clock da CPU.
9. _______ de 1,00 
Com relação aos tipos de variáveis utilizadas na linguagem C, assinale a alternativa incorreta:
Os modificadores unsigned e signed informam que os valores armazenados serão apenas positivos ou
positivos e negativos.
Os tipos de variáveis podem receber modificadores pcionais de modo a criar um tipo de dado mais adequado
para cada aplicação.
Uma variável declarada como unsigned char apresenta um range de 0 a 255 e tem um tamanho de 16 bits.
Na linguagem C, existem 4 tipos de dados: char, int, float e double.
Uma variável declarada como unsigned int apresenta um range de 0 a 65535 e tem um tamanho de 16 bits..
Campus:
DUNAS - CE
Prova Impressa em 06/06/2022 por
RONNY GLAUBER DE ALMEIDA CACAU
 
Ref.: 5407350100 Prova Montada em 06/06/2022
10. _______ de 1,00 
No que diz respeito às interrupções externas, assinale a alternativa incorreta:
 Quando ocorrer um interrupção em algum dos pinos, o bit de sinalização do PORT no registrador PCIFR é
ativo: PCIF0 para o PORTB, PCIF1 para o PORTC e PCIF2 para o PORTD.
A habilitação individual dos pinos é feita nos registradores PCMSK0, PCMSK1 e PCMSK2.Os bits PCIE0, PCIE1 e PCIE2 do registrador PCICR habilitam as interrupções por qualquer mudança nos
pinos do PORTB (PCINT0:7), nos pinos do PORTC (PCINT8:14) e nos pinos do PORTD (PCINT16:23) ,
respectivamente.
O bit mais significativo do registrador SREG tem a função de controlar todas as interrupções, internas e
externas do microcontrolador. Quando o bit mais significativo do registrador SREG é igual a zero, as
interrupções habilitadas individualmente passam a funcionar, quando é igual a 1, todas as interrupções são
desabilitadas.
O registrador PCICR é responsável pela habilitação de todas as interrupções externas nos pino de I/O, do
PCINT0 até o PCINT23.

Continue navegando

Outros materiais