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
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.