Tutorial Conversor USB/Serial AVRCDC (FTDi Clone)
2 Lista de Materiais
3 Pinagem do ATMega
4 Montagem do Cabo Paralelo
5 Montagem do Circuito
5.1 Esquema Elétrico
5.2 Fonte de 5V
5.3 Circuito de Gravação do Firmware
5.4 Circuito Final de Utilização
6 Conector USB
7 Gravação do Firmware
8 Instalação do Software
8.1 Download do Driver
8.2 Instalando o Driver
Montar em uma protoboard um clone do Conversor USB/Serial conhecido como FTDI, que nomeia o integrado da empresa de mesmo nome. Esse CI foi utilizado em uma Breakout Board da SparkFun conhecida pelo nome de FT232R, ou mais comumente USB/Serial Breakout.
O clone em questão utiliza um ATMega8L com encapsulamento DIP, que é fácil de trabalhar e compatível com a protoboard. O Protuino UNO utiliza essa técnica descrita neste tutorial para substituir a USB/Serial Breakout da versão anterior!
Kit didático visando aprendizado sobre Arduino
Utilizado pelo Protuino UNO
Montar adaptador USB para Serial
Expansão do PC
Adaptador USB/Paralelo também é possível apenas alterando o firmware
Conector & Cabo
Headers de Pinos
Jumpers de Protoboard
Pinagem do ATMega
Montagem do Cabo Paralelo
O cabo acima é necessário pois precisamos gravar o firmware do conversor USB/Serial no chip ATMega8L.
Vide a tabela abaixo e siga as orientações de ligação dos fios que vão do conector DB25 (no computador) para o conector H5 (na protoboard). Não se esqueça de ligar o pino 2 ao 12 do DB25, pois esse LINK é necessário para o programa ISP-Flash Programmer 3.0 identificar o cabo paralelo ligado ao PC.
Veja um exemplo de conector H5 improvisado com uma barra de pinos, na foto abaixo. Preste atenção nas marcações dos pinos, pois vamos utilizar essa seqüência mais tarde.
A montagem do circuito é muito simples, bastando seguir os passos abaixo e efetuar todas as conexões conforme indicado.
Esquema da fonte de alimentação 5V, utilizando o LM7805:
Abaixo podemos ver o esquema elétrico do Circuito de Gravação do Firmware:
Outro esquema elétrico importante é o do circuito final, o que realmente faz a função do clonada do FTDI:
Siga os passos das imagens abaixo para efetuar a montagem da fonte de alimentação que fornecerá energia para o ATMega8 durante o processo de gravação do firmware.
Utilize uma fonte de 9V com pelo menos 800mA e que tenha o conector compatível com a fonte de alimentação externa do Arduino, com plugue de 21mm e tendo o terminal central negativo.
Circuito de Gravação do Firmware
Passo 1 - Primeiro identifique o chip ATMega8 e coloque-o na protoboard no lugar que for mais conveniente.
Passo 2 - A sua montagem deve ficar parecida com a da foto abaixo. Repare que já montei a fonte de alimentação de 5V e também o conector de 5 pinos para o cabo paralelo.
Passo 3 - Começamos então ligando o pino 20 do ATMega8 no VCC, ou seja, no positivo da rede de alimentação.
Passo 4 - Na sequência, grampeamos o pino 21 também no VCC e o 22 no GND, ou seja, no negativo do circuito.
Passo 5 - Para terminar de polarizar o ATMega8, falta ligar os pinos 7 no GND e 8 no VCC, aproveitando os pinos 20 e 22 que já estão ligados no VCC e no GND, respectivamente.
Passo 6 - O cristal de 12Mhz deve ser ligado nos pinos 9 e 10 do ATMega8, conforme foto ao lado.
Passo 7 - Coloque então os dois capacitores de 22pF, sendo um em cada perna do cristal e no GND do circuito. Vide foto.
Passo 8 - Vamos agora fazer as ligações do cabo de gravação do firmware. O último pino do conector deve ser conectado no GND, conforme foto.
Passo 9 - A sequência de ligação dos fios que vem do conector ICSP é bem tranquila, sendo o primeiro pino do conector ligado ao pino 17 do ATMega8.
Passo 10 - Veja pela foto, que exceto pelo pino 2 do conector que vai ligado ao RESET do ATMega8, no pino 1; os outros fios são em escada, ou seja, os pinos 1, 3 e 4 do conector vão ligados nos pinos 17, 18 e 19 do ATMega8, respectivamente.
Passo 11 - Agora conecte o cabo na porta paralela do PC e também no conector ICSP, conforme a foto. Preste atenção ao lado certo do cabo na hora de conectar na protoboard. Faça uma revisão geral!
Passo 12 - Ligue agora a fonte de alimentação para energizar o circuito de gravação do firmware. A parte de montagem termina por enquanto. Vamos ver como gravar o software utilizando um programador.
Circuito Final de Utilização
Passo 1 - Depois de gravar o firmware (vide parte de gravação, mais abaixo), você vai precisar alterar o circuito para o funcionamento final, clonando o FTDI. Primeiro tire todos os fios do conector ICSP.
Passo 2 - Está na hora de soldar os fios do conector USB. Esquente o ferro de solda e solde os quatro fios do Conector USB, acompanhando esquema de ligação mais abaixo.
Passo 3 - Ligue o LED verde, sendo o catodo (lado chanfrado) no positivo do circuito, ou seja, no VCC e o anodo em uma trilha não utilizada da protoboard.
Passo 4 - Ligue então o resistor de 220 ohms do pino 5 ao 21 do ATMega8. Esse resistor é o responsável pelo pullup do pino D- do conector USB.
Passo 5 - Essa alteração agora é importante, pois vamos utilizar apenas uma trilha de alimentação, a da direita, pois esse circuito precisa ficar isolado. Ou seja, na hora da gravação do firmware, utilizamos uma fonte externa de 9V, no caso da USB, vamos utilizar a alimentação da própria USB, mas o importante é que a alimentação da USB seja utilizada apenas para o FTDI Clone. Para ligar outros componentes, utilize a fonte de 9V externa. Junto com o FTDI Clone, vc pode ligar no máximo outro ATMega ou então um LCD, mas não mais do que isso senão vai dar problema. Mude então as pernas dos capacitores de polarização do cristal, tirando elas da trilha negativa e utilizando o link para o negativo no pino 8. Vide foto.
Passo 6 - Ligue agora os fios que você soldou no Conector USB, sendo primeiro os pinos D+ e D- nos pinos 4 e 5 do ATMega8, respectivamente.
Passo 7 - Termine ligando os pinos VCC e GND do Conector USB, sendo o VCC no anodo do LED verde e o GND na trilha de GND do circuito.
Passo 8 - Para testar o funcionamento do FTDI Clone, eu montei um MAX232 para converter a saída que é TTL para RS232. Então liguei a saída do MAX232 em um PC que tem a porta serial. Ou seja, um computador com porta USB vai se comunicar com um outro computador que não tem porta USB, apenas a porta Serial DB9.
Passo 9 - Conecte o terra do circuito do MAX232 (que deve ser alimentado por outra fonte de alimentação que não seja através da USB que o FTDI Clone esteja usando) no terra do circuito do FTDI Clone. Ou seja, apesar dos dois circuitos serem alimentados por fontes diferentes, o terra entre eles precisa ser comum, conectados entre si.
Passo 10 - Como eu apenas estou enviando informações de um PC para outro, liguei apenas o TX do ATMega8, que é o pino 3 no pino 11 do MAX232. Se você quiser fazer a comunicação de volta, basta ligar do MAX232 no pino 2 do ATMega que é o RX. Já o DTS, que avisa quando o FTDI Clone vai transmitir é o pino 26 do ATMega8. Veja o esquema elétrico mais acima caso você queira conectar todos os fios da comunicação Serial, caso deseje fazer o handshaking.
Veja a imagem abaixo e conheça os pinos do conector fêmea USB. Mais abaixo, vide a tabela de descrições e conexões dos pinos.
Conexão Protuino UNO
USB (VCC)
Alimentação positiva (5V) da USB.
Anodo do LED verde. Trilha da banda da direita.
USB (D-)
Sinal de dados, negativo.
Pino 5 do ATMega8.
USB (D+)
Sinal de dados, positivo.
Pino 4 do ATMega8.
USB (GND)
Alimentação negativa, ou seja, terra da USB (0V).
Para gravar o firmware, vc precisará do programa de gravação de microcontroladores, chamado ISP Flash Programmer v3.0, que pode ser baixado, clicando no link abaixo:
http://api.ning.com:80/files/iVhtssuWkGxARKuaCpVyF*mcn-CfEnG79AiLz2v2EuDByHbPvVCE3kgY2NA5uyQ5H42PcgtEfwwx8ELJLwUxiQ-sHLDI6UPG/ISP3v0.zip
Você precisará também do pacote de fontes e compilados do projeto CDC-232. Este projeto é baseado em uma biblioteca chamada AVR-CDC e faz uso desta para implementar um adaptador USB para Serial e também existe o CDC-IO que permite criar um conversor de USB para Porta Paralela.
Confira a Home Page do Projeto:
O download que você precisará como firmware deste nosso FTDI Clone é o que pode ser encontrado na página do link abaixo:
Utilize esse link direto:
http://www.recursion.jp/avrcdc/cdc232.2010-02-28.zip
Quando descompactar o pacote, entre na pasta "mega48\default" e utilize o arquivo CDCMEGA8.HEX nos passos da instrução abaixo.
Passo 1 - Primeiro execute o ISP Programmer, mas não clique no executável dele, ao invés disso, utilize o arquivo de lote do DOS, chamado ISP-XP.BAT, caso você esteja utilizando o Windows XP. Clicar no executável do ISP Programmer, só vai funcionar no Win98 e no Win2K. Usuários de Linux devem procurar um outro Programador como o AVRDude.
Passo 2 - Quando o programa abrir, clique no botão "OPEN" para procurar pelo arquivo CDCMEGA8.HEX. O importante aqui é chegar nessa tela. Se você não conectar o cabo Paralelo de Gravação do Firmware (mostrado no início do Tutorial), o ISP Programmer reclamará, mas basta dar "OK" na tela que aparecer, conectar o cabo e continuar com a gravação.
Passo 3 - Encontre o arquivo CDCMEGA8.HEX e clique em "Abrir".
Passo 3 - De volta na tela principal, na lista de micros, escolha o ATmega8.
Passo 4 - Pronto! É só clicar em "WRITE" e esperar...
Passo 5 - Quando aparecer a tela abaixo, clique em "OK" e feche o programa. Agora você pode partir para a montagem do Circuito Final.
Para utilizar essa versão do Protuino UNO, você precisa fazer o download do driver que criará a porta Serial no seu computador. Vamos ver nessa etapa como fazer isso.
Neste Manual estou considerando a instalação do driver no Windows XP SP3. O driver funciona para outras versões do Windows como 2K, Vista, Vista x64 e Windows 7.
Obs: No Linux não precisa instalar driver nenhum.
Faça o download do driver, necessário para fazer a instalação na primeira vez que você conectar o seu Protuino UNO no PC.
Clique aqui para baixar o driver do Protuino UNO
Passo 1 - Primeiro copie arquivo avrcdc_inf.rar (2) para a pasta de instalação do Arduino, sob o diretório Drivers (1), conforme foto abaixo.
Passo 2 - Utilizando o WinRar, basta clicar com o botão direito no arquivo e selecionar a opção "Extrair aqui".
Passo 3 - Abra a pasta que acabou de ser descompactada e escolha o diretório referente a sua versão do Windows. No meu caso, escolhi a pasta "XPVista7". Copie o endereço completo para a memória para utilizarmos nos próximos passos. Repare nos arquivos indicados na foto, são o INF e o SYS. Um é necessário para identificar o driver e o SYS é o driver em si.
Passo 4 - Agora conecte o Protuino UNO na USB do PC. A tela a seguir deve aparecer. Selecione a opção "Instalar de uma lista ou local específico (avançado)" e clique em "Avançar".
Passo 5 - Nesta tela selecione a opção "Procurar o melhor driver nestes locais" e depois marque a opção "Incluir este local na pesquisa". Apague o que tiver na caixa de texto de pesquisa e cole o endereço do local do driver, copiado na memória no Passo 3. Clique então em "Avançar".
Passo 6 - A tela a seguir deve aparecer enquanto o sistema copia e instala os arquivos do driver.
Passo 7 - Terminando o processo, a tela abaixo deve aparecer. Basta clicar em "Concluir".
Passo 8 - No Gerenciador de Dispositivos do PC, podemos ver sob "Portas (COM & LPT)", a nossa nova porta Serial, no meu caso, a COM5.