STM32
直播中

冯敬宇

7年用户 230经验值
私信 关注
[问答]

为什么stm32f10x_conf.h文件里的外设头文件都注释了编译时还是有?

我想再请教一下。为什么,我把 STM32f10x_conf.h 文件里面很多的外设头文件,都注释掉了,但是,编译时,还是要编译这些驱动源文件。例
如,//#include "stm32f10x_spi.h" 这个,我把它注释了,编译时,下面的输出信息里面还是有 compiling stm32f10x_spi.c ... 这个出现,证明,还是编译这个源
文件了。不解呀。这是为什么呢?固件手册,不是说,在 stm32f10x_conf.h 中注释掉的驱动头文件,相应的驱动程序源文件,就不会加载了吗?为什么,还是要编译
它呢?
各位牛人,帮忙解答一下。

回帖(4)

谢剑萍

2019-9-24 08:12:01
把C文件从工程中remove掉...
举报

张英

2019-9-24 08:24:46
楼上正解.
举报

杨帆

2019-9-24 08:38:47
"不是说,在 stm32f10x_conf.h 中注释掉的驱动头文件,相应的驱动程序源文件,就不会加载了吗?"
编译的时候,是C文件参与编译的,头文件一般是用来声明给外部提供的函数用的
另外,编译器是SB来的,它哪里知道哪个才是相应的驱动源文件啊。。。
你注释掉相应的#include 语句,main.c里面就没有库函数的声明,就没办法使用库函数了,说的其实是是这个意思。
举报

刘晓英

2019-9-24 08:49:33
太感谢楼上各位了,我对 Keil 软件的编译过程的理解又加深一步了。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分