Exercicios Aluno PIC

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 13

CURSO DE MICROCONTROLADORES EXERCCIOS ALUNO

Ricardo Pannain

Programa 1:
Programa que faz com que um LED, ligado sada RB0, seja aceso, caso uma chave C, ligada entrada RA2, esteja em 1. Caso contrrio, o diodo se apaga.

Diagrama Esquemtico:

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 2:
Programa que funciona como um segredo eletrnico. O microcontrolador espera uma combinao de 5 chaves, ligadas na porta A (RA0 RA5), e, se esta combinao ocorrer, todos os LEDs ligados porta B (RB0 RB7) se acendem. Caso contrario, eles permanecem apagados. A combinao deve ser 1-0-1-0-1.

Diagrama Esquemtico:

L1 L2 L3 L4 L5 L6 L7 L8

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 3:
Programa que utiliza um display de 7 segmentos, ligado porta B (RB0 RB7) para mostrar o valor de uma chave C ligada entrada RA2 da porta A. Se a chave estiver ligada, o display exibe o nmero 1. Caso contrrio, exibido o nmero 0.

Diagrama Esquemtico:

Gnd

abcdefg.

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 4:
Programa que faz com que o LED, ligado ao pino RB0 da porta B acenda e apague a cada segundo. Como o ciclo de clock do microcontrolador muito pequeno, necessrio introduzir atrasos para que as transies do LED possam ser visualizadas. Estes atrasos funcionam da seguinte maneira: uma rotina, chamada Atraso1S, que utiliza a subrotina Del10, que gera atrasos de 10 ms a cada chamada. Dentro desta rotina existe uma varivel auxiliar (TEMPO1), que comea com o valor 100 e vai sendo decrementada. Cada vez que ela decrementada, a rotina Del10 chamada novamente. Ou seja, sero 100 chamadas rotina Del10, gerando um atraso total de 1 segundo.

Diagrama Esquemtico:

L1

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 5:
Programa que conta as transies (mudanas) de uma chave C, ligada ao pino RA0 da porta A. A quantidade de transies mostrada por 8 LEDs ligados aos pinos da porta B, em formato binrio

Diagrama Esquemtico:

L1 L2 L3 L4 L5 L6 L7 L8

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 6:
Programa que faz com que um speaker, ligado ao pino RB7 da porta B, d beeps peridicos a cada segundo. Cada beep dura cerca de 0,5s. Como o ciclo de clock do microcontrolador muito pequeno, necessrio introduzir atrasos para que os beeps do speaker possam ser ouvidos claramente. Estes atrasos funcionam da seguinte maneira: duas rotinas, uma chamada Atraso1S (atraso de 1 segundo) e outra, AtrasoMS (atraso de 0,5 segundos), utilizam a subrotina Del10, que gera atrasos de 10 ms a cada chamada. Dentro desta rotina existe uma varivel auxiliar (TEMPO1), que, para a rotina Atraso1S, tem o valor inicial 100 e, para a rotina AtrasoMS tem o valor inicial de 50, e que vai sendo decrementada. Cada vez que ela decrementada, a rotina Del10 chamada novamente.

Diagrama Esquemtico:

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 7:
Programa que escreve dados na memria EEPROM do microcontrolador. A posio 0 desta memria ir armazenar o valor das chaves ligadas aos pinos RA0 RA4 da porta A (em binrio). A verificao do v alor armazenado na memria pode ser visualizada pelo programa de gravao do PIC, j que esta memria no apagada at ser subscrita. A gravao da memria EEPROM leva um certo tempo. Devemos esperar este tempo antes de continuar a execuo do programa. Temos duas opes: ou esperamos que o bit WR do registrador EECON1 seja limpo pelo hardware, indicando o fim da escrita, ou introduzirmos um atraso, que espera uma determinada quantidade de tempo antes de continuar a execuo. Esta implementao utiliza um atraso de, aproximadamente, 2,6 segundos, para a espera da gravao da memria EEPROM.

Diagrama Esquemtico:

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 8: Programa que l os dados anteriormente gravados na memria EEPROM, na posio 0. O valor lido representado, em binrio, atravs de LEDs ligados aos pinos da porta B.

Diagrama Esquemtico:

L1 L2 L3 L4 L5 L6 L7 L8

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

