0 Um pouco de Histria
1.1 Escrevendo programas em C para Microcontroladores
1.2 O papel do Compilador
1.3 Etapas de desenvolvimento e gravao de um programa em C no microcontrolador PIC
1. 0 Kit PICgenios I
1.1 Controle de display LCD
1.2 Varredura de displays de 7 segmentos
1.3 Varredura de teclado matricial
1.4 Acionamento de leds
1.5 canal de comunicao serial RS232 e RS485
1.6 Conversores A/D
1.7 Canal PWM
Um pouco de Histria
A liguagem C foi criada por Dennis Ritchie e Ken Thompson no Laboratrio Bell em 1972. C uma linguagem profissional e
aceita e utilizada na criao de sistemas operacionais, tais como Unix, Windows e Linux.
A linguagem de programao C tornou-se rapidamente uma das mais importantes e populares, principalmente por ser muito
poderosa, porttil e flexvel. Essa flexibilidade tem seus incovenientes de permitir que se criem programas desorganizados e
de difcil compreenso. uma linguagem de programao genrica desenvolvida para ser to eficiente e rpido quanto o
assembly e to estruturada e lgica quanto as linguagens de alto nvel (PASCAL, JAVA, etc).
C foi desenhada para que usurios possa planejar programas mais estruturados e modulares. O resultado um programa
mais legvel e documentado. Os programas em C tendem a ser bastante compactos e de execuo rpida.
A linguagem C habitualmente pe denominada general purpose, pois sua aplicao no se destina a uma rea especfica,
diferente de outras linguagem como COBOL, PASCAL, FORTRAN, entre outras, e esta uma das grandes vantagens, pois
adapta-se ao desenvolvimento de qualquer projeto. A linguagem C utilizada para construo de compiladores de outras
linguagens.
Vamos descrever algums pontos importantes com relao as caractersticas do C:
Rapidez - possui performance semelhante as obtidas pelo assembly, pois permite acesso a memria e manipulaes de bits,
utilizando linguagem de alto nvel.
Simples - possui sintaxe simples, e nmeros de comandos reduzidos, facilitando o aprendizado da linguagem.
Portvel - a linguagem C padronizada (ANSI) no qual define padres para os compiladores. Podemos transportar nossos
programas para outras plataformas e compila-los sem alterao no cdigo.
Popular - internacionalmente conhecida e amplamente utilizada por programadores.
Modular - permite a separao do cdigo em mdulos distintos e independentes, podendo estes serem utilizados em varos
programas.
Alto Nvel - o C considerado linguagem de alto nvel, quando comparada com a linguage Assembly.
Bibliotecas Poderosas - possui diversas bibliotecas e permite a criao de novas pelo programador.
Evoluo - o C deu origem a novas linguagens de programao, como por exemplo o C++.
Sabemos que hoje temos computadores portteis com capacidades de centenas de gigabytes de memria, nesses aspectos
o "tamanho" do cdigo no to importante para o programador. Agora, quando estamos falando de microcontroladores
devemos tomar certas preocauses, pois microcontroladores como: PIC12C508 e PIC16C54 possuem apenas 512byte de
memria de programa e 25 byte de RAM, fato que exige do programador otimizao do cdigo e eficincia na elaborao
lgico do programa.
O papel do Compilador
A nica maneira de se comunicar com o microcontrolador atravs da linguagem de mquina, ou melhor dizendo, atravs de
cdigos de mquinas. Por tanto os programas em C devem necessariamente serem interpretados e compilados a fim de
termos como resultado os comandos de mquinas a serem gravados na memria de programa do microcontrolador.
Existem no mercado diversos compiladores de programas em C para microcontroladores PIC, tais como: HI-TECH PICC,
C18, C30, CCS, SDCC, WIZ-C, mikroC, CC5, PICmicro C, entre outros.
Em nosso curso iremos utilizar a IDE MikroC desenvolvido pela empresa Mikroelektronika (www.mikroe.com), no qual permite
editar, compilar e simular programas em C para microcontroladores PIC da familia 12, 16 e 18.
2 de 11
15/12/2014 00:28
3 de 11
15/12/2014 00:28
Estudaremos com mais detalhes nas unidades seguintes do nosso curso os processos de edio,
compilao e gravao de programas.
Durante nosso curso estudaremos basicamente 4 assuntos:
O microcontrolador PIC - PIC18F452 / 4520
A IDE mikroC - editor, compilador e simulador para PIC 12, 16 e 18 em linguagem C.
Estudo da Linguagem C para programao de microcontroladores PIC
Projetos e aplicaes prticas com PIC18F
Descreveremos agora algumas dos exemplos de programas e aplicaes prticas que sero estudados em nosso curso:
Atravs deste Kit podemos desenvolver os mais variados tipos de programas, tais como:
Controle de displays LCD alfanumrico 16X2 (16 colunas por 2 linhas ) no modo 4 e 8 bits. Os displays LCD so
utilizados nas grandes maioria dos projetos eletrnicos hoje em dia.
4 displays de 7 segmentos acionados por varredura.
Matriz de teclado com 12 teclas.
7 teclas de acesso direto ao pino, sendo que 3 teclas dessas simulam a interrupes externa INT0, INT1 e INT2 do
PIC.
16 leds para controle lgico visual.
2 rels NA/NF para acionamento de cargas externas de 10A / 220V.
RTC - relgio de tempo real com bateria. Atravs desse relgio o programador poder programar temporizadores,
acionamentos programados, calendarios, entre outras aplicaes.
4 de 11
15/12/2014 00:28
Canal Serial RS232: canal para comunicao serial com PC ou outras mquinas
Canal Serial RS232 Emulada: o programador pode emular uma serial via software e ento trabalhar com duas seriais
RS232 no seu projeto.
Canal USB 2.0 para implementaes em projetos que necessitem comunicao USB (necessrio usar PIC18F4550)
Canal PS/2: permite ligar ao microcontrolador teclado de PC ou mouse para otimizar o projeto eletrnico.
Aquecedor via PWM. O aluno poder controlar o canal PWM do PIC simulando na placa.
Sensor de temperatura LM35: o aluno poder realizar ensaios prticos com este sensor de temperatura.
Acionamento de Buzzer. Em alguns projetos indispensvel a utilizao de um alarme sonoro.
Acesso a todas as portas de expanso do microcontrolador PIC, que nos permite ligar outros dispositivos externos ao
Kit.
Ventoinha acionada por PWM. importante pois o aluno poder controlar por PWM a velocidade de giro da ventoinha.
Contadores de Pulsos. Atravs desse circuito poderemos saber a velocidade de giro da ventoinha. (contador RPM).
Memria serial E2PROM via I2C 24C04. Este tipo de memria so muito utilizada em diversos equipamento e
mquinas.
2 trimpots para simulao e programao do canal A/D do PIC (Analgico 1 , e Analgico 2).
Canal de comunicao RS485: Protocolo muito utilizado em redes industriais e em PLC's.
Chave Load/Run para gravao ISP (gravao no prprio circuito).
Microcontrolador PIC18F452 DIP com 32Kbyte de Flash;
Canal de gravao ICSP: Conector para modo debugger e ICD2.
Regulador de tenso.
Chave Dip seletora de funes.
Suporte para displays LCD Grficos 128 x 64 controlador KS107/108.
Suporte para displays LCD Grficos 128 x 64 controlador T6963C.
Suporta os PIC18F4xxxx, PIC18F2XX0 e os PIC16F873/876 de 28 pinos.
Sei que voc deve estar pensando, nossa quanto dispositivo conectado ao microcontrolador. verdade, mas esses
microcontroladores podem realizar muitas outras funes... em outras palavras, esse PIC 10!
Durante nosso treinamento iremos realizar diversas experincias prticas utilizando os recursos da linguagem C junto com
as funes da IDE mikroC.
Vamos detalhar um pouco cada experincia e conhecer um pouco mais sobre o que vamos estudar daqui por diante.
5 de 11
15/12/2014 00:28
Os displays LCD so amplamente utilizados em diversos equipamentos e aparelhos. No decorrer dos estudos iremos explorar
as funes do mikroC em linguagem C para controle de displays LCD. Estudaremos passo a passo como escrever
mensagens de textos nos modos 4 e 8 bits.
Aplicaes com displays LCD:
Equipamentos industriais
Equipamentos
domsticos
Equipamentos de
Informtica
CLPs e controladores
industriais
Equipamentos portteis
6 de 11
15/12/2014 00:28
Para acionar os displays de 7 segmentos, iremos utilizar o sistema de varredura, que permite atravs de um barramento de
dados de 8 bits e mais 4 pinos de acionamento, "escrever" o valor correspondente ao dado que deve ser mostrado no visor.
Aplicaes reais com displays de 7 segmentos:
7 de 11
15/12/2014 00:28
Equipamentos Eletrodomsticos
Aparelhos de som
CLPs
Acionamento de Leds
Os leds so utilizados praticamente em quase todas as aplicaes eletrnicas. Atravs dos leds podemos visualizar o status
de uma mquina, "desenhar" mensagens de textos, iluminar objetos, criar animaes visuais, entre outras aplicaes.
Iremos estudar os recursos de programao em C para controle das portas de sada disponveis no microcontroladores PIC
utilizando os leds como barramento de dados visual.
Letreiros
8 de 11
15/12/2014 00:28
Supervisrios Industriais
Comunicao com computadores PC
Comunicao com outras mquinas
Veremos tambm como ler e interpretar valores analgicos vindo de sensores de temperatua (LM35) utilizando os recurso da
linguagem C.
9 de 11
15/12/2014 00:28
Sensores de proximidade
Sondas e termopares
equipamentos de medio
10 de 11
15/12/2014 00:28
inversores de frequncia
Fontes chaveadas
Drive de Motores
Informaes importantes
Outros exemplos de programas tambm sero tratados e comentados em nosso curso, mas ficaro
como sendo material complementar ao aluno.
Centro de Tecnologia Microgenios - Curso de Microcontroladores PIC - Programao em C
Microgenios 1998 - 2008. Todos os direitos reservados. proibido cpia parcial ou integral desse material sem
prvio aviso. Maiores informaes: suporte@microgenios.com.br
11 de 11
15/12/2014 00:28