Microcontroladores pic

C
Cesar PrimProfissional independente de Varejo

Apostila sobre microcontroladores PIC

MICROCONTROLADORES 
Os microcontroladores são chips inteligentes, que tem um processador, pinos 
de entradas/saídas e memória. Através da programação dos microcontroladores 
podemos controlar suas saídas, tendo como referencia as entradas ou um programa 
interno. 
O que diferencia os diversos tipos de microcontroladores, são as quantidades 
de memória interna (programa e dados), velocidade de processamento, quantidade 
de pinos de entrada/saída (I/O), alimentação, periféricos, arquitetura e set de 
instruções. 
O QUE É O PIC? 
O PIC é um circuito integrado produzido pela Microchip Technology Inc. , que 
pertence a categoria dos microcontroladores, ou seja, um componente integrado que 
em um único dispositivo contem todos os circuitos necessarios para realizar um 
completo sistema digital programavel. O pic pode ser visto externamente como um 
circuito integrado TTL ou CMOS normal, mas internamente dispõe de todos os 
dispositivos típicos de um sistema microprocessado, ou seja: Uma CPU (Central 
Processor Unit ou Unidade de Processamento Central) e sua finalidade é interpretar 
as instruções de programa; Uma memória PROM (Programmable Read Only 
Memory ou Memória Programavel Somente para Leitura) na qual ira memorizar de 
maneira permanente as instruções do programa; Uma memória RAM (Random 
Access Memory ou Memória de Acesso Aleatório) utilizada para memorizar as 
variaveis utilizadas pelo programa; Uma serie de LINHAS de I/O (entrada e saída) 
para controlar dispositivos externos ou receber pulsos de sensores, chaves, etc. ; 
Uma serie de dispositivos auxiliares ao funcionamento, ou seja, gerador de clock, 
bus, contador, etc. A presença de todos estes dispositivos em um espaço 
extremamente pequeno, da ao projetista ampla gama de trabalho e enorme 
vantagem em usar um sistema microprocessado, onde em pouco tempo e com 
poucos componentes externos podemos fazer o que seria oneroso fazer com 
circuitos tradicionais.O PIC esta disponível em uma ampla gama de modelos para 
melhor adaptar-se as exigências de projetos específicos, diferenciando-se pelo 
numero de linha de I/O e pelo conteúdo do dispositivo. Inicia-se com modelo 
pequeno identificado pela sigla PIC12Cxx dotado de 8 pinos, até chegar a modelos 
maiores com sigla PIC17Cxx dotados de 40 pinos. Uma descrição detalhada da 
tipologia do PIC é disponível no site da Microchip ( www.microchip.com ) , onde 
conseguimos encontrar grandes e variadas quantidades de informações técnicas, 
software de apoio, exemplos de aplicações e atualizações disponíveis.
O PROCESSO DE GRAVAÇÃO DE UM PIC 
Para podermos escrever (gravar) em um microcontrolador nós vamos precisar 
de uma gravadora, um software gravador, um compilador e um programa. 
· O programa pode ser escrito em assembler. Nele ira conter as informações de 
configuração do nosso microcontrolador e a lógica do nosso dispositivo. 
Normalmente usa-se o bloco de notas ou o MPLAB IDE (editor e simulador) 
para escrever estes programas. 
· O compilador (mpasmwin – que pode ser encontrado no site 
http://www.microchip.com ) vai transformar as informações geradas pelo programa 
(*.asm) em opcode – códigos operacionais (hexadecimais de 14 bits) e 
transformar em hexadecimal (*.hex). 
· O Software Gravador (icprog – www.ic-prog.com) , vai transmitir as 
informações hexadecimais geradas pelo compilador de forma correta para o 
gravador. 
· O Gravador converte e organiza os sinais gerados pelo computador, para que 
eles sejam armazenados no microcontrolador.
Também podemos simular nosso projeto através do software MPLAB IDE, 
onde podemos monitorar todos os endereços de memória e possibilita o 
acompanhamento de todo o sistema, para identificar e solucionar problemas, o
software pode ser encontrado no endereço abaixo. 
http://www.microchip.com/1010/pline/tools/picmicro/devenv/mplabi/mplab6/index.htm 
ESCREVENDO UM PROGRAMA 
Fazem parte de um programa para nosso microcontrolador: o tipo do 
processador (ex. p16f84a), arquivo contendo o set de instruções – comandos (ex. 
p16f84.inc), o tipo de oscilador e recursos de gravação, as portas que serão de 
entrada/saída, as variaveis do sistema, os endereços de memória que cada parte do 
programa vai utilizar, e o mais importante: A lógica de programação. 
Para aprender a programar no pic, não deixe de visitar esta excelente pagina: 
http://tanzilli.com/pbe/brasiliano/index.htm( em português ) ou baixe o curso em 
http://www.mecatrom.cjb.net/ , na seção de downloads.
Segue abaixo um exemplo comentado de programa: 
PROCESSOR 16F84 ; TIPO DE PROCESSADOR 
RADIX DEC ; NUMEROS SEM ESPECIFICAÇÃO SERÃO 
DECIMAIS 
INCLUDE "P16F84.INC" ; INVOCA SET DE INSTRUÇÕES 
__CONFIG 0x3FF1 ; CONFIGURA A INCICIALIZAÇÃO DO OSCILADOR 
LED EQU 0 ; DEFINIÇÃO INTERNA DO PROGRAMA (LED=0) 
ORG 0x0C ; LUGAR DA MEMORIA ONDE FICARAM AS 
VARIAVEIS 
Count RES 2 ; VARIAVEL E TAMANHO 
ORG 0x00 ; LUGAR DA MEMORIA ONDE DO PONTO DE RESET 
bsf STATUS,RP0 ;ACESSA O BANCO “0” DE NDEREÇOS/COMANDOS 
movlw B'00011111' ;ADICIONA ESTE VALOR PARA WORKS (W) 
movwf TRISA ;DEFINE AS ENTRADAS/SAIDAS DO PORTA 
movlw B'11111110' ;ADICIONA ESTE VALOR PARA WORKS (W) 
movwf TRISB ;DEFINE AS ENTRADAS/SAIDAS DO PORTB 
bcf STATUS,RP0 ; VOLTA P/ BANCO “1” DE ENDEREÇOS/COMANDOS 
bsf PORTB,LED ;DESLIGA O PINO 6 (RB0) DO CI, APAGANDO O LED 
MainLoop ;DECLARAÇÃO DE ROTINA PRINCIPAL 
call Delay ;CHAMADA DE ROTINA DE TEMPO 
btfsc PORTB,LED ;TESTA SE O LED ESTA ACESO (1 OU 0) 
goto SetToZero ;SE APAGADO ENTÃO EXECUTA ESTA ROTINA 
bsf PORTB,LED ;SE NÃO, APAGA O LED (RBO = 0) 
goto MainLoop ;VOLTA PARA A ROTINA PRINCIPAL 
SetToZero ;ROTINA QUE ACENDE O LED 
bcf PORTB,LED ;COMANDO QUE ACENDE O LED 
goto MainLoop ;VOLTA PARA ROTINA PRINCIPAL 
Delay ;ROTINA DE TEMPO 
clrf Count ;LIMPA COUNT 
clrf Count+1 ;LIMPA COUNT+1 
DelayLoop ;ROTINA DE LOOP DE TEMPO 
decfsz Count,1 ;DECREMENTA E PULA A PROXIMA LINHA SE 0 
goto DelayLoop ;VOLTA PARA O LOOP DE TEMPO 
decfsz Count+1,1 ;DECREMENTA E PULA A PROXIMA LINHA SE 0 
goto DelayLoop ; VOLTA PARA O LOOP DE TEMPO 
return ;VOLTA PARA ONDE CHAMOU A ROTINA 
END ;FINALIZA O PROGRAMA
Para as demais experiências com microcontroladores pic, recomendo a compra 
dos seguintes materiais : 
2 capacitor 33pF (necessario para a geração de clock) 
1 cristal 4 MHZ (necessario para a geração de clock) 
6 resistor 10K (5 de entrada para o PORTA + 1 para o RESET) 
8 resistor 1K (para o PORTB) 
6 Chave touch 4mm (5 de entrada para o PORTA + 1 para o RESET) 
8 led vermelho (para poder visualizar o estado do PORTB) 
1 soquete dip torneado 18 pinos (p/ deixar fixo no CI do PIC, evitando quebra) 
1 microcontrolador PIC16F84A (ótimo para começar !!!!) 
O COMPILADOR – MPASMWIN 
O compilador vai transformar o código fonte do programa em novas instruções 
seqüenciais para o microcontrolador. O mpasmwin encontra-se em versões para 
windowsn (mpasmwin) e para ms-dos (mpasmdos), pode se baixado em 
http://www.microchip.com/1010/pline/tools/archive/other/61/index.htm , 
www.microchip.com ou junto com o MPLAB IDE .
Cada uma das instruções identificara precisamente a função basica que o PIC 
ira executar. Onde a instrução é representada por um código operativo (do ingles 
operation code ou abreviadamente opcode) podemos memorizar 14 bits em cada 
locação da memória EEPROM. Esta memória no PIC16C84 dispões de 1024 
locações e cada uma devera conter uma só instrução. Um exemplo de opcode em 
notação binaria esta escrito a seguir: 00 0001 0000 0000B 
É mais provavel que um opcode venha representado na notação hexadecimal 
ou seja: 0100H 
Este código, completamente sem sentido para nós humanos, é o que o PIC esta 
preparada para entender. Para facilitar a compreensão ao programador, se recorre a 
um instrumento e convenção para tornar a instrução mais compreensível. 
A primeira convenção é a que associa o opcode (um total de 35 para o 
PIC16C84) a uma sigla mnemônica, ou seja uma inicial que seja facil de recordar o 
significado da instrução. 
Voltando ao nosso exemplo o opcode 0100H corresponde a instrução 
mnemônica CLRWque é a forma abreviada da instrução CLEAR WREGISTER, 
ou seja, zere o registro W. Estes códigos podem ser encontrados dentro do arquivo 
de biblioteca do compilador, que é invocado pelo programa. No caso este arquivo é 
o P16C84 (pela linha include “P16C84.INC).
O SOFTWARE GRAVADOR - ICPROG 
Através do ic-prog (http://www.ic-prog.com/icprog105C.zip ou www.ic-prog. 
com ) vamos transferir o arquivo gerado pelo compilador (que agora é 
hexadecimal - *.hex) para a nossa gravadora. Existem varios tipos de gravadoras 
compatíveis com o icprog. No nosso caso vamos utilizar o tipo JDM. Para isso va 
ao menu configurações e na opção Hardware (ou pressione F3) e configure o 
programa como a figura abaixo (atenção, para os sistema 2000/NT/XP, leia o texto 
em negrito após a figura) : 
No menu configurações, opções temos a possibilidade de substituir o 
idioma para português (guia linguagem) e de ativarmos o suporte para
windows NT/2000/XP. Para isso você vai precisar baixar também o arquivo 
“icprog.sys” ( http://www.ic-prog.com/icprog_driver.zip ou www.ic-prog.com ) 
para a pasta de instalação do icprog e em seguida salvar e sair. Reinicie o 
programa e va para o menu configuração e em seguida hardware (F3) e 
confirme a tela a cima. 
O GRAVADOR DE PIC´S 
O gravador é o hardware, que vai converter os impulsos eletrônicos ativados 
pelo software gravador (ic-prog) na porta seriais/paralela para os pinos do nosso 
microcontrolador. Esta gravação é feita de forma serial, ou seja após codificar os 
comandos em números hexadecimais, agora transcodificamo-os em impulsos 
elétricos seriais para a gravadora, que vai atingir os níveis de tensões necessarios 
para possibilitar a transferência dos códigos para dentro da memória de dados do 
PIC. 
O princípio de gravação é o mesmo para todas as gravadoras, o que muda é o 
hardware que o desenvolvedor vai utilizar para garantir segurança para seu 
computador, seu microcontrolador e sua gravadora. 
Em algumas gravadoras temos a fonte na própria placa e em outras 
utilizaremos a tensão existente na porta de comunicação do micro (em geral, uns 
15mA). Normalmente em uma fonte para a gravadora temos a ponte retificadora, 
um capacitor de 1000uF-eletrolítico, um de 100nF-eletrolítico, em seguida um 
LM7805 (TO-220) e um capacitor de 100uF-eletrolítico. Portanto, durante o 
processo de gravação o pic deve ser alimentado com +5Vcc e ter o GND conectado. 
Em determinado momento da gravação precisaremos de um pulso entre 13Vcc 
e 15Vcc no pino 5 - MCLR (Memory Clear), portanto também teremos uma outra 
fonte para gerar esta tensão. 
O pino SDA (RB7) transmite e recebe dados. É por este pino que os dados a 
serem gravados são inseridos ou lidos, conforme o comando selecionado. 
O pino SCL (RB6) é o clock de sincronismo das informações. 
O grande segredo é saber onde enviar estes pulsos (veja a tabela abaixo). 
PINO DAS SCL MCLR VCC GND 
SOQUETE 8 7 6 4 1 8 
SOQUETE 18 13 12 4 14 5 
SOQUETE 28 28 27 1 20 8 
SOQUETE 40 40 39 1 11/32 12/31
Atenção, apesar dos PIC´s serem praticamente imunes a energia estatica e 
muito resistentes para qualquer ambiente, nunca devemos inserir ou retirar o 
microcontrolador com a gravadora ligada ou conectada. Para preservação da porta 
de comunicação com o pc, não devemos remover o cabo durante o processo de 
gravação ou com o ic-prog aberto. É recomendavel que você mantenha sempre o 
microcontrolador em um porta soquete (mesa para CI) com furos torneados, 
aumentando assim a vida útil do microcontrolador. 
EXEMPLO 1 
Gravador exclusivo para pic´s de 18 pinos (PIC16C84, PIC16f84, PIC16F84A, 
PIC16F628, etc ). Visite a ótima pagina http://www.furb.br/~mw/pratica/, para 
mais informações. Este é o gravador que eu uso diariamente e recomendo-o. 
Ele obtém os 13VCC para o MCLR de um diodo zener e os 5VCC de 
alimentação de um 7805. Os outros zeners (5,6V) são para controlar a tenção nos 
pinos de SDA e SDL. Este modelo, não precisa de fonte externa. 
O software a ser utilizado é o IC-PROG ( http://www.ic-prog.com/ ), com as 
configurações ja mencionadas a cima. 
2 zeners 5v6 
4 res 10k 
1 7805 (formato transistor - BC) 
1 1n4148 
1 cap eletrolitico 22uF/16v 
1 cap eletrolítico 470uF/16v 
1 zener 13V 
1 cap 100nF cerâmico 
1 soquete dip18 torneado 
1 conector DB9 fêmea + capa 
1,5 mts de cabo 5 vias com malha 
1 kit parafusos espaçadores (base do gravador) 
1 PIC 16f84A - 4p
Microcontroladores pic
EXEMPLO 2 
Este modelo é um dos mais usados nos EUA, é conhecido como JDM. 
Podemos dizer que muitos dos gravadores existentes foram baseados neste modelo. 
Na pagina oficial, você vai encontrar a layout para placa de circuito impresso e 
muitas outras informações (em inglês, é claro). 
http://www.jdm.homepage.dk/ 
http://www.jdm.homepage.dk/newpic.htm 
Este gravador é alimentado por uma entrada RS-232 e trabalha com níveis de 
tensões próprios desta configuração. O nível de 14VCC é conseguido através de um 
zener de 8,2V e um ganho de 3V com o transistor. Ele grava PIC12C5XX, 12C67X, 
24CXX, 16C55X, 16C61, 16C62X, 16C71, 16C71X, 16C8X, 16F8X. A voltagem 
do circuito é estabilizada com diodos zener. Este modelo não precisa de fonte 
externa e pode ser utilizado para gravação in circuit (sem remover o pic do 
circuito). Observe que ele trabalha com a antiga porta serial de 25 pinos, para 
utiliza-la em micros novos com o conector DB9 Femea (igual do mouse) utilize: 
TXD (3), GND (5), DTR (4), CTS (8), RQS (7). 
O software a ser utilizado pode ser o IC-PROG ( http://www.ic-prog.com/ ), 
ou um outro indicado pelo desenvolvedor , consulte o site oficial do gravador e do 
ic-prog, para maiores detalhes.
R1 10K Resistor 
R2 1.5K Resistor 
D2 5.1V/0.5W Zener 
D3 1N4148 ou 1N4448 Diodo 
D4 1N4148 ou 1N4448 Diodo 
D5 1N4148 ou 1N4448 Diodo 
D6 8.2V/0.5W Zener 
D7 1N4148 ou 1N4448 Diodo 
C2 100μF/25V Capacitor eletrolitico 
C3 22μF/16V ou 47μF/6.3V Capacitor tantalo 
Q1 BC547B Transistor NPN 
Q2 BC547B Transistor NPN 
P1 DS25 (female) 25 pol DSUB connector 
P2 Conector Conector para programação no circuito 
Não esqueça dos 2 jumpers em baixo da placa
EXEMPLO 3 
Um outro bom exemplo de gravador pode ser obtido em: 
http://www.semis.demon.co.uk/ 
http://www.semis.demon.co.uk/uJDM/uJDMmain.htm 
Ele foi desenvolvido com base no JDM original, porém tem seu 
funcionamento simplificado. É conhecido como micro JDM (uJDM). 
TODOS OS PROGRAMAS, AQUI MENSIONADOS SÃO “FREEWARE”, OU 
SEJA, POSSUEM LIVRE DISTRIBUIÇÃO. NÃO ME RESPONSABILIZO POR 
QUALQUER DANO CAUSADO EM SEU EQUIPAMENTO. 
NOSSA INTENÇÃO NÃO FOI A DE APROFUNDAR NAS TÉCNICAS DE 
PROGRAMAÇÃO DE MICROCONTROLADORES, MAS SIM CATIVAR O 
INTERESSE DO LEITOR PELO FACINATE MUNDO DA AUTOMAÇÃO, 
TECNOLOGIA E MICROCONTROLADORES. 
ABRAÇOS, 
PEDRO V. T. TREVISAN 
(pvttrevisan@ig.com.br) 
VISITE MEU SITE 
http://www.mecatrom.cjb.net/

Recomendados

Apresentação pic por
Apresentação picApresentação pic
Apresentação picSaddam Lande
1.7K visualizações81 slides
Microcontroladores PIC - Introdução por
Microcontroladores PIC - IntroduçãoMicrocontroladores PIC - Introdução
Microcontroladores PIC - IntroduçãoFabio Souza
7.4K visualizações29 slides
Programando microcontroladores pic março por
Programando microcontroladores pic marçoProgramando microcontroladores pic março
Programando microcontroladores pic marçoCristiano Correa Dos Santos
3.3K visualizações222 slides
10 apostila microcontroladores por
10  apostila microcontroladores10  apostila microcontroladores
10 apostila microcontroladoresAlyson Cavalcante
15.1K visualizações267 slides
Seminario pic por
Seminario picSeminario pic
Seminario picRômulo Jales
1.9K visualizações44 slides
Programação básica de microcontroladores por
Programação básica de microcontroladoresProgramação básica de microcontroladores
Programação básica de microcontroladoresDanilo Morais Pagano
30.5K visualizações60 slides

Mais conteúdo relacionado

Mais procurados

Curso microcontroladores pic no mp lab 8 por
Curso microcontroladores pic no mp lab 8Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8RogerMasters
803 visualizações64 slides
Pic apostila por
Pic apostilaPic apostila
Pic apostilamoschen
1.1K visualizações33 slides
Pic18xx por
Pic18xxPic18xx
Pic18xxmoschen
514 visualizações20 slides
Pic aula1 por
Pic   aula1Pic   aula1
Pic aula1profwtelles
42 visualizações38 slides
2 gravação por
2 gravação2 gravação
2 gravaçãoAnderson Inácio Morais
2.3K visualizações7 slides
Microcontroladores PIC - Entradas e saídas Digitais por
Microcontroladores PIC - Entradas e saídas DigitaisMicrocontroladores PIC - Entradas e saídas Digitais
Microcontroladores PIC - Entradas e saídas DigitaisFabio Souza
35.2K visualizações15 slides

Mais procurados(20)

Curso microcontroladores pic no mp lab 8 por RogerMasters
Curso microcontroladores pic no mp lab 8Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8
RogerMasters803 visualizações
Pic apostila por moschen
Pic apostilaPic apostila
Pic apostila
moschen1.1K visualizações
Pic18xx por moschen
Pic18xxPic18xx
Pic18xx
moschen514 visualizações
Pic aula1 por profwtelles
Pic   aula1Pic   aula1
Pic aula1
profwtelles42 visualizações
Microcontroladores PIC - Entradas e saídas Digitais por Fabio Souza
Microcontroladores PIC - Entradas e saídas DigitaisMicrocontroladores PIC - Entradas e saídas Digitais
Microcontroladores PIC - Entradas e saídas Digitais
Fabio Souza35.2K visualizações
G20 arm por Mário Sergio
G20 armG20 arm
G20 arm
Mário Sergio363 visualizações
Resumo linguagem c para microcontroladores PIC usando MikroC por Fabio Souza
Resumo linguagem c para microcontroladores PIC usando MikroCResumo linguagem c para microcontroladores PIC usando MikroC
Resumo linguagem c para microcontroladores PIC usando MikroC
Fabio Souza37.2K visualizações
Interrupts and the timer por Mayara Mônica
Interrupts and the timerInterrupts and the timer
Interrupts and the timer
Mayara Mônica1.3K visualizações
Aula 1 - Assembly - 8051 por Thiago Oliveira
Aula 1 - Assembly - 8051Aula 1 - Assembly - 8051
Aula 1 - Assembly - 8051
Thiago Oliveira12.6K visualizações
Clp varios modelos por detectfelix
Clp varios modelosClp varios modelos
Clp varios modelos
detectfelix7.1K visualizações
15507933 apostila-de-cl ps-ladder por elkbongg
15507933 apostila-de-cl ps-ladder15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder
elkbongg429 visualizações
Microcontroladores pic ling c unicamp por Francisco Fambrini
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicamp
Francisco Fambrini1.4K visualizações
Curso clp siemens por admilson bezerra
Curso clp siemensCurso clp siemens
Curso clp siemens
admilson bezerra3.5K visualizações
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM... por Fabio Souza
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados -  TPM - TIM...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados -  TPM - TIM...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - TPM - TIM...
Fabio Souza415 visualizações
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener... por Fabio Souza
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados- GPIO (Gener...
Fabio Souza369 visualizações
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ... por Fabio Souza
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...
Microcontroladores ARM Cortex M0+ Aplicação em robôs autoguiados - Conversor ...
Fabio Souza363 visualizações
Material Auxiliar Para Curso BáSico Msp430 1 A 54 por Texas Instruments
Material Auxiliar Para Curso BáSico Msp430   1 A 54Material Auxiliar Para Curso BáSico Msp430   1 A 54
Material Auxiliar Para Curso BáSico Msp430 1 A 54
Texas Instruments5K visualizações

Similar a Microcontroladores pic

Corpo relatorio por
Corpo relatorioCorpo relatorio
Corpo relatorioEduardo Greffner
1.4K visualizações39 slides
Microcontroladores x microprocessadores por
Microcontroladores x microprocessadoresMicrocontroladores x microprocessadores
Microcontroladores x microprocessadoresmiroslayer
8.1K visualizações16 slides
201728 22259 manual_picgenios por
201728 22259 manual_picgenios201728 22259 manual_picgenios
201728 22259 manual_picgeniosBárbara Gama
292 visualizações28 slides
Microcontroladores PIC.pptx por
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptxfmtpereira
22 visualizações45 slides
Arquitetura de Microcontroladores Microchip PIC por
Arquitetura de Microcontroladores Microchip PICArquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PICAlexandre Brandão Lustosa
1.6K visualizações60 slides
Introducao clp por
Introducao clpIntroducao clp
Introducao clpCarlos Vanti
313 visualizações25 slides

Similar a Microcontroladores pic(20)

Corpo relatorio por Eduardo Greffner
Corpo relatorioCorpo relatorio
Corpo relatorio
Eduardo Greffner1.4K visualizações
Microcontroladores x microprocessadores por miroslayer
Microcontroladores x microprocessadoresMicrocontroladores x microprocessadores
Microcontroladores x microprocessadores
miroslayer8.1K visualizações
201728 22259 manual_picgenios por Bárbara Gama
201728 22259 manual_picgenios201728 22259 manual_picgenios
201728 22259 manual_picgenios
Bárbara Gama292 visualizações
Microcontroladores PIC.pptx por fmtpereira
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptx
fmtpereira22 visualizações
Arquitetura de Microcontroladores Microchip PIC por Alexandre Brandão Lustosa
Arquitetura de Microcontroladores Microchip PICArquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PIC
Alexandre Brandão Lustosa1.6K visualizações
Introducao clp por Carlos Vanti
Introducao clpIntroducao clp
Introducao clp
Carlos Vanti313 visualizações
Introducao clp por Denilson Vitorino
Introducao clpIntroducao clp
Introducao clp
Denilson Vitorino732 visualizações
Apostila de pic basic por Cláudia Tavares
Apostila de pic basicApostila de pic basic
Apostila de pic basic
Cláudia Tavares2.7K visualizações
Apostiladepic basic-110602153048-phpapp02 por Yury Pontes
Apostiladepic basic-110602153048-phpapp02Apostiladepic basic-110602153048-phpapp02
Apostiladepic basic-110602153048-phpapp02
Yury Pontes104 visualizações
Módulo 5 Arquitetura de Computadores por Luis Ferreira
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de Computadores
Luis Ferreira4.6K visualizações
1 história e características dos microcontroladores pic por Anderson Inácio Morais
1 história e características dos microcontroladores pic1 história e características dos microcontroladores pic
1 história e características dos microcontroladores pic
Anderson Inácio Morais12.6K visualizações
Pcs2031 projeto01 introducao_pic_v4 por Flávia Martins
Pcs2031 projeto01 introducao_pic_v4Pcs2031 projeto01 introducao_pic_v4
Pcs2031 projeto01 introducao_pic_v4
Flávia Martins354 visualizações
Basico sobre clp por Claudio Arkan
Basico sobre clpBasico sobre clp
Basico sobre clp
Claudio Arkan3.1K visualizações
Pic16f628a por gilsonvtv
Pic16f628aPic16f628a
Pic16f628a
gilsonvtv268 visualizações
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM por zelmasantos2015
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEMMICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM
MICROCONTROLADORES E PLATAFORMAS DE PROTOTIPAGEM
zelmasantos20151.6K visualizações
Gerenciador do atmega16 por Gabriel Lima
Gerenciador do atmega16Gerenciador do atmega16
Gerenciador do atmega16
Gabriel Lima732 visualizações
Ref site pic_bom por ultraman ultra
Ref site  pic_bomRef site  pic_bom
Ref site pic_bom
ultraman ultra226 visualizações
Introdução ao Arduino por elliando dias
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
elliando dias3.7K visualizações

Último

ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdf por
ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdfATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdf
ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdfsoyelax352
5 visualizações2 slides
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ... por
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...mariaclarinhaa2723
15 visualizações4 slides
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docx por
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docxATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docx
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docxloporo7100
5 visualizações2 slides
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra... por
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...vihoj47492
13 visualizações1 slide
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdf por
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdfATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdf
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdfloporo7100
7 visualizações6 slides
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023 por
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023AssessoriaAcademica9
12 visualizações4 slides

Último(20)

ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdf por soyelax352
ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdfATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdf
ATIVIDADE 1 - CIÊNCIAS POLÍTICAS 542023 .pdf
soyelax3525 visualizações
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ... por mariaclarinhaa2723
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...
Olá, acadêmico(a)! O objetivo básico dos demonstrativos contábeis é fornecer ...
mariaclarinhaa272315 visualizações
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docx por loporo7100
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docxATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docx
ATIVIDADE 1 - GESTÃO DE ALIMENTOS E BEBIDAS.docx
loporo71005 visualizações
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra... por vihoj47492
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...
O diagrama trajeto passo, também conhecido como diagrama sequencial ou diagra...
vihoj4749213 visualizações
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdf por loporo7100
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdfATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdf
ATIVIDADE 3 - CIENCIAS DO AMBIENTE - 542023.pdf
loporo71007 visualizações
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023 por AssessoriaAcademica9
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023
AE03 - CIRCUITOS ELETRICOS UNICESUMAR 54/2023
AssessoriaAcademica912 visualizações
ATIVIDADE 3 - TECNOLOGIAS DE CONSTRUÇÃO - 542023.pdf por soyelax352
ATIVIDADE 3 - TECNOLOGIAS DE CONSTRUÇÃO - 542023.pdfATIVIDADE 3 - TECNOLOGIAS DE CONSTRUÇÃO - 542023.pdf
ATIVIDADE 3 - TECNOLOGIAS DE CONSTRUÇÃO - 542023.pdf
soyelax3525 visualizações
Boletim Informativo Novembro 2023.pdf por Ferreira Lapa
Boletim Informativo Novembro 2023.pdfBoletim Informativo Novembro 2023.pdf
Boletim Informativo Novembro 2023.pdf
Ferreira Lapa24 visualizações
A Ciência Contábil desempenha um papel fundamental no mundo dos negócios, for... por PrimeEducacional
A Ciência Contábil desempenha um papel fundamental no mundo dos negócios, for...A Ciência Contábil desempenha um papel fundamental no mundo dos negócios, for...
A Ciência Contábil desempenha um papel fundamental no mundo dos negócios, for...
PrimeEducacional33 visualizações
Dia Nacional do Campo Limpo 2023 celebra um marco: desde 2002, agricultores, ... por AaAssessoriadll
Dia Nacional do Campo Limpo 2023 celebra um marco: desde 2002, agricultores, ...Dia Nacional do Campo Limpo 2023 celebra um marco: desde 2002, agricultores, ...
Dia Nacional do Campo Limpo 2023 celebra um marco: desde 2002, agricultores, ...
AaAssessoriadll11 visualizações
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf por soyelax352
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdfATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf
soyelax3529 visualizações
UNID 6 – Associação de impedâncias 1 – Calcule o valor da impedância equivale... por vihoj47492
UNID 6 – Associação de impedâncias 1 – Calcule o valor da impedância equivale...UNID 6 – Associação de impedâncias 1 – Calcule o valor da impedância equivale...
UNID 6 – Associação de impedâncias 1 – Calcule o valor da impedância equivale...
vihoj474925 visualizações
ATIVIDADE 3 - AGRON - DESENHO TECNICO E CONSTRUÇÕES RURAIS - 542023.pdf por loporo7100
ATIVIDADE 3 - AGRON - DESENHO TECNICO E CONSTRUÇÕES RURAIS - 542023.pdfATIVIDADE 3 - AGRON - DESENHO TECNICO E CONSTRUÇÕES RURAIS - 542023.pdf
ATIVIDADE 3 - AGRON - DESENHO TECNICO E CONSTRUÇÕES RURAIS - 542023.pdf
loporo710013 visualizações
Instrumentação e Controle.pdf por AndrSilva113556
Instrumentação e Controle.pdfInstrumentação e Controle.pdf
Instrumentação e Controle.pdf
AndrSilva11355620 visualizações
Questão 1 LISTE e EXPLIQUE as sete perdas na construção civil. Questão 2 ARGU... por vihoj47492
Questão 1 LISTE e EXPLIQUE as sete perdas na construção civil. Questão 2 ARGU...Questão 1 LISTE e EXPLIQUE as sete perdas na construção civil. Questão 2 ARGU...
Questão 1 LISTE e EXPLIQUE as sete perdas na construção civil. Questão 2 ARGU...
vihoj474926 visualizações
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023 por AcademiaDL
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
AcademiaDL15 visualizações
2) Segundo, você deverá inserir imagens e explicar sobre dois exemplos de dow... por PrimeEducacional
2) Segundo, você deverá inserir imagens e explicar sobre dois exemplos de dow...2) Segundo, você deverá inserir imagens e explicar sobre dois exemplos de dow...
2) Segundo, você deverá inserir imagens e explicar sobre dois exemplos de dow...
PrimeEducacional27 visualizações
MAPA - EDUCAÇÃO, DIREITOS HUMANOS E CIDADANIA - 542023.pdf por wogafib965
MAPA - EDUCAÇÃO, DIREITOS HUMANOS E CIDADANIA - 542023.pdfMAPA - EDUCAÇÃO, DIREITOS HUMANOS E CIDADANIA - 542023.pdf
MAPA - EDUCAÇÃO, DIREITOS HUMANOS E CIDADANIA - 542023.pdf
wogafib9656 visualizações
ATIVIDADE 3 - ESTRUTURAS DE CONCRETO I - 542023.pdf por soyelax352
ATIVIDADE 3 - ESTRUTURAS DE CONCRETO I - 542023.pdfATIVIDADE 3 - ESTRUTURAS DE CONCRETO I - 542023.pdf
ATIVIDADE 3 - ESTRUTURAS DE CONCRETO I - 542023.pdf
soyelax3525 visualizações
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf por loporo7100
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdfATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf
ATIVIDADE 3 - NIVELAMENTO DE MATEMÁTICA - 542023.pdf
loporo71006 visualizações

Microcontroladores pic

  • 1. MICROCONTROLADORES Os microcontroladores são chips inteligentes, que tem um processador, pinos de entradas/saídas e memória. Através da programação dos microcontroladores podemos controlar suas saídas, tendo como referencia as entradas ou um programa interno. O que diferencia os diversos tipos de microcontroladores, são as quantidades de memória interna (programa e dados), velocidade de processamento, quantidade de pinos de entrada/saída (I/O), alimentação, periféricos, arquitetura e set de instruções. O QUE É O PIC? O PIC é um circuito integrado produzido pela Microchip Technology Inc. , que pertence a categoria dos microcontroladores, ou seja, um componente integrado que em um único dispositivo contem todos os circuitos necessarios para realizar um completo sistema digital programavel. O pic pode ser visto externamente como um circuito integrado TTL ou CMOS normal, mas internamente dispõe de todos os dispositivos típicos de um sistema microprocessado, ou seja: Uma CPU (Central Processor Unit ou Unidade de Processamento Central) e sua finalidade é interpretar as instruções de programa; Uma memória PROM (Programmable Read Only Memory ou Memória Programavel Somente para Leitura) na qual ira memorizar de maneira permanente as instruções do programa; Uma memória RAM (Random Access Memory ou Memória de Acesso Aleatório) utilizada para memorizar as variaveis utilizadas pelo programa; Uma serie de LINHAS de I/O (entrada e saída) para controlar dispositivos externos ou receber pulsos de sensores, chaves, etc. ; Uma serie de dispositivos auxiliares ao funcionamento, ou seja, gerador de clock, bus, contador, etc. A presença de todos estes dispositivos em um espaço extremamente pequeno, da ao projetista ampla gama de trabalho e enorme vantagem em usar um sistema microprocessado, onde em pouco tempo e com poucos componentes externos podemos fazer o que seria oneroso fazer com circuitos tradicionais.O PIC esta disponível em uma ampla gama de modelos para melhor adaptar-se as exigências de projetos específicos, diferenciando-se pelo numero de linha de I/O e pelo conteúdo do dispositivo. Inicia-se com modelo pequeno identificado pela sigla PIC12Cxx dotado de 8 pinos, até chegar a modelos maiores com sigla PIC17Cxx dotados de 40 pinos. Uma descrição detalhada da tipologia do PIC é disponível no site da Microchip ( www.microchip.com ) , onde conseguimos encontrar grandes e variadas quantidades de informações técnicas, software de apoio, exemplos de aplicações e atualizações disponíveis.
  • 2. O PROCESSO DE GRAVAÇÃO DE UM PIC Para podermos escrever (gravar) em um microcontrolador nós vamos precisar de uma gravadora, um software gravador, um compilador e um programa. · O programa pode ser escrito em assembler. Nele ira conter as informações de configuração do nosso microcontrolador e a lógica do nosso dispositivo. Normalmente usa-se o bloco de notas ou o MPLAB IDE (editor e simulador) para escrever estes programas. · O compilador (mpasmwin – que pode ser encontrado no site http://www.microchip.com ) vai transformar as informações geradas pelo programa (*.asm) em opcode – códigos operacionais (hexadecimais de 14 bits) e transformar em hexadecimal (*.hex). · O Software Gravador (icprog – www.ic-prog.com) , vai transmitir as informações hexadecimais geradas pelo compilador de forma correta para o gravador. · O Gravador converte e organiza os sinais gerados pelo computador, para que eles sejam armazenados no microcontrolador.
  • 3. Também podemos simular nosso projeto através do software MPLAB IDE, onde podemos monitorar todos os endereços de memória e possibilita o acompanhamento de todo o sistema, para identificar e solucionar problemas, o
  • 4. software pode ser encontrado no endereço abaixo. http://www.microchip.com/1010/pline/tools/picmicro/devenv/mplabi/mplab6/index.htm ESCREVENDO UM PROGRAMA Fazem parte de um programa para nosso microcontrolador: o tipo do processador (ex. p16f84a), arquivo contendo o set de instruções – comandos (ex. p16f84.inc), o tipo de oscilador e recursos de gravação, as portas que serão de entrada/saída, as variaveis do sistema, os endereços de memória que cada parte do programa vai utilizar, e o mais importante: A lógica de programação. Para aprender a programar no pic, não deixe de visitar esta excelente pagina: http://tanzilli.com/pbe/brasiliano/index.htm( em português ) ou baixe o curso em http://www.mecatrom.cjb.net/ , na seção de downloads.
  • 5. Segue abaixo um exemplo comentado de programa: PROCESSOR 16F84 ; TIPO DE PROCESSADOR RADIX DEC ; NUMEROS SEM ESPECIFICAÇÃO SERÃO DECIMAIS INCLUDE "P16F84.INC" ; INVOCA SET DE INSTRUÇÕES __CONFIG 0x3FF1 ; CONFIGURA A INCICIALIZAÇÃO DO OSCILADOR LED EQU 0 ; DEFINIÇÃO INTERNA DO PROGRAMA (LED=0) ORG 0x0C ; LUGAR DA MEMORIA ONDE FICARAM AS VARIAVEIS Count RES 2 ; VARIAVEL E TAMANHO ORG 0x00 ; LUGAR DA MEMORIA ONDE DO PONTO DE RESET bsf STATUS,RP0 ;ACESSA O BANCO “0” DE NDEREÇOS/COMANDOS movlw B'00011111' ;ADICIONA ESTE VALOR PARA WORKS (W) movwf TRISA ;DEFINE AS ENTRADAS/SAIDAS DO PORTA movlw B'11111110' ;ADICIONA ESTE VALOR PARA WORKS (W) movwf TRISB ;DEFINE AS ENTRADAS/SAIDAS DO PORTB bcf STATUS,RP0 ; VOLTA P/ BANCO “1” DE ENDEREÇOS/COMANDOS bsf PORTB,LED ;DESLIGA O PINO 6 (RB0) DO CI, APAGANDO O LED MainLoop ;DECLARAÇÃO DE ROTINA PRINCIPAL call Delay ;CHAMADA DE ROTINA DE TEMPO btfsc PORTB,LED ;TESTA SE O LED ESTA ACESO (1 OU 0) goto SetToZero ;SE APAGADO ENTÃO EXECUTA ESTA ROTINA bsf PORTB,LED ;SE NÃO, APAGA O LED (RBO = 0) goto MainLoop ;VOLTA PARA A ROTINA PRINCIPAL SetToZero ;ROTINA QUE ACENDE O LED bcf PORTB,LED ;COMANDO QUE ACENDE O LED goto MainLoop ;VOLTA PARA ROTINA PRINCIPAL Delay ;ROTINA DE TEMPO clrf Count ;LIMPA COUNT clrf Count+1 ;LIMPA COUNT+1 DelayLoop ;ROTINA DE LOOP DE TEMPO decfsz Count,1 ;DECREMENTA E PULA A PROXIMA LINHA SE 0 goto DelayLoop ;VOLTA PARA O LOOP DE TEMPO decfsz Count+1,1 ;DECREMENTA E PULA A PROXIMA LINHA SE 0 goto DelayLoop ; VOLTA PARA O LOOP DE TEMPO return ;VOLTA PARA ONDE CHAMOU A ROTINA END ;FINALIZA O PROGRAMA
  • 6. Para as demais experiências com microcontroladores pic, recomendo a compra dos seguintes materiais : 2 capacitor 33pF (necessario para a geração de clock) 1 cristal 4 MHZ (necessario para a geração de clock) 6 resistor 10K (5 de entrada para o PORTA + 1 para o RESET) 8 resistor 1K (para o PORTB) 6 Chave touch 4mm (5 de entrada para o PORTA + 1 para o RESET) 8 led vermelho (para poder visualizar o estado do PORTB) 1 soquete dip torneado 18 pinos (p/ deixar fixo no CI do PIC, evitando quebra) 1 microcontrolador PIC16F84A (ótimo para começar !!!!) O COMPILADOR – MPASMWIN O compilador vai transformar o código fonte do programa em novas instruções seqüenciais para o microcontrolador. O mpasmwin encontra-se em versões para windowsn (mpasmwin) e para ms-dos (mpasmdos), pode se baixado em http://www.microchip.com/1010/pline/tools/archive/other/61/index.htm , www.microchip.com ou junto com o MPLAB IDE .
  • 7. Cada uma das instruções identificara precisamente a função basica que o PIC ira executar. Onde a instrução é representada por um código operativo (do ingles operation code ou abreviadamente opcode) podemos memorizar 14 bits em cada locação da memória EEPROM. Esta memória no PIC16C84 dispões de 1024 locações e cada uma devera conter uma só instrução. Um exemplo de opcode em notação binaria esta escrito a seguir: 00 0001 0000 0000B É mais provavel que um opcode venha representado na notação hexadecimal ou seja: 0100H Este código, completamente sem sentido para nós humanos, é o que o PIC esta preparada para entender. Para facilitar a compreensão ao programador, se recorre a um instrumento e convenção para tornar a instrução mais compreensível. A primeira convenção é a que associa o opcode (um total de 35 para o PIC16C84) a uma sigla mnemônica, ou seja uma inicial que seja facil de recordar o significado da instrução. Voltando ao nosso exemplo o opcode 0100H corresponde a instrução mnemônica CLRWque é a forma abreviada da instrução CLEAR WREGISTER, ou seja, zere o registro W. Estes códigos podem ser encontrados dentro do arquivo de biblioteca do compilador, que é invocado pelo programa. No caso este arquivo é o P16C84 (pela linha include “P16C84.INC).
  • 8. O SOFTWARE GRAVADOR - ICPROG Através do ic-prog (http://www.ic-prog.com/icprog105C.zip ou www.ic-prog. com ) vamos transferir o arquivo gerado pelo compilador (que agora é hexadecimal - *.hex) para a nossa gravadora. Existem varios tipos de gravadoras compatíveis com o icprog. No nosso caso vamos utilizar o tipo JDM. Para isso va ao menu configurações e na opção Hardware (ou pressione F3) e configure o programa como a figura abaixo (atenção, para os sistema 2000/NT/XP, leia o texto em negrito após a figura) : No menu configurações, opções temos a possibilidade de substituir o idioma para português (guia linguagem) e de ativarmos o suporte para
  • 9. windows NT/2000/XP. Para isso você vai precisar baixar também o arquivo “icprog.sys” ( http://www.ic-prog.com/icprog_driver.zip ou www.ic-prog.com ) para a pasta de instalação do icprog e em seguida salvar e sair. Reinicie o programa e va para o menu configuração e em seguida hardware (F3) e confirme a tela a cima. O GRAVADOR DE PIC´S O gravador é o hardware, que vai converter os impulsos eletrônicos ativados pelo software gravador (ic-prog) na porta seriais/paralela para os pinos do nosso microcontrolador. Esta gravação é feita de forma serial, ou seja após codificar os comandos em números hexadecimais, agora transcodificamo-os em impulsos elétricos seriais para a gravadora, que vai atingir os níveis de tensões necessarios para possibilitar a transferência dos códigos para dentro da memória de dados do PIC. O princípio de gravação é o mesmo para todas as gravadoras, o que muda é o hardware que o desenvolvedor vai utilizar para garantir segurança para seu computador, seu microcontrolador e sua gravadora. Em algumas gravadoras temos a fonte na própria placa e em outras utilizaremos a tensão existente na porta de comunicação do micro (em geral, uns 15mA). Normalmente em uma fonte para a gravadora temos a ponte retificadora, um capacitor de 1000uF-eletrolítico, um de 100nF-eletrolítico, em seguida um LM7805 (TO-220) e um capacitor de 100uF-eletrolítico. Portanto, durante o processo de gravação o pic deve ser alimentado com +5Vcc e ter o GND conectado. Em determinado momento da gravação precisaremos de um pulso entre 13Vcc e 15Vcc no pino 5 - MCLR (Memory Clear), portanto também teremos uma outra fonte para gerar esta tensão. O pino SDA (RB7) transmite e recebe dados. É por este pino que os dados a serem gravados são inseridos ou lidos, conforme o comando selecionado. O pino SCL (RB6) é o clock de sincronismo das informações. O grande segredo é saber onde enviar estes pulsos (veja a tabela abaixo). PINO DAS SCL MCLR VCC GND SOQUETE 8 7 6 4 1 8 SOQUETE 18 13 12 4 14 5 SOQUETE 28 28 27 1 20 8 SOQUETE 40 40 39 1 11/32 12/31
  • 10. Atenção, apesar dos PIC´s serem praticamente imunes a energia estatica e muito resistentes para qualquer ambiente, nunca devemos inserir ou retirar o microcontrolador com a gravadora ligada ou conectada. Para preservação da porta de comunicação com o pc, não devemos remover o cabo durante o processo de gravação ou com o ic-prog aberto. É recomendavel que você mantenha sempre o microcontrolador em um porta soquete (mesa para CI) com furos torneados, aumentando assim a vida útil do microcontrolador. EXEMPLO 1 Gravador exclusivo para pic´s de 18 pinos (PIC16C84, PIC16f84, PIC16F84A, PIC16F628, etc ). Visite a ótima pagina http://www.furb.br/~mw/pratica/, para mais informações. Este é o gravador que eu uso diariamente e recomendo-o. Ele obtém os 13VCC para o MCLR de um diodo zener e os 5VCC de alimentação de um 7805. Os outros zeners (5,6V) são para controlar a tenção nos pinos de SDA e SDL. Este modelo, não precisa de fonte externa. O software a ser utilizado é o IC-PROG ( http://www.ic-prog.com/ ), com as configurações ja mencionadas a cima. 2 zeners 5v6 4 res 10k 1 7805 (formato transistor - BC) 1 1n4148 1 cap eletrolitico 22uF/16v 1 cap eletrolítico 470uF/16v 1 zener 13V 1 cap 100nF cerâmico 1 soquete dip18 torneado 1 conector DB9 fêmea + capa 1,5 mts de cabo 5 vias com malha 1 kit parafusos espaçadores (base do gravador) 1 PIC 16f84A - 4p
  • 12. EXEMPLO 2 Este modelo é um dos mais usados nos EUA, é conhecido como JDM. Podemos dizer que muitos dos gravadores existentes foram baseados neste modelo. Na pagina oficial, você vai encontrar a layout para placa de circuito impresso e muitas outras informações (em inglês, é claro). http://www.jdm.homepage.dk/ http://www.jdm.homepage.dk/newpic.htm Este gravador é alimentado por uma entrada RS-232 e trabalha com níveis de tensões próprios desta configuração. O nível de 14VCC é conseguido através de um zener de 8,2V e um ganho de 3V com o transistor. Ele grava PIC12C5XX, 12C67X, 24CXX, 16C55X, 16C61, 16C62X, 16C71, 16C71X, 16C8X, 16F8X. A voltagem do circuito é estabilizada com diodos zener. Este modelo não precisa de fonte externa e pode ser utilizado para gravação in circuit (sem remover o pic do circuito). Observe que ele trabalha com a antiga porta serial de 25 pinos, para utiliza-la em micros novos com o conector DB9 Femea (igual do mouse) utilize: TXD (3), GND (5), DTR (4), CTS (8), RQS (7). O software a ser utilizado pode ser o IC-PROG ( http://www.ic-prog.com/ ), ou um outro indicado pelo desenvolvedor , consulte o site oficial do gravador e do ic-prog, para maiores detalhes.
  • 13. R1 10K Resistor R2 1.5K Resistor D2 5.1V/0.5W Zener D3 1N4148 ou 1N4448 Diodo D4 1N4148 ou 1N4448 Diodo D5 1N4148 ou 1N4448 Diodo D6 8.2V/0.5W Zener D7 1N4148 ou 1N4448 Diodo C2 100μF/25V Capacitor eletrolitico C3 22μF/16V ou 47μF/6.3V Capacitor tantalo Q1 BC547B Transistor NPN Q2 BC547B Transistor NPN P1 DS25 (female) 25 pol DSUB connector P2 Conector Conector para programação no circuito Não esqueça dos 2 jumpers em baixo da placa
  • 14. EXEMPLO 3 Um outro bom exemplo de gravador pode ser obtido em: http://www.semis.demon.co.uk/ http://www.semis.demon.co.uk/uJDM/uJDMmain.htm Ele foi desenvolvido com base no JDM original, porém tem seu funcionamento simplificado. É conhecido como micro JDM (uJDM). TODOS OS PROGRAMAS, AQUI MENSIONADOS SÃO “FREEWARE”, OU SEJA, POSSUEM LIVRE DISTRIBUIÇÃO. NÃO ME RESPONSABILIZO POR QUALQUER DANO CAUSADO EM SEU EQUIPAMENTO. NOSSA INTENÇÃO NÃO FOI A DE APROFUNDAR NAS TÉCNICAS DE PROGRAMAÇÃO DE MICROCONTROLADORES, MAS SIM CATIVAR O INTERESSE DO LEITOR PELO FACINATE MUNDO DA AUTOMAÇÃO, TECNOLOGIA E MICROCONTROLADORES. ABRAÇOS, PEDRO V. T. TREVISAN (pvttrevisan@ig.com.br) VISITE MEU SITE http://www.mecatrom.cjb.net/