Buscar

Aula Prática 4 - Programação de Microcontroladores PIC em C - 2

Prévia do material em texto

FUNDAÇÃO EDUCACIONAL MONTES CLAROS
 FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS
 ENGENHARIA DE COMPUTAÇÃO
LABORATÓRIO DE SOFTWARE BÁSICO
AULA PRÁTICA 4
PROGRAMAÇÃO DE MICROCONTROLADOR PIC EM C - 2
OBJETIVOS: Aprender a utilização do compilador CCS para tradução de programas escritos em C
para o microcontrolador PIC16F877A.
PROCEDIMENTOS:
1) Criar uma pasta para o projeto dentro de \Meus Documentos\7ECOM com o nome PROG4.
2) Utilizando a ferramenta Project Wizard do software MPLAB, crie um projeto dentro da pasta
PROG4 com o mesmo nome. No passo 2 escolher o compilador CCSC.exe instalado na pasta
C:\Arquivos de Programas\Picc.
3) Crie um novo arquivo para o projeto e digite o código do programa PROG4 anexo.
4) Salve o arquivo com o nome PROG4.C dentro da pasta do projeto, adicione o arquivo ao projeto e
realize a compilação (Build All).
5) Grave o programa no microcontrolador do kit e observe o seu funcionamento.
6) Analise o código do programa e, com base no programa testado, crie um novo programa que simule
um controle de temperatura de processo. O programa deve ler a temperatura do sensor e controlar
tanto o aquecedor (resistor), quanto o resfriador (ventilador), para manter a temperatura em um
determinado valor pré-definido (set-point).
7) Criar uma pasta para o projeto dentro de \Meus Documentos\7ECOM com o nome PROG4-2.
8) Utilizando a ferramenta Project Wizard do software MPLAB, crie um projeto dentro da pasta
PROG3-2 com o mesmo nome. No passo 2 escolher o compilador CCSC.exe instalado na pasta
C:\Arquivos de Programas\Picc.
9) Crie um novo arquivo para o projeto e digite o código do programa PROG4-2.
10) Salve o arquivo com o nome PROG4-2.C dentro da pasta do projeto, adicione o arquivo ao projeto
e realize a compilação (Build All).
11) Grave o programa no microcontrolador do kit e observe o seu funcionamento.
QUESTÕES
1) Quais as alterações que foram realizadas no programa PROG4 para atender a modificação
sugerida?
FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT
Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141
Tel.: (38) 4009-5777
 
 FUNDAÇÃO EDUCACIONAL MONTES CLAROS
 FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS
 ENGENHARIA DE COMPUTAÇÃO
EQUIPE:
Nomes: ___________________________________________________________________________
Turma: ______________________ Data: _____ / _____ / ____
ANEXO : PROG4.C
#include "16F877.h"
#device adc=8 // Usa 8 bits do conversor A/D
#use delay(clock=4000000)
#fuses XT,NOWDT,PUT,BROWNOUT,NOLVP,NOPROTECT,NOCPD,NOWRT
#include <stdlib.h>
#include <math.h>
#define AD_RESOLUTION 256
#define AD_REFERENCE 5
void lcd_dado(int dado); // Protótipo da função para escrever dado no display
void lcd_comando(int comando); // Protótipo da função para escrever comando no display
void lcd_inic(); // Protótipo da função para inicializar o display
void main()
{
 unsigned iValorAD;
 float temp;
 
 output_low(PIN_A4); // Desabilita Led's do módulo
 lcd_inic(); // Inicializa o display
 lcd_comando(0x80); // Posiciona cursor na linha 0, coluna 0
 lcd_dado(" TEMPERATURA "); // Exibe mensagem
 
 setup_adc_ports(RA0_ANALOG); // Configura pinos analógicos
 setup_adc(ADC_CLOCK_INTERNAL); // Configura clock de conversão
 // Loop principal
 while(TRUE)
 { 
 set_adc_channel(1); // Seta o canal 1
 delay_ms(500);
 iValorAD= read_adc(); // Converte o canal 1
 // Converte o valor lido em temperatura
 temp = 0.0020*pow((float)iValorAD,2.0) + 0.2338*iValorAD - 4.3410;
 lcd_comando(0xC0); //Posiciona cursor na linha 1, coluna 0
 printf(lcd_dado," %2.0f oC ",temp); // Exibe a temperatura no sensor
 }
}
// Função para escrever dado no display
void lcd_dado(int dado)
{ 
 output_high(PIN_E0);
 output_d(dado);
 delay_us(100);
 output_high(PIN_E1);
 delay_us(100);
 output_low(PIN_E1);
 delay_ms(1);
}
// Função para escrever comando no display
FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT
Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141
Tel.: (38) 4009-5777
 
 FUNDAÇÃO EDUCACIONAL MONTES CLAROS
 FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS
 ENGENHARIA DE COMPUTAÇÃO
void lcd_comando(int comando)
{ 
 output_low(PIN_E0);
 output_d(comando);
 delay_us(100);
 output_high(PIN_E1);
 delay_us(100);
 output_low(PIN_E1);
 delay_ms(1);
}
// Função para inicializar o display
void lcd_inic()
{
 lcd_comando(0x30);
 delay_ms(3);
 lcd_comando(0x30);
 lcd_comando(0x30);
 lcd_comando(0x38);
 lcd_comando(0x01);
 delay_ms(1);
 lcd_comando(0x0C);
 lcd_comando(0x06);
 output_d(0);
}
FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT
Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141
Tel.: (38) 4009-5777
	Fundação Educacional Montes Claros

Continue navegando