Como programar o Arduino Pro Mini com conversor FTDI FT232RL
Quem mexe com Arduino ou com outros microcontroladores já deve ter ouvido falar no conversor FTDI FT232RL. Ele é um conversor USB serial que permite a comunicação entre o computador e outros equipamentos eletrônicos que possuam porta de comunicação no padrão TTL.
O conversor FTDI FT232RL
FTDI são as iniciais de Future Technology Devices International (www.ftdichip.com), uma empresa especializada em tecnologia USB e que é a fabricante do chip FT232RL (datasheet), cérebro da placa mostrada na imagem acima.
No Arduino esse conversor é muito utilizado para programar placas que não possuem a comunicação USB-Serial. É o caso por exemplo do Arduino Pro Mini, mostrado abaixo.
O Arduino Pro Mini é uma placa ideal para projetos compactos Ela possui microcontrolador ATmega328p, 14 portas digitais, 8 analógicas, clock de 16 Mhz e memória de 32K. A programação dessa placa pode ser feita pelo Arduino Uno, utilizando os pinos laterais GRN, TX, RX, Vcc, GND e BLK do Pro Mini.
Veja também como utilizar o conversor FTDI com Lilypad no artigo Lilypad – O Arduino que você pode costurar na sua roupa.
Programando o Arduino Pro Mini com FTDI
Programar o Pro Mini com Arduino Uno dá, digamos assim, um certo trabalho, e é aí que entra o conversor FTDI FT232RL que mostramos no início do post.
Basta ligar o conversor ao Arduino na sequência mostrada abaixo. Ele também possui um jumper para selecionar o nível de sinal (5v ou 3.3V), leds indicadores de atividade na recepção e transmissão (RX/TX), e também um led que indica se o módulo está ligado:
Ao conectar o conversor FTDI ao computador, a instalação no Windows foi feita automaticamente, com dois dispositivos detectados : USB Serial Converter, e USB Serial Port:
É essa porta (no nosso caso, a COM21) que vamos utilizar para fazer a comunicação com o Arduino Pro Mini. Selecionamos a placa Arduino Pro or Pro Mini (5v, 16 MHz) w/ ATmega328 em Ferramentas => Placa e a porta COM21 em Ferramentas => Porta Serial:
Com essas pequenas configurações basta agora transferir os programas para o Arduino Pro Mini, do mesmo jeito que você faria com um Uno ou Mega por exemplo.
Lembrando que esse conversor FTDI pode ser utilizado também quando montamos o Arduino na protoboard. Desta form, assim teremos uma configuração completa com o ATmega e o conversor USB-Serial, o que facilita muito a gravação dos programas no microcontrolador.
Gostou? Confira outros posts com Arduino aqui mesmo no Arduino e Cia!
Arduino: 1.6.5 (Windows 7), Placa:"Arduino Mini, ATmega328"
O sketch usa 1.030 bytes (3%) de espaço de armazenamento para programas. O máximo são 28.672 bytes.
Variáveis globais usam 9 bytes (0%) de memória dinâmica, deixando 2.039 bytes para variáveis locais. O máximo são 2.048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xdb
Problema ao carregar para a placa. Veja http://www.arduino.cc/en/Guide/Troubleshooting#upload para sugestões.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xdb
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xdb
Este relatório deveria ter mais informações
"Mostrar saída verbosa durante a compilação"
habilitado em Arquivo > Preferências.
O Arduino tem um auto-reset, mas talvez o seu clone não faz? Nesse caso, você tem que pressionar a tecla reset na placa imediatamente antes de iniciar um upload
Veja se vc selecionou a placa correta !
Veja se a placa está selecionada corretamente.O meu deu serto depois!
Pode ser que vc selecionou a placa errada!
cara salvou! foi so pressionar o reset que o codigo carregou, so achei estranho porque na primeira vez qque fui caregar foi so o blink mesmo não precisou apertar o reset mas depois que fui tentar compilar novamente num deu de geit nenhum!!! fquei horas aqui e nada mas com sua dica, problema resolvido, muito obrigado! mas tem hora certa pra apertar rsrs quando o sketch caregar que mostrar as mensagens com o tamanho que o sketch ocupa ae sim pressione o reset se não pelo menos no meu aqui não da, estou so deixando essa dica se mais alguem precisar vlw
Bom dia Equipe Arduino e cia!
É possivel programar uma placa arduino mega usando conversor FTDI232?
Como ficaria esquema de ligação?
Este exemplo com arduino pro mini serve?
basta usar uma mega no lugar e ligar no RX e TX da placa mega? Como no exemplo?
obrigado.
Boa tarde Roberto,
Fazendo uma rápida pesquisa, parece que funciona, mas eu precisaria testar. No caso, você apenas conseguiria transferir programas, mas não gravar o bootloader.
Abraço
Boa tarde Arduino e Cia.
Muito obrigado pela resposta tão rápida.
Realmente é só transferencia de programação ( sketch) que eu quero fazer, estou com uma placa mega 2560 que queimou chip USB e gostaria de programa-la.E, também aumentar conhecimento e possibilidades…Que em grande parte sou grato a vocês.
Pelo que você pesquisou, então basta usar a placa mega no lugar da mini arduino, seguindo a sua receita, e fazer as ligações no (RX- D0 ) / ( TX-D1 ) da placa mega e enviar a programação.
Obrigado
Oi Roberto,
Teoricamente sim, mas preciso testar para falar com certeza se funciona.
Abraço!
ola boa noite estou querendo montar um projeto , tenho o Arduíno mega , mais por questões de espaço preciso utilizar o pro mini , penso em utilizar o arduino mega para transferir os skets para o pro mini , teria como fazer um tutorial explicando , tenho certeza que muita gente tenha esse interesse tbm
Ola . Sou leigo no assunto. Pra programar uma placa Arduino pro mini, tem que baixar algum programa ou somente conectar no computador. Se alguem puder responder agradeço.
Boa noite,
Você vai precisar da IDE do Arduino. O download é feito neste endereço: https://www.arduino.cc/en/Main/Software
Abraço!
Ola. O cabo para ligar O conversor ao computador é um Mini USB normal?
Bom dia,
Sim, cabo comum. Eu por exemplo usei o cabo de uma câmera digital que eu tenho aqui.
Abraço!
Bom dia
Estou tentando fazer um pequeno projeto com um Arduino Pro mini, um Sensor Barométrico e um Buzer. Queria que:
– Taxa de subida da Altitude barométrica: O Nível agudo (mais alto) do Bip reduz o tempo entre os bip´s, quanto mais rápida for a variação.
-Taxa de Descida da Altitude Barométrica: O Nível mais grave do Bip (mais baixo), o tempo entre Bip´s diminui, quanto mais rápida for a variação.
Não sei que parâmetros colocar e como colocar as informações no Arduino. Poderia me ajudar
Boa tarde Francisco,
Acho que as informações que você precisa estão neste post:
http://www.arduinoecia.com.br/2014/04/sensor-de-estacionamento-re-com-arduino.html
Você quer fazer a mesma coisa, mas ao invés de utilizar um sensor HC-SR04, você quer usar um sensor barométrico, certo ?
Creio que essas informações podem te ajudar. Se precisar de mais alguma coisa sobre esse projeto, entre em contato utilizando o formulário de contato no lado direito da página.
Abraço!
Olá, eu possuo um arduino mini 3.3v. Basta liga-lo da mesma maneira? Ou tenho que mudar a tensão?
Boa noite Johilton,
Tem que mudar. Coloque o jumper na posição 3.3V
Abraço!
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xe2
Alguém sabe como posso resolver esse problema para um Arduino Pro Mini 328p? Não estou conseguindo rodar nem o blink.
Estou com este mesmo problema, usando Windows 10. Meu ftdi está com os drivers tudo ok, pois o mesmo está funcionando perfeitamente no u-block gps. Alguma sugestão?
ola
Sou iniciante com progamação De Arduino, gostaria de saber se: Usando um exemplo, fiz um programa com Arduino Uno para piscar um Led, para isso é gravado a programação. Depois quero fazer outro programa usando um buzer.Minha duvida é, se preciso excluir o programa anterior ou se simplesmente gravar outro programa e o programa que estaria gravado já será excluído autoamticamente.
Grato
Boa noite,
Só gravar por cima. Ele já apaga o programa anterior.
Abraço!
Amigo, após passar o programa pro arduino Mini ATmega 328 eu posso tirar o FTDI fora e utilizar apenas o arduino? alimento ele normalmente pelo vcc 5v?
Oi Tales,
Isso, você programa o Arduino e depois pode tirar o FTDI. A alimentação vai no pino RAW (positivo) e no GND.
Abraço!
Amigos bom dia . comprei o ch340 usb e arduino mini. Aconteceu o LED azul do ch340 usb pisca muito rápido eu nao estava apertando o botão de reset do arduino pq descobri isso depois .agora o LED azul fica aceso direto, e sempre deu erro na programação na hora de passa o teste q pisca o LED … A como recupera o arduino mini pq quando plugo ele no ch340 o LED azul acende direto e pisca o LED do arduino o power esta aceso?
Bom dia,
Esse conversor que você comprou usa o CH340, é isso ? Me passe o link do produto para que eu possa dar uma olhada.
Abraço!
Bom dia pessoal, estou interessado em desenvolver Arduino, mas como tenho aeromodelo e quero colocar strobo com três estágios, taxiamento, vôo é pouso e decolagem, tudo controlado pelo rádio, tem como fazer dessa forma?
Boa tarde Pessoal, tenho intenção de fazer um carro radio controlado e o controle remoto para ele para gravar o comando no mini Arduíno pro eu tenho Cp2102 Conversor Usb Serial Ttl , consigo fazer a transferencia com ele?
Parceiros entendidos em Nano, tenho uma pergunta: Posso copiar um código embarcado no chip ? Tenho acesso e posso fazer backup do código gravado, ou é uma gravação de mão única ?
Agradeço a atenção.
Marcelo.
alguém pode me ajudar?
estou conectando o conversor normalmente no arduino mini pro 8mhz 3.3v mas somente os leds de funcionamento do conversor e do led funcionam… o Rx Tx do conversor piscam somente uma vez ao conectar e o computador não detecta o dispositivo nem mesmo no gerenciador
ALGUÉM PODE ME AJUDAR.
Montei o projeto mencionado acima com arduino pro mini (Processador ATEMEGA 328P, 5V, 16MHZ) e o conversor FTDI 232. Tudo foi montado conforme os esquemas mostrados na pagina desse site. O programa foi desenvolvido para testar a comunicação serial( serial monitor – IDE . Versão do arduino que eu estou usando é 1.8.3.
Programa
void setup() {
//Inicia a porta serial.
Serial.begin(9600);
}
void setup(){
// Inicia o loop.
Serial.Println("Um elefante pertuba muito mais");
Serial.println(75);
Serial.println(75, BIN);
delay(1000);
}
Quando vou monitorar esse programa estou encontrado essa incompatibilidade.
configuro no programa 9600 de baud rate e configuro 9600 no serial monitor é faço upload para o Arduino pro mini aparece na tela caracteres ilegiveis. Tentando entender o mantive o baud rate de 9600 do programa carregado no arduino pro mini e no baud rate do serial configurei 4800. Com essa configuração consegui visualizar e ler o que estava escrito na tela do serial monitor.
Fiz vários teste sempre colocando a metade da configuração do baud rate no serial monitor.
EX:
programa = 2400 serial monitor = 1200
programa = 9600 serial monitor = 4800
programa =19200 serial monitor = 9600
Alguém pode ajudar me e explicar o que está acontecendo. Desde já agradeço qualquer ajuda.
Olá! Estou tentando passar um programa para o arduino pro mini, mas só acendem leds vermelhos e dá o seguinte erro
"avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x31
Problema ao carregar para a placa. Veja http://www.arduino.cc/en/Guide/Troubleshooting#upload para sugestões."
Alguém pode me ajudar!!!!!!!!!!!!
Obrigada!
Elizangela
Oi Elizangela,
Você verificou as conexões? Veja se o RX e TX não está invertido, por favor.
Abraço!
Adilson
Oi, eu gostaria de saber se tenho que mudar alguma configuração no "Programador" dentro do software do arduino. No momento o meu está como "AVRISP mkll" e estou tendo o mesmo problema de algumas outras pessoas:
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x9a
Queria saber também se a tensão "default" do FTDI232 é de 5V, pois apenas conectei os pinos que já vêm soldados nele ao meu pro mini ATMega328P 16Mhz 5V e não utilizei jumper ou fio.
Além disso, minha porta está aparecendo como COM3 e não sei se é correspondente ao pro mini.
Muito obrigado. Aguardo a resposta de vocês.
Att., Enzo.
Bom dia amigo, eu ainda estou em dúvida sobre esse conversor.
Em poucas palavras, se o atmega já estiver em uma placa confeccionada (junto com esse módulo) e eu conectar ele via usb no computador – o programa aparecerá no computador para edição e em seguida compilação? Como uma atualização no código?
Boa noite,
Não seria bem uma "atualização". Você consegue por exemplo abrir a IDE do Arduino e gravar um novo programa no Atmega.
Abraço!
Adilson
tô usando um ttl pl2303 TA, configurado e constando como funcionando corretamente, com prolific e driver atualizado, ch340ser instalado, pro mini 5v 16mhz, programador AVRISP, já tentei clicar no reset antes do carregando e soltar quando aparecer, já tentei clicar uma vez no reset quando começar o carregando, já tentei segurar o reset até o final, tenho que entregar um projeto e não tô conseguindo passar pro pro mini
O sketch usa 930 bytes (3%) de espaço de armazenamento para programas. O máximo são 30720 bytes.
Variáveis globais usam 9 bytes (0%) de memória dinâmica, deixando 2039 bytes para variáveis locais. O máximo são 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x07
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x07
Problema ao carregar para a placa. Veja http://www.arduino.cc/en/Guide/Troubleshooting#upload para sugestões.
Também estou com o mesmo problema no Pro Mini de não conseguir visualizar as informações no Serial Monitor, assim como o amigo @IrenilRamos mencionou, também pude constatar a mesma configuração, e fazendo o teste enviando o mesmo código blink para o Mega 2560 e o Pro Mini, pude constatar que a Pro Mini pisca os leds muito mais lento que a Arduino Mega 2560. Alguém ai sabe o porque isso acontece ???
Boa tarde,
Interessante isso, parece ser algum problema de clock ou algo parecido. Se você alterar o baud rate no serial monitor consegue ver as informações?
Abraço!
Adilson