Vous êtes sur la page 1sur 4

ASSOCIAÇÃO EDUCACIONAL DOM BOSCO

Fundada em 21 de dezembro de 1964

MANTENEDORA DAS FACULDADES DE CIÊNCIAS ECONÔMICAS, ADMINISTRATIVAS,


COMPUTAÇÃO, FILOSOFIA, CIÊNCIAS E LETRAS DOM BOSCO, FACULDADE DE
ENGENHARIA DE RESENDE E COLÉGIO DE APLICAÇÃO DE RESENDE.

LISTA DE EXERCÍCIOS PROGRAMAÇAO C e PIC 16F877a


1- Qual é a impressão na tela do seguinte programa abaixo?

a) #include <stdio.h> b) #include <stdio.h>


int main () int main ()
{ {
int num,valor; int mtrx [20][10];
num=55; int i,j,count;
num++; count=1;
if(num>=56); for (i=0;i<20;i++)
{ valor=num/2; {
} for (j=0;j<10;j++)
else {
{ mtrx[i][j]=count;
printf(“%d”,mtrx[i][j]);
valor=num count++;
} }
printf ("\n%d %d",valor,num); Printf(“\n”);
return(0); }
} return(0);
}

2 - Escreva um programa em linguagem C onde o usuário entre com 100 notas de


alunos. As mesmas deverão ser armazenadas num vetor. Ao final da entrada dos
dados, o programa deverá imprimir a média dos alunos e a maior nota.

3 – Faça um programa que coloque os números de 1 a 100 na tela na ordem inversa.

4 – Responda as seguintes perguntas referente ao programa abaixo

(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)

#byte porta = 0x05


#byte portb = 0x06
#byte portc = 0x07
#byte portd = 0x08
#byte porte = 0x09
#bit botao = portb.0
#bit led = portb.1

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;
}
}

6 – Sobre o PIC 16F877a responda:


(a) as principais diferenças entre o PIC 16F628A e o PIC 16F877a
(b) Qual a diferença entre a utilização da função delay e interrupção.
7 – Faça um programa que faz com que um speaker, ligado ao pino RB7 da porta B,
dê beeps periódicos a cada segundo. Cada beep dura cerca de 0,5s. Como o ciclo de
clock do microcontrolador é muito pequeno, é necessário introduzir delays para que
os beeps do speaker possam ser ouvidos claramente

(a) Utilizando delay


(b) Utilizando interrupção

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.

Vous aimerez peut-être aussi