# Processortyp M fuer Compiler, N fuer avrdude:
#M=atmega328p
#N=m328p
M=atmega2560
N=m2560
#FCPU=16000000

C=avr-gcc -mmcu=$M -Wall -Os -c
AS=avr-as
L=avr-gcc -mmcu=$M -Wall -Os
#L=avr-gcc -mmcu=$M -Wall -Os -DF_CPU=$(FCPU)

# fuer avrdude-Aufruf unter Linux:
TTY=/dev/ttyUSB0
# fuer avrdude-Aufruf unter MacOSX:
#TTY=/dev/tty.serial-0001

# verwendeter Programmer:
#P=avr910  #fuer mySmartUSB MK2
P=stk500v2 #fuer mySmartUSB light

all: echtuhr.hex

echtuhr.hex: echtuhr.cc lcdmoduli2c4blau.c lcdmoduli2c4blau.h
	$L echtuhr.cc lcdmoduli2c4blau.c rtc.c extmem.c -o echtuhr.elf
	avr-objcopy -O ihex -R .eeprom echtuhr.elf echtuhr.hex
	avr-objdump -h -S echtuhr.elf > echtuhr.lss

arduino-version: echtuhr.cc
	mkdir -p arduino-version
	mkdir -p arduino-version/echtuhr
	cp -p echtuhr.cc arduino-version/echtuhr/echtuhr.ino
	cp -p lcdmoduli2c4blau.* arduino-version/echtuhr/
	cp -p rtc.* arduino-version/echtuhr/
	cp -p i2c.h arduino-version/echtuhr/
	cp -p rtc_korr.h arduino-version/echtuhr/

check:
	avrdude -p $N -c $P -P $(TTY) -v

fusesetzen-arduinomega-default:
	avrdude -p $N -c $P -P $(TTY) -U hfuse:w:0xD8:m
	avrdude -p $N -c $P -P $(TTY) -U lfuse:w:0xFF:m
#	avrdude -p $N -c $P -P $(TTY) -U efuse:w:0xFD:m

install: echtuhr.hex
	avrdude -p $N -c $P -P $(TTY) -U flash:w:echtuhr.hex:i

clean:
	rm -f *~ *.o *.elf
clean_all:
	rm -f *~ *.o *.elf *.lss *.hex
	rm -rf arduino-version
