You are on page 1of 15

03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Dimensão By Net e os
Microcontroladores!
Microcontroladores – como são úteis!

Sobre o Site: Nossas pesquisas de Interesse!

« Monte um Pinguino com um PIC18F4550 Mini Tutorial da Linguagem JAL para o PIC – 1ª Parte Páginas


» Sobre o Site:
Microcontroladores:
Monte um gravador USB para o PIC!
Este artigo irá descrever a montagem de mais um gravador para a família de Categorias
microcontroladores da Microchip, desta vez utilizando uma interface USB, que será conectada Circuitos (33)
ao computador. Ele na verdade será um “clone” do famoso gravador da própria Microchip, o Gravadores (10)
PICkit2. Informações (15)
Placas­de­Teste (14)
Uma das dificuldades em se implementar um gravador via USB, é que esta fornece +5V,
sendo que o PIC para ser gravado no modo de alta­voltagem necessita de +13V. Existe então
Arquivos
uma necessidade de se conseguir obter os +13V a partir de +5V, o que é feito com um
abril 2014
pequeno circuito que utiliza um componente chamado micro choque ou micro indutor (que
fevereiro 2014
em seu interior se encontra uma pequena bobina de fio), e conforme a especificação do
janeiro 2014
próprio PICkit2 (site e diagrama esquemático –> Appendix B. PICkit 2 Schematics) o seu valor
dezembro 2013
é de 680 uH. Vamos então explorar esta parte do circuito que acreditamos que seja a que
novembro 2013
mais gera dúvidas.
abril 2013
Figura 01: Trecho do diagrama esquematico do gravador da Microchip PICkit2 referente a fevereiro 2013
obtenção da voltagem de +13V – clique na figura para ampliar: janeiro 2013
dezembro 2012
novembro 2012
outubro 2012
agosto 2012
junho 2012
maio 2012
janeiro 2012
dezembro 2011
novembro 2011
outubro 2011

Interesse em Treinamentos?
Arduino Básico
Arduino Avançado
Programação Microcontroladores PIC
Básico/Intermediário
Programação Microcontroladores PIC
Avançado
Programação Microcontroladores AVR
Básico/Intermediário
Programação Microcontroladores AVR
Avançado
Eletrônica Básica Analógica e Digital

Interesse em adquirir placas prontas de


Como componentes a serem destacados deste circuito, temos o micro indutor de 680 uH e o circuito impresso dos projetos/artigos?
diodo Schottky (BAT54) que é utilizado para retificar a corrente alternada com uma voltagem Clique aqui!
acima de 13V (gerada pelo chaveamento do transistor (liga/desliga) com o seu coletor em
série com o indutor), tendo um melhor rendimento que o diodo comum. Na nossa
montagem, entretanto, ele foi substituido por um 1N4148 (pode também ser utilizado o Search
1N5819). A corrente alternada é produzida injetando­se uma frequência gerada por um pino   Find
do microcontrolador PIC18F2550 na base do transistor MMBT3904 (que substituimos pelo
BC548). E é esta frequência que basicamente define a voltagem que iremos obter.
Apostilas
Para facilitar ainda mais a compreensão, montamos um circuito independente, que conectado Apostila PIC
ao pino de qualquer microcontrolador (ou até mesmo um integrado 555 na configuração de datasheets360
multivibrador astável –> oscilador de onda quadrada), faz a conversão de +5V para +13V. Gravadores – MICROCONTROLADORES PIC
Isto é chamado de conversão DC­DC. Ele pode operar de duas maneiras: com realimentação Lecciones de electronica
ou com circuito regulador de voltagem. Veremos isto com mais detalhes adiante. List of 4000 series integrated circuits

Foto 01: Circuito de Teste do Conversor DC­DC para +13V (Lado A) – clique na imagem para
ampliar! RSS Feeds
All posts
All comments

Meta
Login

http://www.dimensaobynet.com.br/mic/?p=1760 1/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!
Foto 02: Circuito de Teste do Conversor DC­DC para +13V (Lado B) – clique na imagem para
ampliar!

Foto 03: Circuito de Teste do Conversor DC­DC para +13V (Verso) – clique na imagem para
ampliar!

Conforme vimos no artigo anterior “Monte um Pinguino com um PIC18F4550“, utilizamos
como nosso primeiro programa o “Blink” que possui um código fonte muito fácil de se
entender. Vamos então utilizá­lo com uma pequena modificação, conforme abaixo:

/*
Blink a LED
*/

void setup()
{
// initialize the digital pin 13 as an output.
pinMode(13, OUTPUT);
}

void loop()
{
toggle(13);   // alternate ON and OFF
delayMicroseconds(400);   // wait for a 400 microseconds
}

O que este código faz é ligar/desligar o pino do microcontrolador PIC em uma frequência de
2,5 kHz: 400 microseconds –> 2,5 kHz. Nesta frequência, com este pino ligado ao nosso
circuito de Teste do Conversor (na base do transistor via resistor de 1k), gera uma saída de
pouco mais de +13V. Se diminuir a frequência, diminui a voltagem obtida, e vice­versa. Para
garantir então uma voltagem precisa, temos como já falado, duas alternativas: a primeira, e a
mais elaborada, consiste em medir esta voltagem de saída em um outro pino do PIC
(configurado para entrada), para saber se a frequência gerada está adequada. Se não, então
ajusta­se a frequência para mais ou para menos para que a voltagem se estabilize no valor
ideal. Como o PIC não pode medir voltagens maiores que a alimentação a que ele está ligado,
usa­se então um divisor de voltagem constituído por dois resistores em série com a voltagem
gerada e o terra, permitindo assim a medição da voltagem com segurança pelo
microcontrolador PIC. A segunda faz uso de um regulador de voltagem para que a saída fique
estabilizada em +13V (neste caso, se fixa a frequência em um valor superior, para uma saída
de voltagem acima de +13V (ex.: +16V) para que o regulador possa então trabalhar de
maneira adequada. Esta opção além de gastar mais componentes, consome um pouco da
energia gerada do conversor DC­DC.

Vamos então fornecer o diagrama esquemático completo de nossa plaquinha do Circuito de
Teste do Conversor DC­DC para +13V:

Figura 02: Diagrama esquematico do Circuito de Teste do Conversor DC­DC para +13V –
clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 2/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!
Note que só pode haver uma das opções: (A) ou (B) de saída dos +13V, conforme a figura
acima.

Vamos agora modificar nosso código fonte para implementar a opção (A). O pino escolhido no
PIC18F4550 para a entrada da realimentação é o 02 (corresponde ao pino 13 do Pinguino) e
o pino no PIC18F4550 para a saida do sinal (frequência gerada) é o 40 (corresponde ao pino 7
do Pinguino).

Código fonte a seguir:

/*——————————————————–
Author: <Dimensão By Net>
Date: 02/Jun/2012
Name: conversorDC­DC
Description: Programa para o controle do
Circuito de Teste do Conversor DC­DC para +13V
Version: 1.0
———————————————————­*/

int freqPin = 7; //(pin40 do PIC18F4550)
int sensorPin = 13; //(pin02 do PIC18F4550)
int sensorValue = 0;
int contador = 0;
int msec = 400; //Tempo aproximado: –> frequência de 2,5 khz –> (+13,2V)

void setup() {
pinMode(freqPin, OUTPUT);
pinMode(sensorPin, INPUT);
digitalWrite(freqPin, HIGH);
}

void loop() {
toggle(freqPin);
delayMicroseconds(msec);
contador++;

if (contador == 2500) //Testa aproximadamente a cada segundo, para corrigir a
voltagem, se necessário
{
sensorValue = analogRead(sensorPin);
msec = ((sensorValue + 2) / 4);
contador = 0;
}

Algumas considerações:

O código acima é muito simples, e seu objetivo é ser didático, fácil de entender, mas em uma
aplicação profissional precisaria ser melhorado, embora funcione. A voltagem de referência fica
em torno de +4,7V, para uma saída de +13,2V.

E para a opção (B), como não existe a necessidade de teste da voltagem de saída para a
realimentação, fixamos a frequência para uma voltagem acima (por exemplo: +16V), como já
falado, para que o regulador a estabilize em +13V (pode­se utilizar voltagens maiores,
lembrando que quanto maior a diferença da voltagem de entrada em relação a voltagem de
saída mais existem perdas com o aquecimento do regulador).

Segue abaixo a foto do nosso teste da voltagem de saída do circuito:

Foto 04: Circuito de Teste do Conversor DC­DC para +13V em ação: Multimetro indica a
voltagem obtida na opção (A) – clique na imagem para ampliar!

Vamos prosseguir com as explicações para um outro circuito também utilizado no nosso
“clone” do gravador PICkit2, que consiste da utilização de memórias com o objetivo de que
este fique “independente” do computador, para que possa gravar os microcontroladores PIC
com o programa (bloco de código .hex) previamente gravado nestas memórias da Microchip
24LC512 (este circuito é opcional).

Segue abaixo as fotos da plaquinha contendo as memórias:

Foto 05: Circuito da Plaquinha com as Memórias 24LC512 (Lado A) – clique na imagem para
ampliar!

http://www.dimensaobynet.com.br/mic/?p=1760 3/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Foto 06: Circuito da Plaquinha com as Memórias 24LC512 (Lado B) – clique na imagem para
ampliar!

Foto 07: Circuito da Plaquinha com as Memórias 24LC512 (Verso) – clique na imagem para
ampliar!

Os pinos desta plaquinha, visto de cima com eles para baixo, em relação a conexão na placa
do gravador são (da esquerda para a direita): (­) Terra, (D) Dados, (C) Clock, (+5V) Positivo,
(NC) Não Conectado, (WP) Proteção de Escrita. Foi adicionado um LED miniatura verde em
série com um resistor de 470R conectado ao +5V e ao Terra, para indicar que está ligada.

Segue abaixo a figura do diagrama esquemático da plaquinha contendo as memórias:

Figura 03: Diagrama esquemático do Circuito da Plaquinha (trecho do diagrama esquemático
do PICkit2 – Appendix B. PICkit 2 Schematics) com as Memórias 24LC512 – clique na figura
para ampliar:

Como podemos ver, o circuito é muito simples, com apenas três pinos de controle. E como
seu uso é opcional, pode ser retirada da Placa Principal do Gravador de PIC USB, sem
problemas (com o circuito desligado, é claro!).

Mostraremos agora, as fotos do circuito principal:

Foto 08: Circuito Principal do Gravador de PIC USB (Lado A) – clique na imagem para ampliar!

http://www.dimensaobynet.com.br/mic/?p=1760 4/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Foto 09: Circuito Principal do Gravador de PIC USB (Lado B) – clique na imagem para ampliar!

Foto 10: Circuito Principal do Gravador de PIC USB (Verso) – clique na imagem para ampliar!

Fotos 11 e 12: Circuito Principal do Gravador de PIC USB (Lados C e D) – clique nas imagens
para ampliar!

Pinagem (Lado C) da esquerda para a direita: 1­ Vpp (+13V); 2­ Vcc (+5V); 3­ SCL (clock);
4­ SDA (dados); 5­GND (terra/negativo).

Como já tinhamos publicado um outro gravador de PIC, o Gravador de PICs e de Memórias
I²C Bus EEPROM, mostraremos a seguir uma foto comparativa:

Foto 13: Comparativo entre as placas de gravadores PIC Serial e USB – clique na imagem
para ampliar!

Detalhe é que ambas as placas podem fornecer alimentação de +5V ao microcontrolador PIC
a ser gravado, e possuem igual distribuição de pinagem (o cabo de cinco vias colorido é o
mesmo para elas). Como é exigido +13V para a gravação no modo de alta­voltagem, o

http://www.dimensaobynet.com.br/mic/?p=1760 5/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!
Gravador Serial deve ser conectado a uma porta serial já existente do computador (não pode
então ser usado um cabo USB–>Serial, como vimos no artigo “Monte uma placa de testes
para o AVR da Atmel“, que usa gravação em baixa voltagem: +5V).

Foto 14: Placa Principal do Gravador USB com o módulo de Memória encaixado e cabo de
gravação colorido de cinco vias conectado (basta então ligar em uma porta USB livre do
computador com um cabo padrão USB) – clique na imagem para ampliar!

Foto 15: Placa Principal do Gravador USB com o módulo de Memória e cabo de gravação
conectados (Verso), e a plaquinha para o teste de gravação (PIC16F688) – clique na imagem
para ampliar!

Fotos 16 e 17: Gravador USB conectado na Placa para Testes do PIC (03) para teste (pode
servir para gravar/atualizar o bootloader do Pinguino – veja o artigo anterior, além de
programar qualquer código escrito em C ou Assembly – importante é gerar o arquivo de
gravação .hex, resultado da compilação e linkedição, bem como usar um software adequado
de gravação – iremos esclarecer isto adiante ainda neste artigo) e detalhe do conector do cabo
de gravação: cores: Roxo (+13V), Vermelho (+5V), Azul (Clock), Amarelo (Data) e Preto
(Terra/Negativo) – clique nas imagens para ampliar!

Como recursos deste Gravador USB de PICs, reproduzimos abaixo trecho do seu manual:
“PICkit  2 Programmer/Debugger User s Guide“.

Figura 04: Foto do PICkit2 Original com a descrição dos seus itens – clique na figura para
ampliar:

Neste nosso “clone”, procuramos manter estas funcionalidades. O que difere então? Quando
se trata de se adaptar um sistema desenvolvido para um determinado hardware, o que
podemos fazer é, já que não precisamos modificar o software embarcado (firmware) que roda
neste hardware (e nem devemos, já que além de proprietário ele pode também sofrer

http://www.dimensaobynet.com.br/mic/?p=1760 6/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!
atualizações “upgrades” a qualquer momento pela fabricante, no caso a Microchip) oferecer
mais ou menos funcionalidades já projetadas, para o nosso hardware “clone”. Isto significa
que podemos por exemplo, alterar os conectores (ex. mini­USB para USB padrão), alterar a
sequência dos pinos (pinagem) de saída (desde que saibamos qual pino significa o quê),
implementar ou não a funcionalidade de memória para programação independente do PC (o
“Programmer­to­Go”), implementar a funcionalidade “Device VDD”, em que o usuário pode
selecionar a voltagem de alimentação fornecida ao PIC a ser gravado, na faixa de +5V até
+2,5V (esta funcionalidade não foi implementada neste hardware “clone”, pois a alimentação
foi fixada em +5V), e etc. Quanto mais funcionalidades implementadas em hardware, mais
caro fica e mais se aproxima das funcionalidades “máximas” do projeto original. Isto é uma
pratica muito utilizada na indústria, modelos mais caros de um produto são especificados com
mais itens, sendo que os mais baratos são os que tem menos itens (mas o projeto é o
mesmo!).

Figura 05: Descrição dos itens do PICkit2 Original – clique na figura para ampliar:

Figura 06: Pinagem do PICkit2 Original com as suas descrições – clique na figura para
ampliar:

Figura 07: Fecho para alça de proteção contra perda do PICkit2 Original – clique na figura
para ampliar:

Antes de mostrarmos o diagrama esquemático completo deste Gravador USB para o PIC
(clone do PICkit2), vamos descrever o seu funcionamento, referente ao processo de gravação
propriamente dito, utilizando o software da própria Microchip, o PICkit 2 Programmer
(download aqui!) obtido gratuitamente (e também o passo a passo da sua instalação). E
mostraremos inclusive a sua utilização com o Microchip MPLAB IDE v.8.85 e o MPLAB X IDE
(em um futuro artigo).

Figura 08: Tela do PICkit 2 Programmer com informações – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 7/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

OBS: Antes do gravador poder ser utilizado, o PIC18F2550 que é o principal responsável pelo
seu funcionamento (coração do circuito), deve ser “programado”, ou seja, deve­se gravar nele
o seu firmware: PICkit 2 Firmware V2.32 “PK2V023200.hex” (download aqui!) fornecido
também gratuitamente pela Microchip. Como dica de como proceder, dê  uma olhada em
nosso artigo anterior “Monte um dispositivo USB com o PIC16F628A“, ou “Projeto passo­a­
passo para uma Lanterna com LEDs!“. (É, para se construir um gravador USB sofisticado para
gravar os microcontroladores PIC, antes ele também deve ser gravado – quem nasceu
primeiro, o ovo ou a galinha?). Como dica, pode­se usar também o Gravador de PICs e de
Memórias I²C Bus EEPROM (Serial), montando uma plaquinha para o PIC18F2550 com um
soquete, e conectando corretamente os pinos para a gravação ICSP (como foi feito para o
PIC16F688 – ver fotos de número 13 e 15).

Figura 09: Diagrama do esquema de gravação ICSP (In­Circuit Serial Programming) – clique
na figura para ampliar:

Vamos detalhar agora a instalação do software de gravação:

Figura 10: Tela da instalação do PICkit 2 Programmer (1) – clique na figura para ampliar:

Figura 11: Tela da instalação do PICkit 2 Programmer (2) – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 8/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 12: Tela da instalação do PICkit 2 Programmer (3) – clique na figura para ampliar:

Figura 13: Tela da instalação do PICkit 2 Programmer (4) – clique na figura para ampliar:

Figura 14: Tela da instalação do PICkit 2 Programmer (5) – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 9/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 15: Tela da instalação do PICkit 2 Programmer (6) – clique na figura para ampliar:

Instalação efetuada com sucesso.

Figura 16: Tela do PICkit 2 Programmer – clique na figura para ampliar:

Após a instalação já feita, vamos então conectar o Gravador de PIC USB em uma porta USB
qualquer do computador (se é a primeira vez em que ele é conectado, o próprio Windows 7
automaticamente instalará o device driver para a comunicação com o gravador – HID
Compliant Device). Feito isto, segue abaixo o passo a passo de gravação de teste (conectar
conforme fotos 15 ou 16 – neste exemplo, será utilizado o PIC16F688 – foto 15). Baixar o
arquivo: Projeto­Lanterna­de­5­LEDs.zip, como exemplo.

Foto 18: Placa do Gravador de PIC USB conectado ao cabo de gravação colorido (e este à
plaquinha utilizando o PIC16F688 para o teste de gravação), e também ao Notebook (com
S.O. Windows 7) via cabo USB padrão – clique na imagem para ampliar!

http://www.dimensaobynet.com.br/mic/?p=1760 10/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 17: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (1) – clique na figura para ampliar:

Figura 18: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (2) – clique na figura para ampliar:

Figura 19: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (3) – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 11/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 20: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (4) – clique na figura para ampliar:

Figura 21: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (5) – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 12/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 22: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (6) – clique na figura para ampliar:

Figura 23: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (7) – clique na figura para ampliar:

Figura 24: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (8) – clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 13/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Figura 25: Passo a passo de gravação de um microcontrolador PIC utilizando o PICkit 2
Programmer (9) – clique na figura para ampliar:

Gravação efetuada com sucesso.

Este é o funcionamento básico. Mais informações a seguir.

Na tela do PICkit 2 Programmer existe dois checkbox (VDD PICkit 2): ON –> liga a
alimentação fornecida ao PIC a ser gravado (e acende o LED amarelo – mas adicionamos um
jumper no nosso circuito para fornecer os +5V independentemente de estar ligado ou não), e
o /MCLR que mantem o PIC a ser gravado no circuito “resetado” (ou parado) – Hold Device in
Reset. Você pode escolher entre várias operações, como: Read, Write, Verify, Erase, Blank
Check (verifica se o PIC está em branco). Existe também uma facilidade, que são os sons de
alerta – Alert Sounds (para sucesso, aviso e erro) e mais uma, poder iniciar a gravação ao
pressionar o botão do nosso Gravador de PIC USB (Write On PICkit Button). E uma
característica bem interessante, que é o PICkit 2 Programmer­To­Go, que faz uso do módulo
de memória para tornar independente o gravador do computador, como já falado. Se ele
funciona OK, pisca o LED amarelo, se não, pisca o LED vermelho (isto é um resumo, e é
importante a leitura do seu manual – PICkit  2 Programmer/Debugger User s Guide, e também
o PICkit 2 Programmer­To­Go User Guide e os demais itens que se encontram no menu Help.

A seguir, finalmente, o diagrama completo de nosso Gravador de PICs USB:

Figura 26: Diagrama esquemático completo do Gravador de PICs USB (clone do PICkit 2) –
clique na figura para ampliar:

http://www.dimensaobynet.com.br/mic/?p=1760 14/15
03/01/2017 Monte um gravador USB para o PIC! – Dimensão By Net e os Microcontroladores!

Qualquer dúvida em relação às conexões, conferir no diagrama do PICkit 2 original: “Appendix
B. PICkit 2 Schematics”. Outros sites interessantes que também trazem projetos de clones do
PICkit 2 são: Micros Designs e Cristpalma, dentre outros.

Material interessante: PICkit 2 Overview Presentation PPT and PDF.

No software de gravação do PICkit 2 (PICkit 2 Programmer), encontramos também duas
ferramentas utilitárias no menu “Tools”: UART Tool e Logic Tool, que são bastante úteis
(veremos o funcionamento destas ferramentas em um futuro artigo).

Aqui termina este artigo. Caso tenham alguma dúvida, segue um e­mail para contato: 
micro@dimensaobynet.com.br

Até o próximo post.

This entry was written by leoadm, posted on  28 de maio de 2012 at 20:24, filed under Circuitos, Gravadores and
tagged gravador usb pic gravador pic usb pickit2 conversor cc­cc interface serial. Bookmark the permalink.
Follow any comments here with the RSS feed for this post. Comments are closed, but you can leave a
trackback: Trackback URL.

« Monte um Pinguino com um PIC18F4550 Mini Tutorial da Linguagem JAL para o PIC – 1ª Parte
»

WordPress |  Sandbox |design by  Penfold

http://www.dimensaobynet.com.br/mic/?p=1760 15/15

You might also like