Programa 9:
Programa similar ao programa 5, mas explora os recursos de WatchDog e modo Sleep do microcontrolador. A partir este programa, passaremos a utilizar o arquivo de definies padro da Microchip para microcontroladores modelo 16F84, onde se encontra as definies dos nomes e endereos de todos os SFRs (registradores especiais) e uma srie de outras definies necessrias para a utilizao do microcontrolador 16F84. Como curiosidade, voc pode consultar este arquivo para visualizar todos os nomes dos SFRs e constantes que podem ser utilizadas na programao do 16F84.

Diagrama Esquemtico:

L1 L2 L3 L4 L5 L6 L7 L8

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

10

Programa 10:
Programa que simula os movimentos de um rob. Este rob imaginrio possui d ois dispositivos infravermelhos, que fazem com que ele siga uma trajetria desenhada no cho, e dois motores, um para cada roda de trao. Quando os sensores detectam a necessidade de acertar a rota, os motores devem ser manipulados a fim de realizar o acerto. Por exemplo, se o rob estiver desviando a rota para a esquerda, o rob deve se mover para a direita at que a rota seja acertada. Para isto, o motor da direita deve ser revertido (rodar para trs), e o da esquerda deve continuar ligado (rodando para frente). Quando a rota estiver certa, ambos os motores devem ser ligados para frente, para que o rob continue andando em frente. Os movimentos possveis so para a esquerda (reverter o motor da esquerda e manter o motor da direita a frente), para a direita (reverter o motor da direita e manter o motor da esquerda a frente), para frente (manter os dois motores a frente), e para trs (reverter os dois motores). Os sensores sero simulados pelas chaves ligadas aos pinos RA0 e RA1 da porta. Vamos convencionar que o valor 0 significa que o sensor no detectou desvio na trajetria, e o valor 1 significa que o sensor detectou um desvio na trajetria. Os LEDs ligados aos pinos RB0 e RB1 da porta B iro simular as sadas de controle dos dois motores de trao (direito e esquerdo, respectivamente). Vamos convencionar que o valor 1 significa ligar os motores frente, e 0 significa reverter os motores.

Diagrama Esquemtico:

L1 L2

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

11

Programa 11:
Programa que gera nmeros aleatrios. Ir funcionar da seguinte maneira: - Devemos gerar nmeros aleatrios de 0 a 6 - Quando a chave C, ligada ao pino RA0 da porta A, estiver em "1", o display (ligado aos pinos RB0 RB7 da porta B) ir mostrar, seqencialmente, nmeros de 0 a 6, em intervalos de 0,05 segundos - Ao passar a chave C para "0", o display mostrar, durante 3 segundos, o nmero aleatrio obtido - Passados os 3 segundos, o display se apaga e a seqncia se repete O nmero representado nos 4 bits menos significativos do registrador Work (W) transformado em um nmero equivalente no display de 7 segmentos, como se estivssemos implementando um conversor. O cdigo referente ao nmero no display de 7 segmentos tambm retorna no registrador W.

Diagrama Esquemtico:

Gnd

abcdefg.

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

Ricardo Pannain

12

Programa 12:
Programa que ir simular um contador de 2 dgitos (00 a 99). Para sua realizao, sero utilizados dois displays de 7 segmentos, e dois conversores binrio-7segmentos, que recebe um nmero binrio de 4 bits e transforma este nmero para a representao do display. Para exibir os nmeros nos displays, utilizaremos a porta B, sendo que os 4 bits menos significativos representaro o nmero a ser exibido no primeiro display (unidade), e os 4 bits mais significativos representaro o nmero a ser exibido no segundo display (dezena). Este contador ter duas chaves e um boto (push buttom). A chave ligada entrada RA0 da porta A ir controlar o sentido da contagem (0 = Decrescente e 1 = Crescente). A chave ligada entrada RA1 da porta A ir controlar a parada do contador (0 = Parar e 1 = Contar). E, por ltimo, o boto ligado RA2 servir de reset, ou seja, quando pressionado, ir zerar os displays e recomear a contagem.

Diagrama Esquemtico:
Gnd Gnd

abcdefg.

abcdefg.

a b c d e f g

4543

D3 D2 D1 D0 LD BI PH

4543

PIC
RA0 RA1 RA2 RA3 RA4 RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

+V

Ricardo Pannain

D3 D2 D1 D0 LD BI PH
13

a b c d e f g

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy