关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件

时间:2021-09-30 16:47:39
      最近项目使用STM32,又重新熟悉了一下STM32的工程建立与程序设计,总结了一下,发现了之前没有发现的技巧与设置。 

      关于STM32F103 的V3.5.0固件库,使用起来,挺方便,移植性也不错,当然,如果使用Keil uVesion4开始的话,首先需要设置好工作环境,才可以正常的编译。


      为什么会有:main.c里面怎么来的stm32f10x_conf.h文件?


关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 



      我搜索了一下代码,发现来自:主头文件  #include "stm32f10x.h"


关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 



      若是使用ST公司为STM32开发的固件库,就会包括头文件:stm32f10x_conf.h。
      打开stm32f10x_conf.h文件一看,原来,只有:#include "stm32f10x.h"还不够,如果要使用外设什么的,还要在这里打开配置开关,不用的外设可以不加入头文件,看来设计的挺巧妙的。这样使用外设库时,只要配置好就行了,在main.c里只使用一个: #include "stm32f10x.h"就可以了。


关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 



      看来如果不配置好stm32f10x_conf.h,当使用外设如ADC TIM USART时,根据无法编译通过。因为没有在项目里加入头文件调用,这里若全不选,根本不能调用固件外设库,即使你把固件库文件加入了工程里。当然,你可以在main.c里面全部加入需要的头文件来解决,不过我觉得配置 stm32f10x_conf.h简单方便,有组织。


关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 





关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 





    在这里,加入了需要使用的固件库外设文件,但还不够,还需要设置如下:


关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 



     还加入头文件路径:
关于STM32F103 V3.5.0固件库stm32f10x_conf.h文件 



     根据使用的外设固件库配置一下:stm32f10x_conf.h,如果使用systick系统滴答定时器等,只要在stm32f10x_conf.h里,取消#include "misc.h" 前面的注释,即包含这个misc.h文件即可,否则,滴答定时器不工作。


      看来,要熟悉整个来龙去脉,才会有更深入的理解。stm32比较强大,开始简单,价格适中,应用于目前的小项目设计中,还是大有前景的。