Files
aaio/Makefile
T

42 lines
1.0 KiB
Makefile

PROGRAM_NAME = example_blonk
BUILD_DIR = build
SERIALDEV = /dev/ttyUSB0
#MCU = atmega2560
#MCUSHORT = m2560
#MCUDEFS = -DF_CPU=16000000UL -DAAIO_MEGA2560
#PROG_PARAMS = -c wiring -P $(SERIALDEV) -D
#MCU = atmega328pb
#MCUSHORT = m328pb
#MCUDEFS = -DF_CPU=16000000UL -DAAIO_NANO
#PROG_PARAMS = -c arduino -P $(SERIALDEV) -D
MCU = atmega168pa
MCUSHORT = m168pa
MCUDEFS = -DF_CPU=16000000UL -DAAIO_NANO
PROG_PARAMS = -c arduino -P $(SERIALDEV) -D
#if you use urboot
#PROG_PARAMS = -c urclock -P $(SERIALDEV) -D
# if you use a hardware USB programmer
#PROG_PARAMS = -c usbasp
SUDOCMD = doas
all: $(PROGRAM_NAME)
$(BUILD_DIR):
mkdir -pv $(BUILD_DIR)
$(PROGRAM_NAME): $(BUILD_DIR)
avr-gcc -mmcu=$(MCU) $(MCUDEFS) -Wall -Os -o $(BUILD_DIR)/$(PROGRAM_NAME).elf $(PROGRAM_NAME).c
avr-objcopy -j .text -j .data -O ihex $(BUILD_DIR)/$(PROGRAM_NAME).elf $(BUILD_DIR)/$(PROGRAM_NAME).hex
upload: $(PROGRAM_NAME)
$(SUDOCMD) avrdude -p $(MCUSHORT) $(PROG_PARAMS) -U flash:w:$(BUILD_DIR)/$(PROGRAM_NAME).hex:i
clean:
rm -rf $(BUILD_DIR)