Baixe o app para aproveitar ainda mais
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
Compartilhar