Skript file: /~heha/basteln/PC/SHT11/SHT11-HID-USB.zip/SHT11/Makefile

# Project: Temperature and Humidity sensor with Sensirion SHT11 as HID-USB
# Autor: Henrik Haftmann
# Creation: 130714
# Tabsize: 8, Encoding: UTF-8, LineEnds: LF

DEVICE  = attiny85
PROJECT = sht11
AVRDUDE = avrdude -c pony-stk200 -P lpt1 -p $(DEVICE) -y
USBDRV  = ../usbdrv
COMPILE = avr-gcc -Wall -Wno-parentheses -Os -fno-move-loop-invariants -I. -I$(USBDRV) -mmcu=$(DEVICE) -DF_CPU=16500000
OBJECTS = usbdrvasm.o $(PROJECT).o

# symbolic targets:
all: $(PROJECT).hex disasm
disasm: $(PROJECT).lst
# recompile project for “make flash” but not for “make program”
flash: $(PROJECT).hex
	$(AVRDUDE) -e -U flash:w:$<:i

# Fuse high byte:
HFUSE = 0xD5
# 1 1 0 1  0 1 0 0
# │ │ │ │  │ └─┴─┴──── BODLEVEL 2..0 (brownout trigger level → 4.3V)
# │ │ │ │  └────────── EESAVE (preserve EEPROM on Chip Erase → preserve)
# │ │ │ └───────────── WDTON (watchdog timer always on → disable)
# │ │ └─────────────── SPIEN (enable serial programming → enabled)
# │ └───────────────── DWEN (debug wire enable → disabled)
# └─────────────────── RSTDISBL (disable external reset → enabled)
#
# Fuse low byte:
LFUSE = 0xE1
# 1 1 1 0  0 0 0 1
# │ │ └┬┘  └─┴─┴─┴──── CKSEL 3..0 (clock selection → HF PLL)
# │ │  └────────────── SUT 1..0 (BOD enabled, fast rising power)
# │ └───────────────── CKOUT (clock output on CKOUT pin → disabled)
# └─────────────────── CKDIV8 (divide clock by 8 → don't divide)
fuse:
	$(AVRDUDE) -U hfuse:w:$(HFUSE):m -U lfuse:w:$(LFUSE):m -E noreset

program:
	$(AVRDUDE) -e -U hfuse:w:$(HFUSE):m -U lfuse:w:$(LFUSE):m -U flash:w:$(PROJECT).hex:i -E noreset

clean:
	rm -f $(PROJECT).elf $(PROJECT).lst $(OBJECTS)

# file targets:
$(PROJECT).elf: $(OBJECTS)
	$(COMPILE) -o $@ $(OBJECTS)
	avr-size --mcu=$(DEVICE) -C $@

$(PROJECT).hex: $(PROJECT).elf
	rm -f $@
	avr-objcopy -j .text -j .data -O ihex $< $@

$(PROJECT).lst:	$(PROJECT).elf
	avr-objdump -d $< > $@

$(PROJECT).o: $(PROJECT).c Makefile usbconfig.h
	$(COMPILE) -c $< -o $@

usbdrvasm.o: $(USBDRV)/usbdrvasm.S Makefile usbconfig.h
	$(COMPILE) -c $< -o $@
Detected encoding: UTF-80