stm32的I2C外设在编译时出现了如下错误:
Error: L6218E: Undefined symbol I2C_DeInit (referred from main.o).
Not enough information to list image symbols.
Finished: 1 information, 0 warning and 1 error messages.
代码如下:
#include <stm32f10x.h>
int main()
{
I2C_DeInit(I2C1);
while(1);
}
很简单的代码,在keil上编译未出现任何问题。在这个代码无法编译的情况下,我又测试了I2C外设的其他函数,但都全部出现上面的错误,每一个函数都不能使用,但是都会报错Undefined symbol xxx,与此同时我在主函数中跳转到I2C_DeInit()的定义处,跳转没有任何问题。测试了一整天,新建了很多个工程(都是stm32f10x内置模板),找了各种办法都无法解决。
我又测试了其他外设比如usart和gpio、adc等都没有出现上述问题,只有i2c出现了上述问题。