Algumas semanas atrás fiz o teste do Arduino Severino. Como fiz a montagem sozinho o único componente que gerou dúvidas foi o capacitor C8 pelo fato do mesmo estar com o positivo aterrado que não é comum. Salvo a exceção de quando a tensão for negativa e nesse caso ele vai trabalhar no ciclo inverso. Porém essa filtragem só ocorre em um semiciclo, então o mais correto seria não utilizar o capacitor bipolar e sim o apolar (considerando-se a polaridade pelo sentido da tensão e não da corrente).
http://toxinavirtual.blogspot.com.br/2011/11/arduino-severino_25.html
Seguem as fotos da montagem:
A primeira surpresa foi descobrir que o ATMega328 já vem com o Sketch Blink gravado de fábrica, logo que liguei a fonte de 12V o led já começou a piscar. Cometi um segundo erro ao montar um cabo RS-232 comum conforme o link abaixo.
http://www.storesat.com/tvsatelite/rs232.asp
O cabo RS-232 é utilizado para ligar um computador ao outro. Como os conectores dos computadores são sempre DB9 macho então o cabo é feito por DB9 fêmea em ambos os lados. Tive que desmontar e fazer apenas uma extensão com um conector macho e outro fêmea.
No software utilizei o Crunchbang que é equivalente ao Ubuntu, porém estável. Para instalar a IDE do Arduino:
sudo apt-get install arduino
Para a execução da IDE basta chamar pelo nome no terminal, porém o ideal é acessar como usuário root para garantir que não haverá problemas de acesso às portas paralela, USB e serial:
sudo arduino
O jumper da serial deve estar conectado para habilitar a serial. O outro jumper é do reset automático e não cheguei a utilizar.
Para gravar o bootloader fiz a montagem do cabo da paralela:
http://www.arduino.cc/en/Hacking/ParallelProgrammer
Quando fui gravar o bootloader deixei o jumper do reset automático conectado e devo dizer que não foi uma boa ideia. O Bootloader foi apagado nesse momento e nenhum sketch subia mais para o Arduino. Coloquei o CI em uma placa de Arduino UNO e o Sketch também não subiu. Nesse momento ficou clara a diferença entre sketch e bootloader. Demorei um tempo tentando descobrir o erro. Este erro me levou a descobrir que pode existir algum problema de corrente durante esse processo de gravação do bootloader. É necessário selecionar a placa correta para o CI, no caso selecionar o Arduino UNO ou Duemilanove. Após várias tentativas saquei o jumper do reset automático e deu certo.
Descobri outro formato de cabo com valores de resistores diferentes, algumas pessoas relataram que só conseguiram a gravação do bootloader sacando alguns resistores.
http://www.dl1dow.de/inhalt/arduino/bootloader/e_arduino_bootloader.htm
Outro formato de AVR me chamou atenção durante a pesquisa:
http://electronics-diy.com/avr_programmer.php
Não tive tempo ainda para fazer mais testes, mas pretendo colocar o osciloscópio na serial para medir e verificar o formato da forma de onda durante o funcionamento da serial.
As tensões encontradas nos pinos:
1= GND
2= 0V
3= -9.5V
4= -4.4V
As tensões são negativas e vindas diretas da saída serial do computador.
Próxima etapa seria fazer uma breakout ou alteração na placa para utilizar cabo USB.
http://toxinavirtual.blogspot.com.br/2011/11/arduino-severino_25.html
Seguem as fotos da montagem:
A primeira surpresa foi descobrir que o ATMega328 já vem com o Sketch Blink gravado de fábrica, logo que liguei a fonte de 12V o led já começou a piscar. Cometi um segundo erro ao montar um cabo RS-232 comum conforme o link abaixo.
http://www.storesat.com/tvsatelite/rs232.asp
O cabo RS-232 é utilizado para ligar um computador ao outro. Como os conectores dos computadores são sempre DB9 macho então o cabo é feito por DB9 fêmea em ambos os lados. Tive que desmontar e fazer apenas uma extensão com um conector macho e outro fêmea.
No software utilizei o Crunchbang que é equivalente ao Ubuntu, porém estável. Para instalar a IDE do Arduino:
sudo apt-get install arduino
Para a execução da IDE basta chamar pelo nome no terminal, porém o ideal é acessar como usuário root para garantir que não haverá problemas de acesso às portas paralela, USB e serial:
sudo arduino
O jumper da serial deve estar conectado para habilitar a serial. O outro jumper é do reset automático e não cheguei a utilizar.
Para gravar o bootloader fiz a montagem do cabo da paralela:
http://www.arduino.cc/en/Hacking/ParallelProgrammer
Quando fui gravar o bootloader deixei o jumper do reset automático conectado e devo dizer que não foi uma boa ideia. O Bootloader foi apagado nesse momento e nenhum sketch subia mais para o Arduino. Coloquei o CI em uma placa de Arduino UNO e o Sketch também não subiu. Nesse momento ficou clara a diferença entre sketch e bootloader. Demorei um tempo tentando descobrir o erro. Este erro me levou a descobrir que pode existir algum problema de corrente durante esse processo de gravação do bootloader. É necessário selecionar a placa correta para o CI, no caso selecionar o Arduino UNO ou Duemilanove. Após várias tentativas saquei o jumper do reset automático e deu certo.
Descobri outro formato de cabo com valores de resistores diferentes, algumas pessoas relataram que só conseguiram a gravação do bootloader sacando alguns resistores.
http://www.dl1dow.de/inhalt/arduino/bootloader/e_arduino_bootloader.htm
Outro formato de AVR me chamou atenção durante a pesquisa:
http://electronics-diy.com/avr_programmer.php
Não tive tempo ainda para fazer mais testes, mas pretendo colocar o osciloscópio na serial para medir e verificar o formato da forma de onda durante o funcionamento da serial.
As tensões encontradas nos pinos:
1= GND
2= 0V
3= -9.5V
4= -4.4V
As tensões são negativas e vindas diretas da saída serial do computador.
Próxima etapa seria fazer uma breakout ou alteração na placa para utilizar cabo USB.
e ae, Montou?
ResponderExcluirta funcionando?
montei um a uns dias deu erro de protocolo
e estou tentando descobrir o pq.
se puder me ajudar
Funcionou perfeitamente. O CI já vem com o blink de fábrica. Cola o erro aih quem sabe eu possa ajudar.
ResponderExcluirOlá Marcelo, tudo blz?
ResponderExcluirEstou me aventurando no arduino severino, mas não estou tendo muito sucesso...
Quando tento mandar algum sketch para o severino aparece a seguinte mensagem:
Binary sketch size: 1024 bytes (of a 30720 byte maximum)
avrdude: stk500_recv(): programmer is not responding
Meu severino tem um atmega328 e estou usando um conversor usb-serial com a gravação a partir de meu netbook.
Certo Emannuel, à distancia é difícil dizer alguma coisa, mas o tipo de erro mostra que a sinal da conexão com a placa não está chegando. Pode ser que seja o problema no cabo, eu nunca utilizei nenhum conversor para esse processo mas tenho vontade de testar. O que falta é tempo. Quando conseguir resolver dá um retorno pra confirmar a causa do problema.
ResponderExcluirOnde encontro os componentes para fabricar o meu?
ResponderExcluir