Você está na página 1de 2

AVALIAÇÃO 2 DE MICROCONTROLADORES

PROFESSOR DIEGO AGUIAR

NOME: ______________________________________________________________________

1) Descreva as funções para microcontroladores a seguir: (2,0 pontos)

a. enable_interrupts(INT_EXT1);
b. setup_adc_ports(AN0_TO_AN2);
c. #fuses HS
d. output_toggle(pin_d3);
e. set_adc_channel()
f. set_timer1 (5820);
g. #fuses NOMCLR
h. clear_interrupts(INT_TIMER3);
i. read_adc( );
j. delay_us(400);

2) Um sensor de temperatura LM35 está ligado ao conversor A/D de um PIC. Sabendo


que o sensor tem uma relação de conversão de 10mV/°C, responda: (2,0 pontos)
a. Sabendo que a resolução utilizada do conversor é de 10 bit e as tensões de
referência são é 0 – 5v. Qual a temperatura medida pelo sensor se o PIC está
recebendo o número 149?
b. Se a resolução utilizada do conversor é de 10 bit e as tensões de referência são 0 –
1,5 v. Qual a temperatura medida pelo sensor se o PIC está recebendo o número
149?
c. Determine qual o número que recebido pelo PIC através do conversor A/D de 10
bit e de tensões de referência são é 0 – 5v sabendo que a temperatura que o
sensor está medindo é 30°C.
d. Determine qual o número que recebido pelo PIC através do conversor A/D de 10
bit e de tensões de referência são é 0 – 1,5v sabendo que a temperatura que o
sensor está medindo é 30°C.

3) Faça um código para o circuito a seguir:

Dois sensores de temperatura LM35 estão ligados aos canais AN0 e AN1 do conversor
A/D do PIC18f4520. O botão ligado ao pino B0 irá fazer a seleção de qual sensor será a
temperatura mostrada nos displays de 7 segmentos. Os LEDs ligados aos pinos E0 e E1
mostrarão de maneira visual de qual sensor será a temperatura mostrada no display: se
o primeiro LED estiver ligado, então a temperatura mostrada será do sensor ligado ao
canal 0, se o segundo LED estiver ligado, então a temperatura mostrada será do sensor
ligado ao canal 1. (3,5 pontos)

(Acessando o link a seguir você poderá assistir à simulação no PROTEUS mostrando


como deve funcionar o sistema proposto nesta questão:
https://www.youtube.com/watch?v=1Qa8fZuRUb4)
4) Analise o código a seguir e em seguida descreva o código faz: (2,5 pontos)

#include <18F4520.h>
#fuses HS, NOWDT, NOMCLR
#use delay (clock=8000000)

#INT_TIMER1
void interrompe (void)
{
output_toggle(PIN_A0);
set_timer1(3036);
clear_interrupt(INT_TIMER1);
}

void main()
{
clear_interrupt(INT_TIMER1);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);
set_timer1(3036);
output_high(PIN_A0);
while(TRUE)
{

Você também pode gostar