How to program a uC preloaded with Arduino-bootloader from AVRStudio
Posted on 16 May 2017 in misc
To-do: Explain the different ways of programming a microcontroller, its memory zones, bootloader zone, fuses, etc.
These are the steps to program a microcontroller (e.g. Atmega328p, aka Arduino Pro Mini), preloaded with an Arduino-compatible bootloader directly...
From AVR Studio
- Install avrdude from the WinAVR project, or find its path inside an installation of the ArduinoIDE.
- Open the Atmel Studio IDE.
- Go to the
Tools
menu and chooseExternal Tools
. - Add a new one named
avrdude
, with its path pointing to theavrdude.exe
file you found in the first step above. - In
Arguments
, write the following (for Arduino Pro Mini, Atmega328p), obviously replacing the path toavrdude.conf
, the serial port name with your own actual values. Alternatively, replace the quoted string between:w:
and:i
with the full, absolute path of the final.hex
file produced by your project compilation.-C "C:\avrdude\avrdude.conf" -p atmega328p -c arduino -P COM9 -b 57600 -U flash:w:"$(ProjectDir)Debug\$(ItemFileName).hex":i
From a Linux terminal
-
Install avrdude:
sudo apt install avrdude
-
Take the compiled program in
.hex
format and program it with:avrdude -p atmega328p -c arduino -P /dev/ttyUSB0 -b 57600 -U flash:w:"YOURPROGRAM.hex":i