今天碰到了下面图(1)这个问题,导致问题的直接原因是 工程没有包含 stm32f10x_tim.h 这个文件,而stm32f10x_tim.h 包含在stm32f10x_conf.h 这个文件中,stm32f10x_conf.h又包含在stm32f10x.h这个文件中。做了两个尝试:(1)直接将stm32f10x_tim.h添加到该文件中,错误消除。(2)将stm32f10x.h添加到文件中,错误没有消失。为什么?见图(2)图(1)
如下图所示,stm32f10x.h这个文件的最后有句
#ifdefUSE_STDPERIPH_DRIVER
#include"stm32f10x_conf.h"
#endif 即只有在将USE_STDPERIPH_DRIVER 配置在图(3)所示的选项中时,stm32f10x.h 才包含stm32f10x_conf.h
这个文件。而之前图3的选项中已经进行了配置,猜想可能是字符串有误,所以直接从stm32f10x.h文件中复制粘贴过去,错误消失,问题解决。
图(2)

图(3)
评论