一、BSP工程管理
我们对工程文件做管理,将不同功能的源码文件放到不同的目录中。我们也将源码文件中,所有完成同一个功能的代码提取出来放到一个单独的文件中,这就是对程序分功能管理。也就是我们常说的模块化管理。
bsp目录下面存放驱动文件;imx6u目录下面存放跟芯片有关的文件,比如NXP的官方SDK库文件;obj 用来存放编译生成的.o 文件; project 存放 start.S 和 main.c 文件,也就是应用文件;
二、编写通用Makefile
CROSS_COMPILE ?= arm-linux-gnueabihf- //交叉定义工具链
TARGET ?= ledc //目标
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
OBJCOPY := $(CROSS_COMPILE)objcopy
OBJDUMP := $(CROSS_COMPILE)objdump
INCDIRS := imx6u \ //头文件目录路径
bsp/clk \
bsp/led \
bsp/delay
SRCDIRS := project \ //源代码路径
bsp/clk \
bsp/led \
bsp/delay
INCLUDE