📄 makefile
字号:
# -----------------------------------------------------------------
# Makefile for ex9
# -----------------------------------------------------------------
CC = arm-elf-gcc
CFLAGS = -Wall -O2 -mcpu=arm7tdmi -I./ -I../common
# Override the default linker script .text section start address
LDFLAGS = -T../lpc2138_flash.ld -nostartfiles
all: ex9a.hex ex9b.hex ex9c.hex
# -----------------------------------------------------------------
# LED control
# -----------------------------------------------------------------
led.o: ../common/led.h ../common/led.c
$(CC) $(CFLAGS) $(LDFLAGS) -c ../common/led.c
# -----------------------------------------------------------------
# Example 9a
# -----------------------------------------------------------------
ex9a.elf: ex9_start.s ex9a_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9_start.s ex9a_main.c led.o -o ex9a.elf
ex9a.hex: ex9a.elf
arm-elf-objcopy -O ihex ex9a.elf ex9a.hex
# Use 'make ex9a.size' to see the section sizes
ex9a.size: ex9a.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9a.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9a.elf
# -----------------------------------------------------------------
# Example 9b
# -----------------------------------------------------------------
ex9b.elf: ex9_start.s ex9b_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9_start.s ex9b_main.c led.o -o ex9b.elf
ex9b.hex: ex9b.elf
arm-elf-objcopy -O ihex ex9b.elf ex9b.hex
# Use 'make ex9b.size' to see the section sizes
ex9b.size: ex9b.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9b.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9b.elf
# -----------------------------------------------------------------
# Example 9c
# -----------------------------------------------------------------
ex9c.elf: ex9c_start.s ex9c_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9c_start.s ex9c_main.c led.o -o ex9c.elf
ex9c.hex: ex9c.elf
arm-elf-objcopy -O ihex ex9c.elf ex9c.hex
# Use 'make ex9c.size' to see the section sizes
ex9c.size: ex9c.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9c.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9c.elf
clean:
-rm -rf *.o *.elf *.hex
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -