Escolar Documentos
Profissional Documentos
Cultura Documentos
(a) Como esta configurado o pino portb.4?. É uma entrada ou uma saída e por quê?
(b)A variável led esta associada a que pino do PIC?. Responder com o número do pino.
(c) No programa em que linha decide o tipo de PIC a ser usado?
(d)O que mudaria no programa para que quando botão = 1 o led seja 1?
#include <16f877A.h>
#use delay(clock=4000000,RESTART_WDT)
#fuses xt,nowdt,noprotect,put,brownout,nolvp,nocpd,nowrt
#use fast_io(a)
#use fast_io(b)
#use fast_io(c)
#use fast_io(d)
#use fast_io(e)
void main ()
{
set_tris_a(0b11111111);
set_tris_b(0b11111001);
set_tris_c(0b11111111);
set_tris_d(0b11111111);
set_tris_e(0b00000111);
porta=0x00;
portb=0x00;
portc=0x00;
portd=0x00;
porte=0x00;
while(TRUE)
{
RESTART_WDT();
if(!botao)
led = 1;
else
led=0;
}
}
8 - Faça um programa em que um LED, ligado à saída RB0, seja aceso, caso uma chave
C, ligada à entrada RA2, esteja em “1”. Caso contrário, o diodo se apaga.
9 – Observando a figura abaixo faça um programa para que apertando o botão SA13
mostre no display DS4 o número 7 e com o botão SA14 o número 9. Escolha outro
botão para desligar todos os leds do display.
RESOLUÇÃO DA LISTA
1)A)
B)
2)
3)
4)
6)
a)
PIC 16F877A
*Principais especificações
PIC de 40 pinos, sendo 33 configuraveis
5 Ports: A, B, C, D, E
2 pwms
Conversor A/D de 10 bits
15 interrupções disponíveis
Memória EPROM de 256 bytes
3 timers (2 de 8 bits e 1 de 16 bits)
Comunicações seriais (USART, I²C)
PIC 16F628A
b) Utilizando a função delay para contar o tempo você impede que o seu controlador faça
alguma outra coisa até essa contagem acabar e quando fazemos isso por interrupção o
controlador conta o tempo enquanto faz outras operações e ativa o gatilho da interrupção
quando o tempo determinado pelo programa é atingido.