Skip to content

Commit cb54b3a

Browse files
committed
Create generic image with bootloader and application
1 parent 831ff94 commit cb54b3a

File tree

2 files changed

+31
-5
lines changed

2 files changed

+31
-5
lines changed

firmware/Makefile

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,47 @@
22
# This program is free software; you can redistribute it and/or modify
33
# it under the terms of the GNU General Public License version 3.
44

5-
BOOT_DIR=bootloader
6-
PROG_DIR=programmer
5+
BOOT_NAME=bootloader_fw.hex
6+
PROG_NAME=app_fw.hex
7+
GEN_NAME=nando_fw
8+
9+
BOOT_DIR=bootloader/
10+
PROG_DIR=programmer/
11+
12+
BOOT_OBJ_DIR=$(BOOT_DIR)obj/
13+
PROG_OBJ_DIR=$(PROG_DIR)obj/
14+
15+
BOOT_PATH=$(BOOT_OBJ_DIR)$(BOOT_NAME)
16+
PROG_PATH=$(PROG_OBJ_DIR)$(PROG_NAME)
17+
18+
OBJ_DIR=obj/
19+
20+
TOOLCHAIN=../../../compiler/gcc-arm-none-eabi-4_9-2015q1/bin/arm-none-eabi-
21+
OBJCOPY=$(TOOLCHAIN)objcopy
722

823
all:
924
$(MAKE) -C $(BOOT_DIR)
1025
$(MAKE) -C $(PROG_DIR)
26+
mkdir -p $(OBJ_DIR)
27+
cp $(BOOT_PATH) $(OBJ_DIR)
28+
cp $(PROG_PATH) $(OBJ_DIR)
29+
cd $(OBJ_DIR) && sed -i '$$d' $(BOOT_NAME) && \
30+
cat $(BOOT_NAME) $(PROG_NAME) > $(GEN_NAME).hex && \
31+
$(OBJCOPY) --input-target=ihex --output-target=binary $(GEN_NAME).hex \
32+
$(GEN_NAME).bin
1133

1234
clean:
1335
$(MAKE) -C $(BOOT_DIR) clean
1436
$(MAKE) -C $(PROG_DIR) clean
37+
rm -rf obj/
1538

1639
distclean:
1740
$(MAKE) -C $(BOOT_DIR) distclean
1841
$(MAKE) -C $(PROG_DIR) distclean
42+
rm -rf obj/
43+
44+
erase:
45+
st-flash erase
1946

2047
program:
21-
$(MAKE) -C $(BOOT_DIR) program
22-
$(MAKE) -C $(PROG_DIR) program
48+
st-flash write $(OBJ_DIR)$(GEN_NAME).bin 0x08000000

firmware/programmer/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# This program is free software; you can redistribute it and/or modify
33
# it under the terms of the GNU General Public License version 3.
44

5-
PROG_NAME=nando_fw
5+
PROG_NAME=app_fw
66

77
SRC_DIR=./
88
USB_DIR=../usb_cdc/

0 commit comments

Comments
 (0)