Mexer com o Arduino é muito prático quando você está em um ambiente de testes, em cima da bancada, com uma infinidade de fios encaixados na protoboard. Por outro lado, às vezes existe a necessidade de se fazer instalações permanentes do Arduino, em espaços restritos.
Vamos pegar como exemplo um projeto de acionamento de lâmpada utilizando relé e controle remoto IR, controlado pelo Arduino Uno. Se você for utilizar isso em algum cômodo da sua residência, provavelmente vai ter que colocar o Arduino perto do interruptor para ligar os fios, e improvisar uma caixa ou algum tipo de suporte para a placa. Seria bem mais prático se você pudesse colocar todo o circuito dentro da própria caixa do interruptor, embutida na parede.
Para esses casos, existe uma versão reduzida do Arduino chamada Arduino Pro Mini, uma placa de 34 x 19 mm que faz tudo o que um Arduino “normal” faz, sem ocupar tanto espaço.
Antes de detalharmos as conexões da placa, vamos dar uma olhada em suas principais características:
- Microcontrolador ATmega328p
- 14 Portas digitais, das quais 6 podem ser usadas como PWM
- 8 portas analógicas
- Botão de reset
- Alimentação : 5 à 12v
- Memória de 32K
- Led indicador de funcionamento e led ligado à porta 13, como no Arduino Uno
- Corrente máxima por porta : 40 mA
- Clock : 16 Mhz
O modelo da imagem acima, que é vendido na MakerHero, vem com 2 barras de pinos para os conectores das portas laterais, e 1 barra de pinos 90 graus para conexão dos pinos de comunicação com o módulo FTDI, já que essa placa não vem com a parte de comunicação USB embutida.
Os pinos no lado direito (GRN, TX, RX, Vcc, GND e BLK) são usados para alimentação e programação, e devem ser ligados na seguinte ordem :
GRN – Ligado à porta RESET do Arduino
TXD – Ligado ao pino 1 (TX) do Arduino
RX – Ligado ao pino 0 (RX) do Arduino
Vcc – Ligado ao 5v do Arduino
GND – Ligado ao GND do Arduino
BLK – Não conectado
Atenção nessa ligação, pois alguns módulos podem vir com essa pinagem invertida, mas você deve seguir o esquema de ligação listado acima, ok ?
Finalmente, os pinos nas laterais são utilizados pelas portas e também para alimentação do Arduino Mini utilizando uma fonte externa.
Como eu comentei acima, o Arduino Mini vem com 3 barras de pinos, mas elas não vem soldadas. Assim, você pode escolher a configuração que seja mais adequada ao seu projeto, e até mesmo nem usar a barra de pinos, soldando direto os fios nas portas ou utilizando algum outro tipo de conector.
A parte de programação é semelhante às outras placas Arduino, com a diferença que no Arduino Mini o circuito de comunicação USB não está embutido na placa. Logo tem a opção de adquirir um módulo FTDI, como esse…
…ou então, se você tem um Arduino Uno disponível, pode usar o procedimento a seguir para programar seu Arduino Mini.
Antes de mais nada, é necessário retirar o microcontrolador Atmega do Arduino Uno, para evitar qualquer tipo de conflito que atrapalhe o funcionamento do circuito. Retirado o chip, monte o circuito da seguinte maneira :
Conecte o cabo USB no Arduino Uno e abra a IDE do Arduino. Observe que o Arduino Mini também será ligado, já que está sendo alimentado pelos 5v do Arduino Uno.
Na IDE, vá no menu FERRAMENTAS, depois em PLACA, e escolha “ARDUINO PRO or PRO MINI (5V, 16 Mhz) W/ ATmega328” :
Feito isso, utilize a IDE para carregar normalmente seu programa no Arduino Mini. Para teste, utilizei a porta 7 para piscar um led :
//Programa : Teste Arduino Mini //Autor : Arduino e Cia int portaled = 7; void setup() { pinMode(portaled, OUTPUT); } void loop() { digitalWrite(portaled, HIGH); delay(1000); digitalWrite(portaled, LOW); delay(1000); }
Para usar o seu Arduino Mini depois de programado, sem depender do Arduino Uno, conecte uma fonte de alimentação 5v utilizando as portas laterais:
Prático, não ? O Arduino Mini também pode se mostrar muito útil em configurações com o Módulo RF 433 Mhz, por exemplo, enviando dados de um sensor para um webserver ou para um outro Arduino, mas isso é assunto para um próximo post. Até lá !
Gostou? Deixe seu comentário logo abaixo.
Que tutorial excelente! Pena que só percebi a existência dele depois de comprar o cabo conversor USB TTL. Testei com um Uno e funcionou de primeira com o mesmo exemplo do led.
Parabéns!
Olá Rafael!
Obrigado!
Abraços!
Vinícius – Equipe MakerHero
Boa tarde.
Não consigo ver imagens aqui no blog. Já tentei em outro navegador e não veja imagens. Alguém mais tem reclamado isto? Alguma dica para resolver?
Olá Jairo!
Pedimos desculpas pelo transtorno!
Já estamos trabalhando para restabelecer as imagens o mais rápido possível.
Abraços!
Vinícius – Equipe MakerHero
Eu fiz um carrinho com o arduíno Mine pro e gostaria de dar vida no carrinho mas não sei os códigos e nem programar ,quem poderia me ajudar a colocar para funcionar .obrigado
Olá Landulpho,
Você pode postar sua ideia na nossa comunidade no facebook, https://www.facebook.com/groups/272908123918982
Lá o pessoal deve conseguir te ajudar com esse projeto.
Abraços!
Vinícius – Equipe MakerHero
Boa noite.
Gostaria de saber se com este circuito, se eu fazer qualquer programa que rodaria em um Arduino UNO, tipo programar um sensor de umidade de solo com um led, e passar para o Arduino Pro Mini, vai funcionar?
Olá Allan,
Sim, vai funcionar. Você só tem que atentar à numeração dos pinos na hora de fazer as conexões e a programação.
Eles utilizam o mesmo micro controlador.
Abraços!
Vinícius – Equipe MakerHero
olá td bem? tenho uma duvida,fiz as ligações como mostra a ilustração e deu errado.
depois disso não conciigo mais carregar nem um sketch da bibiotecla do arduino!
pesso sua ajuda amigo,desd jà OBRIGADO.
Olá Iran,
Seu Arduino Mini aparece conectado em uma posta COM em Ferramentas > Porta?
Abraço!
Rosana – Equipe MakerHero
É possível usar o pro mini com a raspberry pi zero? alimentando o pro mini com os GPIOs da rasp e realizando a conexão entre as portas serial?
Olá, Marina, tudo bem?
Não é aconselhável tal ação, isto porque a corrente proveniente da RPi é inferior para um bom funcionamento da Pro Mini.
Abraços!
Diogo – Equipe MakerHero
Tentei gravar um Uno generico através de um Uno Original como descrito no tutorial e conectei o reset das duas placas. Não gravou e a Uno generica não grava mais pela USB. O que pode ter acontecido?
André, pode ter ficado sem bootloader (deve ser corrompido de alguma forma). Esse link pode te ajudar: https://learn.sparkfun.com/tutorials/installing-an-arduino-bootloader/all
Abraços!
Diogo – Equipe MakerHero
Bom dia
Parabéns, funcionou muito bem. Tentei carregar o mini por varios caminhos, porem o seu foi o unico que funcionou.
Obrigado.
Adorei a forma de apresentação e explicação, bem simples e objetivo. Parabens, continuarei a segui-lo
Wanderley,
Ficamos muito felizes que curtiu!
Abraços e cuide-se com o COVID-19!
Diogo – Equipe MakerHero
Como transferir um programa para um Arduino Pro Mini utilizando outro Arduino, porém sem uso de notebook/computador?
Tem como programar um arduino uno usando outro arduino uno? Como ficaria as conexoes?
É que um dos meus arduinos nao esta recebendo mais o skecth, mas ele funciona.
Rafael,
Dê uma olhada no assunto Arduino as ISP: https://www.arduino.cc/en/tutorial/arduinoISP
Abraços!
Diogo – Equipe MakerHero
Prezados,
eu utilizei o Arduino Uno algumas vezes, sem problemas.
Estou iniciando meus testes com o Pro-mini agora.
Peço o favor de verificarem a última imagem que vocês colocaram, do Pro-mini ligado a um conjunto de 4 pilhas AA.
Até onde eu entendi, o fio vermelho das pilhas deveria ser ligado ao terminal RAW, não ao Vcc.
Obrigado
boas
nao consigo.
porque será?
Olá, João,
Você precisa detalhar o que fez e o seu problema para que possamos te ajudar 😉
Abraços!
Diogo – Equipe MakerHero
Parabéns pelo post, muito didático.
Olá Carlos,
É muito bom saber que nosso trabalho te ajudou 🙂
Abraço!
Rosana – Equipe MakerHero
Show a explicação
Olá! É possível comunicar o Pro Mini com dois dispositivos usando a serial?
Por exemplo:
Um Pro mini ligado ao mesmo tempo a uma shield Bluetooth e um display com porta serial. Ele receberia dados via Bluetooth e “escreveria” no display utilizando a serial.
Desde já agradeço e parabéns pelo post.
Olá Edelson!
Não é simples fazer isso, acredito que não seja nem possível sem acrescentar outro componente. Ao contrário de outras comunicações, como a I2C, a serial não faz uma rede e não seria possível através dos mesmos 2 fios comunicar com mais dispositivos.
Sugiro você utilizar um display que comunique de outra forma, aí não teria problema.
Abraços!
André – Equipe MakerHero
Bom dia Mestre;
Adilson estou pensando em um pequeno projeto onde gostaria de acionar um mini selenóide, em conjunto com o MPU6050.
Neste caso o mini Arduíno me da um bom suporte?
Penso ainda que esta interface entre as placas e o selenóide seja por infravermelho, será que consigo.
Vou ter que apender a programar MPU (acelerômetro e giroscópio), mas vou tentar.
Abraço.
Olá Ernani!
Com paciência e vontade você consegue sim!
Sugiro ir por partes: primeiro faz funcionar bem o MPU e depois vai para o acionamento do relé.
Sobre o mini, funciona perfeitamente com solenóides, pode ficar tranquilo.
Abraços!
André – Equipe MakerHero
Boa noite, pessoal venho aqui perguntar humildemente se alguém tem o firmware original dessa placa?
IoT Surfboard.
ola o meu arduino é o uno so que ele é smd como eu faria este procedimento?
pensei em cortar as trilhas rx tx de forma que posso jumpea-las quando assim eu quiser vc saberia me dizer se fazendo isso possa funcionar? ou teria alguma outra sugestão? desde ja agradeço.
Sou urias elmom tem como programar pop 168 pela placa uno
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.
eu gostaria de saber qual é o tempo máximo de delay de um arduino
Boa noite Adilson.
Gostaria de tirar uma dúvida sobre este post seu.
Para este exemplo é necessário baixar algum drive no computador ou algo parecido? Estou perguntando porque tenho um arduíno pro-mini e estou tentando programa-lo há algum tempo, porém sem sucesso. Inclusive já fiz esse procedimento que você descreve com um arduíno UNO, mas também sem sucesso.
Existe algo que eu possa fazer para conseguir programar esse arduíno pro mini?
Obrigado.
Olá possuo um Arduino Uno em que o Atmega é soldado na placa, quais mudanças devo fazer para consegui upar codigos para o Pro Mini?
Olá Robson!
Infelizmente neste tutorial mostramos como fazer apenas com o Arduino que possui Atmega removível.
mas como indicado no post, você também pode usar um conversor USB-serial como o seguinte: https://www.makerhero.com/produto/placa-ftdi-ft232rl-conversor-usb-serial/
Olá,
Eu gostaria de fazer exatamente o inverso do processo. no caso programar um Uno utilizando o micro como intermediário. tentei executar o mesmo processo e não obtive resultado.
Olá.
Dá para fazer o mesmo para o Arduino Pro Mini de 3.3V?!
Ele aceita o leitor de corrente com a inicialização da biblioteca (#include “EmonLib.h”
)(EnergyMonitor emon1;) como arduino uno?
Olá, Adilson!!
Excelente explicação!
Segui os procedimentos e, na escolha da placa (pro mini 328P), não está disponível a porta COM. Daí escolhi o arduino nano (que usa o mesmo microcontrolador) e carregou normalmente. Essa observação pode ajudar alguns colegas. Uso o Windows 10 com IDE 1.6.2.
Um abraço,
qual a diferença pratica entre esses dois módulos?
&
Boa tarde.
Estou na primeira experiencia com o Arduino, estou usando um Arduini Pro mini com um Buzer, Ja baixei o IDE para configuração , fiz a pré configuração e coloquei alguns comandos para testar, a principio os comandos estão corretos, pois coloquei para carregar e não mostrou erros. Depois que carregar o programa no Software, o Arduino não deveria funcionar? tem mais algum procedimento para fazer? E para mudar valores colocado no programa, basta somente alterar e colocar para carregar novamente? Por favor, poderia me dar com umas dicas.
Desde já agradeço.
Boa tarde Adir,
Você transferiu o programa para o Arduino, correto ? A sequencia é mais ou menos essa: Programa -> Compilação (ok, sem erros) -> Transferência para o Arduino.
Depois dessa transferência, o programa já estará sendo executado na memória do Arduino.
Abraço!
Adilson – Equipe MakerHero
Boa Noite!
Estou tentando programar utilizando um arduino UNO conforme o circuito, porém aparece a seguinte mensagem de erro:
avrdude: verification error, first mismatch at byte 0x0006
0x79 != 0x6e
avrdude: verification error; content mismatch
Obrigado
Thiago, parece que você adquiriu um módulo arduino pro mini que não foi gravado o bootloader. Busque sobre o assunto na internet, há diversas formas de fazer a conexão e gravar o bootloader.
Adilson bom dia!
É possivel programar uma placa arduino mega usando FTDI232 ?
Como seriam as ligações?
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
Adilson – Equipe MakerHero
Boa noite estou utilizando o arduino Mini com o conversor FTDI
E estou com esse erro:
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
Poderia me ajudar?
Att
Bom tarde, MakerHero. Tenho aqui comigo Mini Arduino Pro, ele funciona com uma usb alimentando e comunicando. Sendo que o RXD E TXD, não estão comunicando…quando eu faço o upload de um sketch, ele fica carregando. O que será isto? e você sabe de alguma solução?
Boa tarde Bruno,
Que tipo de adaptador você está utilizando para alimentar e carregar o programa pela USB ?
Grato.
Adilson – Equipe MakerHero
Olá Bruno, eu estava com um problema parecido quando eu estava utilizando um conversor serial baseado em Prolific com apenas 4 pinos (TX, RX, GND e VCC), não tinha o DTR. Então depois de pesquisar muito, encontrei uma solução:
1º Na aba de Ferramentas -> Programador: AVR ISP. Tem que selecionar esse.
2º Quando vc mandar carregar o código, segure o botão de reset enquanto estiver Copilando Sketch, quando aparecer Carregando… Solte o botão de Reset e espere…
Pronto, código carregado
Nem assim consegui carregar o programa no pro mini, ja tentei de tudo, quase desistindo……
Boa noite, consigo conectar um módulo Bluetooth?
Boa noite Eduardo,
Consegue sim, use os pinos RX e TX do Arduino Pro Mini.
Abraço.
Adilson – Equipe MakerHero
Eu poderia usar uma porta serial do Arduino Pro Mini com um módulo Bluetooth e a outra para ligar com um Motor Shield, se sim como eu diferenciaria elas na programação?
Boa noite Ulisses,
Não entendi. Como você vai ligar o motor shield na porta serial?
Grato.
Adilson – Equipe MakerHero
Segue vídeo explicando como programar com o MEGA.
https://www.youtube.com/watch?v=BKFhREO6zVI
Olá. meu arduino mim não tem a porta GRN. Só uma porta DTR, será a mesma ?
Boa noite Heitor,
Pode utilizar a DTR.
Abraço.
Adilson – Equipe MakerHero
Olá. Consegui fazer ele funcionar. Valeu pela ajuda.
Mas tenho outra pergunta. Esse Arduíno tem o tamanho bem reduzido sendo tão portátil cabe até numa ponta de caneta é possível transformar ele numa ponta logica? Para que ele exiba níveis lógicos e talvez a frequência do sinal medido?
Boa noite Heitor,
É uma boa sugestão de uso, mas não temos informações sobre utilização do ARduino com esse propósito.
Abraço.
Adilson – Equipe MakerHero
Mas é necessário outro Arduíno para programar este?
Boa noite Hector,
Não necessariamente, você pode utilizar um conversor FTDI, como nesse artigo : http://www.arduinoecia.com.br/2014/09/conversor-ftdi-ft232rl-arduino-pro-mini.html
Abraço.
Adilson – Equipe MakerHero
Oi! muito bom, mas como é que vcs deixaram a IDE desse jeito ai, com fundo preto?
Boa tarde Aurélio,
Nós utilizamos as informações desse post :
http://www.arduinoecia.com.br/2013/07/como-trocar-as-cores-da-ide-do-arduino.html
Abraço.
Adilson – Equipe MakerHero
Amigo, no meu não funcionou. Tentei com duas placas Arduíno diferentes. A proposito falta algo na sua foto. o Anodo do LED nao esta conectado a lugar nenhum.
Desculpa. Funcionou sim. Ao soldar o pino TX tinha ficado meio frouxo. Revisei as soldas e funcionou. Obrigado.
Boa noite,
Legal ! Obrigado pelo retorno.
Abraço !
Adilson – Equipe MakerHero
Boa noite,
Obrigado por avisar, realmente o segundo circuito ficou sem o GND. Vamos consertar.
Estranho não ter funcionado. Veja se por acaso a marcação na placa não está invertida.
Grato.
Adilson – Equipe MakerHero
Gostaria de saber se posso também utilizar o Arduino Mega ADK para programar o Mini?
Boa tarde Ruani,
Não testamos esse procedimento ainda. A principio o ATMega é retirado do Arduino UNO para evitar conflitos, mas isso não pode ser feito no ADK, já que o microcontrolador é soldado. Você pode tentar também utilizar as outras portas seriais do ADK para programar o mini, já que o ADK possui 4 seriais:
Serial: 0 (RX) and 1 (TX); Serial 1: 19 (RX) and 18 (TX); Serial 2: 17 (RX) and 16 (TX); Serial 3: 15 (RX) and 14 (TX).
Abraço !
Adilson – Equipe MakerHero
Eu poderia conectar uma bateria de 9V para alimentar o arduino pro mini ?
Boa noite Thadeu,
Sim, o Arduino Mini pode ser alimentado por uma bateria de 9v.
Abraço.
Adilson – Equipe MakerHero
Boa Tarde,
O arduino pro mini, faz todas as coisas que o arduino uno faz ?
Eu conseguiria fazer esse projeto no arduino pro mini ?
Por exemplo, eu tenho uma shield de vibração e toda vez que detectar vibração aciona um buzzer.
Muito Obrigado
Boa noite Thadeu,
Sim, você pode utilizar os mesmos programas.
Abraço.
Adilson – Equipe MakerHero
Tem como programar o PRO MINI utilizando o arduino NANO v3?
Sim, o procedimento é quase o mesmo, exceto que não se conecta o pino tx
A gravação é feita normalmente, como se fosse uma única placa nano, mas o programa vai para os dois!
pró -> nano:
grn -> rst
rx -> rx
vcc -> 5V
gnd -> gnd
Adilson – Equipe MakerHero