38 lines
805 B
Makefile
38 lines
805 B
Makefile
MCU?=atmega32
|
|
F_CPU=8000000
|
|
PROG?=dragon_jtag
|
|
DEBUGGER = dragon
|
|
PORT?=/dev/ttyUSB0
|
|
TYPE?=DEBUG
|
|
|
|
CC=avr-g++
|
|
OBJCOPY=avr-objcopy
|
|
CFLAGS=-Wall -g -O -mmcu=${MCU} -DF_CPU=${F_CPU} -I. -std=gnu++11 -D${TYPE} -Wno-write-strings
|
|
TARGET=main
|
|
SRCS=src/eeprom.cpp test/main.cpp test/usart/src/usart.cpp
|
|
|
|
default: build flash
|
|
|
|
build:
|
|
${CC} ${CFLAGS} -o bin/${TARGET}.bin ${SRCS}
|
|
${CC} ${CFLAGS} -o bin/${TARGET}.elf ${SRCS}
|
|
${OBJCOPY} -j .text -j .data -O ihex bin/${TARGET}.bin bin/${TARGET}.hex
|
|
|
|
flash:
|
|
avrdude -p ${MCU} -c ${PROG} -P ${PORT} ${BAUD} -U flash:w:bin/main.hex
|
|
|
|
clean:
|
|
rm -f bin/*
|
|
|
|
debug: flash avarice
|
|
avr-gdb -ex "target remote :4242" bin/main.elf
|
|
|
|
avarice:
|
|
sleep 1
|
|
avarice --file bin/main.elf --part ${MCU} --${DEBUGGER} :4242 &
|
|
|
|
term:
|
|
screen /dev/ttyUSB0 1000000
|
|
|
|
eeprom:
|
|
sh eeprom.sh
|