keil5以上版本开发stm32不需要定义STM32F10X_HD,USE_STDPERIPH_DRIVER
来源:互联网 发布:张艺谋李安知乎 编辑:程序博客网 时间:2024/05/16 22:04
用官方的库函数开发stm32时,不需要再c/c++选项卡定义STM32F10X_HD,USE_STDPERIPH_DRIVER也能编译成功,不会出现错误和警告,为什么呢?
#ifdef _RTE_ #include "RTE_Components.h" #ifdef RTE_DEVICE_STDPERIPH_FRAMEWORK #define USE_STDPERIPH_DRIVER #endif #endif
#ifdef _RTE_为真,然后就会包含头文件 #include "RTE_Components.h", 只要我们用官方提供的外设固件库,那么 #include "RTE_Components.h"文件里面就会生成相应的“宏变量”,然后就会定义#define USE_STDPERIPH_DRIVER,而不需要我们手动去定义。
#error "Please select first the target STM32F10x device used in your application (in stm32f10x.h file)"
我到stm32f10x.h文件去看时,发现多了几句话:
#if !defined USE_STDPERIPH_DRIVER
#endif
就是这几句话,程序自动帮我们定义了USE_STDPERIPH_DRIVER,因为我使用的是官方的pack,那么
STM32F10X_HD定义的地方我没找到,我用keil5以下版本和以上版本测试同一个程序,在c/c++选项卡里面什么也没有定义,那么结果是:keil5以下版本编译时出现了错误,而keil5以上的版本没出现错误,那么我猜想STM32F10X_HD宏定义是keil5以上版本特有的功能,当我们选好cpu时,自动就会定义相应的宏,我选的是stm32f103zet6,那么软件会自动定义STM32F10X_HD,以上是我的猜想。因为keil5以下版本测试相同的程序就会出错,而错误信息是:
#if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)
#endif
这就说明程序是没有定义STM32F10X_HD,而keil5以上版本却编译不出这样的错误,那就是keil5以上版本的软件能够根据cpu型号定义相应的宏。
【转自:http://blog.sina.com.cn/s/blog_dc9571b90102vhvu.html】
0 0
- keil5以上版本开发stm32不需要定义STM32F10X_HD,USE_STDPERIPH_DRIVER
- stm32开发环境加入STM32F10X_HD和USE_STDPERIPH_DRIVER两个宏
- stm32 加入 USE_STDPERIPH_DRIVER、STM32F10X_HD的原因
- stm32 加入 USE_STDPERIPH_DRIVER、STM32F10X_HD的原因
- 关于STM32 MDK中USE_STDPERIPH_DRIVER问题及 STM32F10X_LD STM32F10X_MD STM32F10X_HD STM32F10X_CL宏定义的选择
- USE_STDPERIPH_DRIVER, STM32F10X_HD说明
- USE_STDPERIPH_DRIVER, STM32F10X_HD说明
- USE_STDPERIPH_DRIVER, STM32F10X_HD说明
- MDK设置中USE_STDPERIPH_DRIVER,STM32F10X_HD含义
- STM32的USE_STDPERIPH_DRIVER
- Cocos2dx(2.0版本以上)+eclipse开发配置(不需要Cygwin)
- Keil5创建STM32工程
- STM32 keil5编译优化
- keil5安装stm32测试
- Keil5.15版本
- KEIL5,STM32工程建立注意事项
- STM32 Keil5建立工程模板步骤
- Keil5创建基于RTX的STM32工程
- iOS 判断网络类型(3G,4G,Wi-Fi)
- iOS进行单元测试OCUnit+xctool
- Xcode 6 技巧: 矢量图像,代码片段以及其他
- SQL error 1403:ogg 同步
- 23种设计模式之【前篇】
- keil5以上版本开发stm32不需要定义STM32F10X_HD,USE_STDPERIPH_DRIVER
- 打开模态视图 导航
- 使用OMD5查询MRP元素描述
- 数学之美---平凡而又神奇的贝叶斯方法
- IOS数组按中文关键字以字母序排序
- 关于使用ueditor编辑器--ueditor文件夹与编辑器初始化页面不在同一目录下,上传图片显示问题
- 全加和 UVa10943
- Jenkins/hudson:admin没有Read权限
- Spring MVC入门