12 - Arduino no protoboard com conversor TTL-USB

O microcontrolador que está inserido na placa Arduino pode ser retirado de seu soquete e instalado num protoboard ou mesmo num circuito impresso. Para isso, é necessário alimentá-lo com 5V, conectar um cristal de 16MHz e 2 capacitores de 22pF, conforme esquema abaixo que se refere a um microcontrolador de encapsulamento DIP28, como o ATMEGA8, ATMEGA168 ou ATMEGA328.


A correspondência de pinagem entre o microcontrolador e aquela utilizada no ambiente de programação é exibida na figura abaixo:



Se, por exemplo, no ambiente de desenvolvimento fosse elaborado um programa que alternasse o nível de tensão do pino digital 13 entre alto e baixo, conforme exemplificado no item 7 deste tutorial, tal efeito seria notado no pino 19 do microcontrolador.

As placas Arduino normalmente contêm um chip conversor de sinais de USB para TTL, pois o computador se comunica pela USB com o ambiente externo e o microcontrolador por meio de níveis lógicos TTL. Assim, este conversor funciona como um tradutor entre o computador e o microcontrolador, o que permite a comunicação entre ambos.

Um microcontrolador com bootloader Arduino pode ser programado diretamente num circuito impresso ou num protoboard utilizando um conversor USB-TTL, sem a necessidade de uma placa Arduino completa.

O conversor deve dispor de 2 pinos:
  • RXD para recepção de dados
  • TXD para recepção de dados
O pino RXD do conversor deve estar conectado ao pino TXD do microcontrolador e o pino TXD do conversor, ao pino RXD do microcontrolador. Nos microcontroladores ATMEGA8, ATMEGA168 ou ATMEGA328 com encapsulamento DIP28, o RXD é o pino 2 e o TXD é o pino 3. (vide figura acima)

A conexão do microcontrolador ao conversor deve ser feita preferencialmente utilizando-se resistores entre 1k~10k ohm, conforme figura:
Uma vez que o conversor TTL-USB está conectado ao computador pela porta USB e ao microcontrolador conforme figura acima, é possível programar o chip a partir do ambiente de desenvolvimento Arduino.

Uma fez que um programa foi compilado, deve-se seguir os passos abaixo para enviá-lo ao chip:
  • clicar em:

  • pressionar rapidamente o botão do circuito e liberá-lo em seguida

É importante observar que o conversor TTL-USB pode não ser prontamente visível ao computador, pois pode haver a necessidade de que seja instalado um driver que permita tal comunicação. Os fabricantes, via de regra, disponibilizam livremente para download o driver necessário.

A título de exemplo, o conversor exibido na figura abaixo (vide datasheet) funciona diretamente no sistema operacional Ubuntu, enquando que no Windows há necessidade de instalar este driver fornecido pelo fabricante.

5 comentários:

  1. Ola! so para tirar uma duvida.
    Esse TTL-USB é a mesma coisa que o serial-usb (CHIP FTDI)?

    ResponderExcluir
  2. O chip FTDI da placa do Arduino é um conversor USB-TTL. Vale observar que há outros chips que realizam essa mesma função.

    ResponderExcluir
  3. boa tarde, por favor tire uma duvida de
    como usar este conversor em um arduino mini pro 16mhz atmega328?

    ResponderExcluir
  4. Olá. Caso esta placa trabalhe com tensões de 5V, basta conectar os pinos VCC, GND, RX e TX nos correspondentes pinos VCC, GND, TX e RX do conversor. Se a tensão de trabalho da placa for 3.3V, deve se utilizar um divisor de tensão para reduzir a tensão de saída dos pinos TX e RX do conversor de forma que se compatibilize com o esperado pela placa.

    ResponderExcluir
  5. Eu comprei um conversor CP2102 MODULES USB TO TTL ou seja como esta escrito Adptador USB Serial TTL CP2102 05 Pinos e quero ligar ele no meu Atmega 328P-PU na placa PlotBoard como esta escrito aí em cima sem usar o Uno até porque não tenho. Como faço é possível conforme voce escreveu?
    Agradeço qualquer ajuda.

    ResponderExcluir