Bom dia a todos. Eu estou desenvolvendo no meu tcc um ambiente de robótica pedagógica livre utilizando o arduino. Para isto, estou desenvolvendo um software que servira para que crianças criem sequencias de comandos para um robô (virar a direita, parar, virar a esquerda) que gerará um código que será compilado e enviado para o arduino. Como eu poderia fazer isto? Minha primeira ideia era de fazer uma chamada ao sistema para executar em linha de comando a compilação e o envio. A compilação já encontrei algumas coisas mas envio ainda nada.
kaberdock:
Bom dia a todos. Eu estou desenvolvendo no meu tcc um ambiente de robótica pedagógica livre utilizando o arduino. Para isto, estou desenvolvendo um software que servira para que crianças criem sequencias de comandos para um robô (virar a direita, parar, virar a esquerda) que gerará um código que será compilado e enviado para o arduino. Como eu poderia fazer isto? Minha primeira ideia era de fazer uma chamada ao sistema para executar em linha de comando a compilação e o envio. A compilação já encontrei algumas coisas mas envio ainda nada.
Já agradeço pela ajuda
Oi kaberdock, tudo bem?
Estou trabalhando em um Makefile simples para executar esse processo. Basicamente, ele gera os comandos que precisam ser executados para se compilar todo o código e depois enviá-lo para o Arduino. Atualmente testei apenas em GNU/Linux e com o Arduino Uno, mas com algumas pequenas modificações roda em Mac OS com o Arduino Duemilanove também -- em Windows é um pouco mais complicado.
Mesmo que você não utilize o Makefile que estou desenvolvendo, você pode aproveitar para entender como ele funciona, quais parâmetros necessitam ser enviados ao compilador e então adaptar para resolver seu problema. Para ver o código, entre em:
alvaro, estou tentando utilizar sreu makefile para o duemilanove e ele compila certinho mas na hora de fazer upload ele da programer not responding, utilizando a ArduinoIDE ele faz upload normal.
Se abrires a Makefile com um editor de texto vais ver esta linha:
PORT=/dev/ttyACM0
Isto é apenas verdade para o computador do alvarojusten (ou para um sortudo qualquer no mundo).
Então, quando ligas o teu arduino e tentas configurar a ligação na IDE, vais a Tools->Serial Port e aparecem-te listado todos os portos disponíveis. Então, com a placa ligada, vês qual é o nome dado à tua placa e trocas o nome que aparece na Makefile pelo teu. Sempre que usares uma placa nova, irás ter de ajustar isso na MakeFile.
Outra coisa que pode estar a acontecer, é o facto da baud rate estar errada para o bootloader base do Arduino. Se eu me lembro correctamente, a baud antigamente era 9600 ou 19200, depois houve um upgrade e a baud passou a ser 57600 e agora com o Uno não sei qual é. Mas convém ter isso em atenção.