The AVR toolchain, C libraries, and the avrdude downloader/uploader, can be installed from the Ubuntu repositories:
apt-get install gcc-avr avr-libc avrdude
-
Clone the avr-template repository (or fork it and clone your own repository).
git clone git@github.com:uctools/avr-template
-
Modify the Makefile:
- Set TARGET to the desired name of the output file (eg: TARGET = main)
- Set SOURCES to a list of your sources (eg: SOURCES = main.c two.c three.c)
- Set MCU to the AVR part number to build for (eg: MCU = atmega328p)
By default, the Makefile will build code for the ATmega328p, which is the microcontroller on the Arduino
-
Run
make
-
The output files will be created in the 'build' folder
- Modify the Makefile
-
Set PROGRAMMER to your programmer. This will be the
-c
option for avrdude -
Set PORT to the port your programmer is on. This will be the
-P
option for avrdudeBy default, the Makefile will flash an Arduino conenected over USB on
/dev/usbACM0
using the Arduino bootloader.
- Run
make flash
. You may need to run this command as root (sudo make flash
) if your user cannot access the port.