123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- # detect OS
- ifeq ($(OS),Windows_NT)
- RM := del /q
- CC := sdcc
- COM := COM3
- else
- RM := rm -rf
- UNAME_S := $(shell cat /etc/*-release | grep 'DISTRIB_ID' | sed 's/DISTRIB_ID=\(\w*\)/\1/g')
- ifeq ($(UNAME_S),Ubuntu)
- CC := sdcc
- COM := /dev/ttyUSB0
- endif
- ifeq ($(UNAME_S),Deepin)
- CC := ablrun sdcc
- COM := /dev/ttyUSB0
- endif
- endif
- # set uart baudrate
- BAUD := 9600
- # set CC TOOL
- PACKIHX := packihx
- CFLAGS := -DUSE_FLOATS=1
- LDFLAGS := --iram-size 0x100 --xram-size 0x400 --code-size 0xffff
- # set DIR
- INCDIR = include
- SRCDIR = src
- OBJDIR = obj
- TARGET = obj/main.ihx
- INC := ./include
- SRC := $(wildcard $(SRCDIR)/*.c)
- # OBJ := $(SRC:%.c=%.rel)
- OBJ := $(patsubst src/%.c, obj/%.rel, $(SRC))
- .PHONY: all clean
- all: main.hex
- clean:
- -$(RM) obj/*
- $(OBJ):obj/%.rel:src/%.c
- -$(CC) $(CFLAGS) -I $(INC) -c $^ -o $@
- $(TARGET): $(OBJ)
- -$(CC) $(LDFLAGS) $^ -o $@
-
- main.hex: $(TARGET)
- -$(PACKIHX) $(TARGET) > main.hex
- flash:
- -sudo chmod 777 $(COM)
- -./reset_mcu.sh $(COM) $(BAUD)
- -stcgal -P stc89 -p $(COM) main.hex
- com:
- -minicom -D $(COM) -b $(BAUD)
- #led.bin:led.hex
- # objcopy -I ihex -O binary led.hex led.bin
- #led.hex:main.ihx
- # packihx main.ihx > led.hex
- # led.bin:main.ihx
- # makebin main.ihx led.bin
|