文章目录
-
- 创建工程目录结构
- 原理分析
创建工程目录结构
我们在上一章创建的工程,如图 1所示:
我们可以看到在第十一章中的LED SDK工程中,所有的源文件,以及编译生成的文件都保存在了工程的根目录下,虽然该工程只是完成了一个简单的LED灯的功能,我们看到工程根目录下的文件已经不少了,如果在添加一些其他的功能,那么根目录下的文件就会更多了,这会看上去显得很乱。所以我们需要对工程的源文件按照功能就行分类存放,使功能看上去结构清晰。
我们在Ubuntu系统下,创建“4_led_bsp”文件夹,然后在里面创建“core”、“drivers”、“output”三个文件夹,如图 2所示:
其中“core”文件夹用来存放跟芯片有关的文件,比如SDK的库文件等等,“drivers”文件夹用来存放驱动文件,output用来存放编译产生的.o文件。
我们将上一章工程中的cc.h、fsl_common.h、fsl_iomuxc.h、MCIMX6Y2.h这个四个文件拷贝到“core”文件夹里面,我们在main.c函数中定义的clk_enable、delay、led_init这三个函数分别对应时钟,延时,led三个驱动模块的,我们可以在drivers文件夹下面分别创建对应的文件夹clk,delay,led,如图 3所示:
然后从main.c文件提取出这三部分的驱动代码放到drivers文件夹下面的对应文件夹里面,这样我们的main.c文件看着结构就会很清晰了。
原理分析
LED的原理我们在前面已经分析过了。