cleanup: makefile, hbc and removed unused files
[lra-as-sensor] / Makefile
index 27dfb39..9012305 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,16 +1,19 @@
-# ATmega328P, shitty Chinese arduino clone (just an atmega328p with arduino bootloader/flasher)
+# attiny25 makefile
 
 MCU = attiny25
+DEVICE = t25
 F_CPU = 8000000UL
 BAUD = 57600
 
-PROGRAMMER_TYPE = arduino
+PROGRAMMER_TYPE = usbasp
 
 CC = avr-gcc
+GDB = avr-gdb
 OBJCOPY = avr-objcopy
 OBJDUMP = avr-objdump
 AVRSIZE = avr-size
 AVRDUDE = avrdude
+SIMAVR = simavr
 
 CPPFLAGS = -DF_CPU=$(F_CPU) -DBAUD=$(BAUD) -I.
 CFLAGS = -Os -g -Wall
@@ -19,7 +22,7 @@ CFLAGS += -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
 LDFLAGS = -Wl,-Map,hbc.map
 TARGET_ARCH = -mmcu=$(MCU)
 
-DEPS = 
+DEPS =
 
 ODIR = obj
 _OBJ = hbc.o
@@ -30,11 +33,18 @@ $(ODIR)/%.o: %.c $(DEPS)
        $(CC) -c $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $< -o $@
 
 %.elf: $(OBJ)
-       $(CC) $(LDFLAGS) $(TARGET_ARCH) $^ -o $@
+       $(CC) $(CFLAGS) $(LDFLAGS) $(TARGET_ARCH) $^ -o $@
 
+# TODO: add fuse section with .j .fuse
 %.hex: %.elf
        $(OBJCOPY) -j .text -j .data -O ihex $< $@
 
+#
+# for binary output 
+#
+#%.bin: %.elf
+#      $(OBJCOPY) -j .text -j .data -O binary $< $@
+
 all: hbc.hex
 
 .PHONY: clean
@@ -42,13 +52,20 @@ all: hbc.hex
 clean: 
        rm -rf $(ODIR)/*.o *.hex *.elf *.map
 
-
 check-dev: 
-               $(AVRDUDE) -p m328p -c $(PROGRAMMER_TYPE) -b $(BAUD) -P /dev/ttyUSB0
+       $(AVRDUDE) -p $(DEVICE) -c $(PROGRAMMER_TYPE) -b $(BAUD)
 
 flash:
-       $(AVRDUDE) -p m328p -c $(PROGRAMMER_TYPE) -b $(BAUD) -P /dev/ttyUSB0 -U flash:w:flash.hex:i
+       $(AVRDUDE) -p $(DEVICE) -c $(PROGRAMMER_TYPE) -b $(BAUD) -U flash:w:hbc.hex:i
 
 read-flash-bin:        
-               $(AVRDUDE) -p m328p -c $(PROGRAMMER_TYPE) -b $(BAUD) -P /dev/ttyUSB0 -U flash:r:flash.bin:r
+       $(AVRDUDE) -p $(DEVICE) -c $(PROGRAMMER_TYPE) -b $(BAUD) -P /dev/ttyUSB0 -U flash:r:flash.bin:r
+
+# simulator runs on localhost:1234
+# load .elf file with avr-sim hex.elf
+# and start debugging 
+sim:
+       $(SIMAVR) -f $(F_CPU) -m $(MCU) -g -t hbc.hex
 
+gdb:
+       $(GDB) -x gdb-commands.txt hbc.elf