Subir a un Arduino desde la línea de comando


8

Si tengo un boceto compilado en hexadecimal, ¿es posible cargar este boceto en una placa Arduino usando avrdude directamente desde la línea de comandos?

Pekkaa descubrió que arduino ide ejecuta el siguiente comando al cargar el boceto:

./hardware/tools/avrdude -Chardware/tools/avrdude.conf -pm328p -cstk500v1 -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/home/pekka/sketchbook/Blink2/applet/Blink2.hex 

Respuestas:


5

El IDE de arduino restablece el arduino adjunto antes de ejecutar avrdude. Lo hace diciéndole al dispositivo FTDI que pulse la línea DTR que está conectada al pin de reinicio del arduino. Pekkaa encontró el código perl de ejemplo que hace esto y actualizó el hilo en los foros de Arduino.

Para completar, aquí está el comando que usaron para cargar el archivo .hex:

perl -MDevice::SerialPort -e 'Device::SerialPort->new("/dev/ttyUSB0")->pulse_dtr_on(1000)'; \
./hardware/tools/avrdude -Chardware/tools/avrdude.conf -q -q -pm328p -cstk500v1 -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/home/pekka/sketchbook/Blink2/applet/Blink2.hex;

También hay un script de Python para resetear arduinos que puede usarse en lugar del Perl si tiene problemas para que funcione en su sistema.


URL correcta para el código de Python de la Universidad de Kent: projects.cs.kent.ac.uk/projects/kroc/trac/browser/kroc/trunk/…
Dave

Interfirió su sugerencia en la respuesta de @ Adam; Será actualizado pronto. ¡Gracias!
mordida del

IIRC puede realizar el restablecimiento usando stty sin necesidad de python o perl.
Chris Stratton
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.