keil5里面需要添加宏定义么

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了keil5里面需要添加宏定义么相关的知识,希望对你有一定的参考价值。

Keil5里面不需要添加宏定义,但是可以在Keil5里面添加宏定义,以便在编译时使用它们。宏定义可以在Keil5的“Options for Target”菜单中的“C/C++”选项卡中的“Preprocessor”部分中定义。 参考技术A 在Keil5中,宏定义实际上是一种常量,它可以定义为固定的值、文本或其他C程序。添加宏定义可以让代码更容易理解,也可以提高程序的性能和可读性。因此,Keil5确实需要添加宏定义,才能使用更丰富的功能。 参考技术B 是不需要的。在keil 5,这款软件中,系统会自动添加宏的定义是不需要手动添加的 参考技术C keil5里面需要添加宏定义么?答:keil5里面需要添加宏定义。 参考技术D keil5里面需要添加宏定义么
答案如下:keil5里面需要添加宏定义,冲一下二重置

STM32F10xxx_Keil中添加的预定义宏

目录

STM32F10xxx_Keil中添加的预定义宏

更新记录

version status description date author
V1.0 C Create Document 2018.10.15 John Wan

status:
C―― Create,
A—— Add,
M—— Modify,
D—— Delete。

Use Standard Peripheral Driver

??在Keil MDK环境中使用STM32固件库建立工程时,可能会遇到编译不通过的问题。出现如下警告或错误提示:
warning:#223-D:function"assert_param"declaredimplicitly;assert_param(IS_GPIO_ALL_PERIPH(GPIOx));

??这时候我们需要在设置面板的“TargetOptions”“C/C++”选项卡添加USE_STDPERIPH_DRIVER. STM32F10X_HD。这样才能使编顺利通过。

??知其然了,我们还得知其所以然。下面就一一道来。我们知道,程序的执行是从main.c文件开始的,其中必须包含有头文件stm32f10x.h。打开stm32f10x.h,查找USE_STDPERIPH_DRIVER,在第8296-8298行找到

#ifdef USE_STDPERIPH_DRIVER
#include "stm32f10x_conf.h"
#endif

??这段代码的意思是,只有定义了USE_STDPERIPH_DRIVER,才包含stm32f10x_conf.h,从而被main.c用到。那么stm32f10x_conf.h的作用是什么呢?它相当于一个总的开关文件,如果要用到STM32固件库驱动标准外设,则外设驱动头文件是必不可少的,如stm32f10x_gpio.h等。而这些文件的添加都是在stm32f10x_conf.h中进行。
??而在Keil MDK的面板添加USE_STDPERIPH_DRIVER,其实就是Keil方式的全局定义,从而使stm32f10x.h文件包含stm32f10x_conf.h文件。

??同样的Keil MDK面板中的STM32F10X_HD是定义芯片的类型,HD表示芯片是大容量产品







以上是关于keil5里面需要添加宏定义么的主要内容,如果未能解决你的问题,请参考以下文章

keil5中输入一串二进制数要不要添加标志

keil4宏定义赋值报错

keilmdk怎么查看宏定义值

关于keil5使用注意事项(预定义路径包含)

内核makefile里面的如何定义宏

VS中添加预处理宏的方法