Академический Документы
Профессиональный Документы
Культура Документы
Pgina 1 de 10
Introduo a programao
Introduo a programao
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
Pgina 2 de 10
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.
Pgina 3 de 10
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:
Pgina 4 de 10
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.
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
Pgina 5 de 10
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.
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 domsticos
Equipamentos industriais
Equipamentos de
Informtica
CLPs e controladores
industriais
Equipamentos portteis
Pgina 6 de 10
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:
Pgina 7 de 10
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
Pgina 8 de 10
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.
Pgina 9 de 10
Sensores de proximidade
Sondas e termopares
equipamentos de medio
Controle PWM de dispositivos
Iremos simular programas de controle de largura de pulsos. Atravs do canal PWM disponvel no PIC,
podemos controlar diversos equipamentos, tais como: inversores de frequncia, estabilizadores, fonte
chaveada, controle de velocidade de motores DC, entre outras.
Nem nossos laboratrio, iremos controlar a velocidade de giro de uma ventoinha e controlar o
aquecimento de uma caraga resistiva via PWM.
Pgina 10 de 10
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