Buscar

NP-217-2aProva-Respostas

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 6 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

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 6, do total de 6 páginas

Prévia do material em texto

2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
 
 RESPOSTAS 
 
OBSERVAÇÕES: 
 
- Prova sem consulta, com duração de 90 minutos; 
- Valor: 100 pontos 
- Não é permitido o empréstimo de qualquer tipo de material; 
- BOA PROVA!!! 
 
1ª QUESTÃO (20 pontos) De acordo com o diagrama de blocos abaixo, que descreve um 
sistema de controle, e seus estados de funcionamento, pede-se: 
 
 
 
 
CH1 � 0 = Ligada, 1 = Desligada Led1 � 1 = Aceso, 0 = Apagado 
 
CH2 � 1 = Ligada, 0 = Desligada Led2 � 0 = Aceso, 1 = Apagado 
 
 
a) Desenhe abaixo, o circuito elétrico completo para o funcionamento do projeto de 
acordo com as especificações acima. 
 
2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
b) Escreva o programa em linguagem C, para que quando a CH1 for ligada acenda o 
LEd1 e depois, verifique o estado da CH2. Se esta estiver ligada, o LED2 ficará 
apagado, caso contrário ficará aceso. Quando a CH1 for desligada, os dois Leds 
devem ficar apagados. 
 
 
2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
2ª QUESTÃO (30 pontos) Em um determinado sistema desenvolvido com a plataforma 
Arduino, deve ser incluída uma função de interrupção que utilizará o canal 1 e ficará sempre 
habilitada, sendo que neste canal está ligado um sensor de presença que em seu estado normal 
fica com nível lógico 0 em sua saída e quando for detectado algum movimento no ambiente 
este vai para nível lógico 1. Quando esta situação ocorrer, a rotina de interrupção deverá ser 
chamada e ela deverá durante 1 segundo gerar um sinal PWM de 40% de Duty Cycle na porta 
digital 7 e também acionar um relé que está ligado na porta digital 10 (1=liga relé, 0=desliga 
relé). Após o tempo de 1 segundo tanto a saída PWM quanto o Relé devem ser desligados. 
Sabendo destes requisitos, escreva abaixo todos os comandos necessários para a correta 
implementação desta rotina de interrupção. 
 
... 
void ISR_INT1(); //protótipo da função de interrupção 
... 
void setup() 
{ 
 ... 
 ... 
 
attachInterrupt(1,ISR_INT1, RISING); 
interrupts(); 
 
 
} 
 
void loop() 
{ 
 ... 
 ... 
 
 
 
 
} 
 
void ISR_INT1() 
{ 
 analogWrite(7,102); //DC=40% 
 digitalWrite(10,HIGH); //liga Relé 
 delay(1000); 
 analogWrite(7,0); //DC=0% 
 digitalWrite(10,LOW); //delisga Relé 
}
2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
3ª QUESTÃO (30 pontos) Em um determinado sistema desenvolvido com a plataforma 
Arduino, deve ser acrescentado um temporizador de 500ms e uma interrupção associada a 
este temporizador. Na rotina de interrupção, somente a cada 5 segundos, deverá acorrer as 
seguintes tarefas nesta sequência: desabilitar a interrupção, parar o temporizador, fazer um 
led conectado na porta digital 5 piscar com o tempo de 700ms aceso e 900ms apagado, depois 
o temporizador deve ser religado e a interrupção habilitada. 
Sabendo destes requisitos, escreva abaixo todos os comandos necessários que devem ser 
incluídos para a correta implementação destes requisitos. 
 
... 
void ISR_TIMER(); //protótipo da função de interrupção 
 
int CONT; //contador de tempo 
... 
void setup() 
{ 
 ... 
 ... 
Timer1.inicialize(500000); //500ms 
Timer1.attachInterrupt(ISR_TIMER); 
Timer1.start(); 
CONT=0; 
 
} 
 
void loop() 
{ 
 ... 
 ... 
 
 
 
} 
 
void ISR_TIMER() 
{ 
 CONT++; 
 if (CONT >= 10) 
 { 
 CONT=0; 
 noInterrupts(); 
 Timer1.stop(); 
 digitalWrite(5,HIGH); 
 delay(700); 
 digitalWrite(5,LOW); 
 delay(900); 
 Timer1.resume(); //pode ser restart() 
 interrupts(); 
 } 
} 
2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
4ª QUESTÃO (20 pontos) Em um determinado sistema desenvolvido com a plataforma 
Arduino, é feito a leitura de um sensor em sua entrada analógica 5. No programa existe uma 
rotina de interrupção que é disparada a cada 10 segundos para fazer a leitura deste sensor e 
gerar uma saída PWM na porta digital 10, de acordo com as seguintes condições: 
 
Sensor Duty Cycle 
0V até 2V 20% 
> 2V até 3V 40% 
> 3V até 5V 80% 
 
Pede-se: 
- Escreva abaixo a rotina de Interrupção. 
- Esta rotina não deve ser interrompida durante sua execução. 
- O sinal PWM deve ser mantido no estado da tabela acima durante 2 segundos, após esse 
tempo ele passa para 0% de Duty Cycle. 
 
 
... 
... 
void SENSOR() 
{ 
 float TENSAO; 
 
 noInterrupts(); 
 TENSAO = analogRead(5) * 0.00488; //tensão na entrada analógica 
 if (TENSAO <= 2) 
 analogWrite(10,51); //DC=20% 
 else if (TENSAO <=3) 
 analogWrite(10,102); //DC=40% 
 else 
 analogWrite(10,204); //DC=80% 
 
 delay(2000); 
 analogWrite(10,0); //DC=0% 
 interrupts(); 
} 
 
 
 
 
2ª. Prova NP-217 - Eletrônica Digital II 
Prof. Evandro Luís Brandão Gomes 24/11/2015 
 
 
 
 
ANEXO 1 – ARDUINO 
 
 
Funções da Biblioteca do Arduino: 
 
pinMode(porta, modo); 
digitalWrite(porta, valor); 
var = digitalRead(porta); 
var = analogRead(porta); 
analogWrite(porta, valor); 
interrupts(); 
noInterrupts(); 
attachInterrupt(canal, função, modo); 
detachInterrupt(interrupt); 
delay(tempo); 
Timer1.initialize(microseg); 
Timer1.start(); 
Timer1.stop(); 
Timer1.restart(); 
Timer1.resume(); 
Timer1.attachInterrupt(função); 
Timer1.detachInterrupt(); 
 
ANEXO 2 – Microcontrolador ATmega328p 
 
 
 
Registradores de Configuração: 
 
DDRx(bit n) = 1 � Pino n configurado como Saída. 
DDRx(bit n) = 0 � Pino n configurado como 
Entrada. 
PORTx(bit n) = 1� o pino de saída vai para 1 
PORTx(bit n) = 0� o pino de saída vai para 0 
PORTx(bit n) = 1� o resistor de Pull-up é ligado 
neste bit 
PORTx(bit n) = 0� o resistir de Pull-up é desligado 
neste bit 
leitura de PINx(bit n) = 0� bit lido na porta é 0 
leitura de PINx(bit n) = 1� bit lido na porta é 1 
 
Funções da Biblioteca: 
 
_delay_ms(tempo);

Outros materiais

Outros materiais