Baixe o app para aproveitar ainda mais
Prévia do material em texto
Parte superior do formulário Disc PROGRAMAÇÃO DE MICROCONTROLADORES Período: Aluno: Matrícula: Data: Turma: Lupa RETORNAR À AVALIAÇÃO Acerto de 10 pontos 1a Questão (COMPESA-2018) Um microcontrolador pode ser definido como um computador em um único chip, pois nele está integrado CPU, memória de programa, memória de dados, circuito de clock, interface de comunicação serial, entre outros. A respeito de um microcontrolador, é correto afirmar que: possui uma capacidade de processamentos lógicos limitada. possibilita uma grande variedade de modos de endereçamento. possui processamentos aritméticos complexos. possibilita o gerenciamento de grande quantidade de memória. permite tratamento de muitos formatos de dados. 2a Questão Para as afirmações abaixo, indique R para RISC e C para CISC: I - Projetados para usar menos energia, o que significa que podem ser usados em smartphones que não têm sistemas de refrigeração dedicados. II - Visa usar o mínimo de linhas de código de montagem possível, mesmo se mais ciclos de clock forem necessários como resultado. III - Minimiza o número de ciclos de clock por instrução. Qual a associação correta? I - C, II - C, III - R I - C, II - R, III - C I - R, II - C, III - R I - R, II - R, III - R I - R, II - R, III - C 3a Questão Porque não podemos usar a placa McLab1 do PICSimLab em testes com medidor de temperatura? Porque o microcontrolador da placa não possui comparador. Porque o microcontrolador da placa não possui contador. Porque o microcontrolador da placa não trabalha com interrupção. Porque o microcontrolador da placa não possui ADC. Porque o microcontrolador da placa não possui temporizador. 4a Questão A função output_low() no compilador CCS C para microcontroladores PIC é responsável por: Definir o pino especificado para o nível lógico baixo. Definir o pino especificado para o estado de baixa impedância. Definir a porta especificada para o nível lógico baixo. Definir o pino especificado para o modo de saída de dados. Ler o estado do pino especificado. 5a Questão A função do compilador CCS C output_d(valor) escreve a grandeza "valor" como um binário de 8 bits na porta D de microcontroladores PIC. Sabendo disto, como deixar os 8 bits da porta D em nível lógico baixo? output_d(128) output_d(0) output_d(256) output_d(255) output_d(low) 6a Questão Considere o código abaixo para microcontroladores PIC. Considere também que temos um botão ligado ao pino RA1 na configuração pull down e um led ligado ao pino RB0. #include <16F628A.h> #fuses XT #use delay( clock=4MHz ) void main () { while (TRUE) { if(input(PIN_A1) == 0){ output_high(PIN_B0); delay_ms(2000); output_low(PIN_B0); delay_ms(1000); } } } O que faz o programa? Pisca o led (aceso 2 segundos e apagado 1 segundo) se o botão está pressionado. Pisca o led (aceso 1 segundo e apagado 2 segundos) se o botão não está pressionado. Pisca o led (aceso 2 segundos e apagado 2 segundos). Pisca o led (aceso 1 segundo e apagado 2 segundos). Pisca o led (aceso 2 segundos e apagado 1 segundo) se o botão não está pressionado. 7a Questão O que acontece quando uma segunda interrupção com menor prioridade ocorre durante a execução de uma primeira com maior prioridade? A segunda é descartada e não será atendida As duas são encerradas pela CPU As duas são atendidas ao mesmo tempo pela CPU A segunda aguarda enquanto a primeira é concluída A primeira é concluída para que a segunda seja atendida 8a Questão Diga o que se observa em um LCD de caracteres ligado, de forma correta, à um Arduino UNO com o código abaixo. #include LiquidCrystal lcd(12, 11, 5, 4, 3, 2); int P = 0; void setup() { lcd.begin(16, 2); } void loop() { P++; lcd.setCursor(0, 0); lcd.print(P); if (P > 99){ P = 0; lcd.clear(); } delay(1000); } Aparece uma contagem de 1 a 99, continuamente, na primeira linha Aparece uma contagem de 0 a 100, continuamente, na primeira linha Aparece uma contagem de 1 a 100, continuamente, na segunda linha Aparece uma contagem de 1 a 100, uma vez, na primeira linha Aparece uma contagem de 1 a 100, continuamente, na primeira linha 9a Questão O padrão MISRA-C diz que a verificação para saber se uma variável está zerada deve ser feita de forma explicita. Qual das verificações abaixo seria correta, segundo esta regra, para se certificar que a variável A está zerada? if (A > 0) { return; } if (A == 0) { return; } if (A =! 0) { return; } if (!A) { return; } if (A = 0) { return; } 10a Questão Qual a principal preocupação em um projeto de IoT com microcontrolador em equipamento portátil? Custo Velocidade de processamento Interface sem fio Dissipação de temperatura Consumo de energia Parte inferior do formulário
Compartilhar