世纪电源网社区logo
社区
Datasheet
标题
返回顶部
原创

USE_STDPERIPH_DRIVER, STM32F10X_HD说明

[复制链接]
查看: 507 |回复: 1
1
liguanghui2588
  • 积分:9171
  • |
  • 主题:55
  • |
  • 帖子:2435
积分:9171
版主
  • 2018-9-30 17:03:24
如果在STM32工程编译时没有添加USE_STDPERIPH_DRIVER, STM32F10X_HD时会出现如下错误:
..\library\cortex_m3\stm32f10x.h(96): error:  #35: #error directive: "Please select first the target STM32F10x device used in your application (in stm32f10x.h file)"
这时候我们需要在“Target Options”中的“C/C++”选项卡中添加USE_STDPERIPH_DRIVER、STM32F10X_HD。这样才能使编顺利通过。


那么这个错误是怎么产生的呢?



这是由于程序编译的过程中调用stm32f10x_conf.h头文件。为什么我们没有在“main.c”中包含"stm32f10x_conf.h",而在编译之后却被包含进了"main.c"中,"stm32f10x_conf.h"文件相当于一个开关文件,如果要用到STM32固件库驱动标准外设,则外设驱动头文件是必不可少的,如“stm32f10x_gpio.h”。在"stm32f10x_conf.h"中我们通过代码#include "stm32f10x_gpio.h"来实现这个操作。其实单从字面意思理解就是“使用标准外设驱动”,在C/C++预定义中加入“USE_STDPERIPH_DRIVER”就是允许“使用标准外设驱动”了。至于加入的“STM32F10X_HD“同样能在文件”stm32f10x.h“通过如上所述的方法通过功能查找来进行解释,其实它也是对于对应硬件的某些定义起开关作用罢了。

收藏收藏
zm77
  • zm77
  • 离线
  • LV8
  • 副总工程师
  • 积分:4596
  • |
  • 主题:379
  • |
  • 帖子:552
积分:4596
LV8
副总工程师
最新回复
  • 2018-9-30 17:42:10
  • 倒数1
 
看看
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦8层

电 话:400-022-5587

传 真:(022)27690960

邮 编:300110

E-mail:21dy#21dianyuan.com(#换成@)

世纪电源网分部

广 东:(0755)82437996 /(138 2356 2357)

北 京:(010)69525295 /(15901552591)

上 海:(021)24200688 /(13585599008)

香 港:HK(852)92121212

China(86)15220029145

网站简介 | 网站帮助 | 意见反馈 | 联系我们 | 广告服务 | 法律声明 | 友情链接 | 清除Cookie | 小黑屋 | 不良信息举报 | 网站举报

Copyright 2008-2024 21dianyuan.com All Rights Reserved    备案许可证号为:津ICP备10002348号-2   津公网安备 12010402000296号