diff options
author | lonkaars <loek@pipeframe.xyz> | 2023-04-25 19:48:52 +0200 |
---|---|---|
committer | lonkaars <loek@pipeframe.xyz> | 2023-04-25 19:48:52 +0200 |
commit | 3a5c0f9bc2f9049114228e472826e31423dc5263 (patch) | |
tree | fe659f30cb5da82497e46184b837abafdb72cad4 /zumo |
pololu blink build system working
Diffstat (limited to 'zumo')
-rw-r--r-- | zumo/.gitignore | 5 | ||||
-rw-r--r-- | zumo/main.c | 15 | ||||
-rw-r--r-- | zumo/makefile | 40 |
3 files changed, 60 insertions, 0 deletions
diff --git a/zumo/.gitignore b/zumo/.gitignore new file mode 100644 index 0000000..d3e1535 --- /dev/null +++ b/zumo/.gitignore @@ -0,0 +1,5 @@ +main +*.o +*.hex +compile_commands.json +.cache diff --git a/zumo/main.c b/zumo/main.c new file mode 100644 index 0000000..ab66db4 --- /dev/null +++ b/zumo/main.c @@ -0,0 +1,15 @@ +#define F_CPU 16000000 + +#include <avr/io.h> +#include <util/delay.h> + +int main() { + DDRC |= (1 << DDC7); + while(1) { + PORTC |= (1 << PORTC7); + _delay_ms(500); + PORTC &= ~(1 << PORTC7); + _delay_ms(500); + } +} + diff --git a/zumo/makefile b/zumo/makefile new file mode 100644 index 0000000..aac11f4 --- /dev/null +++ b/zumo/makefile @@ -0,0 +1,40 @@ +PORT = /dev/ttyUSB0 + +CC = avr-gcc +LD = avr-ld +RM = rm -f + +MCU=atmega32u4 + +CFLAGS += -mcall-prologues +CFLAGS += -mmcu=$(MCU) +CFLAGS += -Os +CFLAGS += -g +CFLAGS += -Wl,-gc-sections +CFLAGS += -Wl,-relax + +TARGET = main +SRCS += main.c +OBJS := $(patsubst %.c,%.o, $(SRCS)) + +.PHONY: all clean flash + +all: $(TARGET).hex + +%.o: %.c + $(CC) -c $(CFLAGS) $< -o $@ + +$(TARGET): $(OBJS) + $(LD) $^ $(LFLAGS) -o $@ + +$(TARGET).hex: $(TARGET) + avr-objcopy -R .eeprom -O ihex $< $@ + +flash: $(TARGET).hex + avrdude -p $(MCU) -c avr109 -P $(PORT) -U flash:w:$(TARGET).hex + +clean: + $(RM) $(TARGET) $(TARGET).hex $(OBJS) + +compile_commands.json: makefile + compiledb make -Bn |