搭建STM32 的工程文件框架

搭建STM32的工程文件框架

当前网上比较多的方法都是将库按类放置在不同的文件夹,然后再在keilc路径里面添加n多路径,这样当换了个编译器时就需要小心的修改添加这些相关的文件路径。个人认为应该在源文件里尽可能的包含文件路径,减少对编译器的设置。

 

建立以下几个文件夹:

List文件夹存放编译的中间文件,RVMDK存放MDK的工程文件,SI4Prj存放sourceinsight工程,src里面就保存用户的源文件和stm32的库文件。

 

src里面建立一个useSTM32Lib的文件夹,use存放用户写的ch文件,把库里面的所有ch文件通通复制到STM32Lib文件夹里面。详细说明如下:

1.       STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driversrcinc中的所有文件复制到STM32lib文件夹里面。


2.      STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport里的core_cm3.ccore_cm3.h复制到STM32Lib文件夹里面。

3.      STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x里的所有文件复制STM32Lib文件夹里面。

另外再把STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template

里的3个文件复制到STM32Lib文件夹里面,stm32f10x_conf.h是配置开放哪些外设。

stm32f10x_it.cstm32f10x_it.h是针对M3内核的一些中断处理,这里给出了中断向量和入口函数,用户可以在这里写代码。很多教程是让用户在这里添加其他中断函数比如ADC啊定时器啊串口之类的全部写在这里。个人觉得这两个文件就只写内核的一些中断函数比较好,而其他的外设就写在其他文件里,比如串口的中断就和中断的初始化,串口的接口驱动层写在一个.c文件好了这也比较符合模块化。

 

最后来张完整的STM32Lib文件夹图:

用户的应用C文件中的STM32头文件定义为:             

#include "..\\STM32Lib\\stm32f10x.h"  

这一定义,代表了库的寻址路径变成了src目录中的STM32Lib目录了,之后跟MDK

自带的库将没有任何牵连。如果还需要使用USB的库,则可以在这里放置USB库函数.

如下图,USBLib目录上的就是USB的库.


 

 

 

 

 

自此一个完整的工程框架就搭好了,来一张MDK的截图做为结束




3.5库文件下载:http://download.csdn.net/download/gzzxbcxm2005/10007936

 

展开阅读全文

没有更多推荐了,返回首页