..\user\API\led.c(30): error: #20: identifier "GPIOB" is undefined

遇到错误首先翻译,了解什么意思,才能知道哪里错误以及错误的原因

首先
identifier 识别码
undefined —未定义
所以综合起来这句话的意思就是“GPIOB”没有被定义,或者说编译器没有找到这个符号,
这种错误一般是头文件漏掉忘记引用或者真的没有定义这个变量;

我的这个错呢,是屏蔽掉了头文件给大家做的例子
在这里插入图片描述

其他错误类似,如果identifier “XXX” is undefined
就是忘记定义变量“XXX”,或者相关的头文件忘记引用

//***************************************************************************************//2020 05 13
今天移植SD卡相关代码的时候,又一次出现这个错误

.\Objects\test_407.axf: Error: L6218E: Undefined symbol sd_info (referred from main.o).

反复看了很久,一直找不到这个结构体变量sd_info
最后才发现,我应该是在使用屏幕键盘的时候,不小心按到了,好巧不巧那时候光标就在这个变量定义的位置,我还没注意
然后这个变量当然找不到了,名字都变了,肯定找不到
发到这里引以为戒—
..\user\API\led.c(30): error: #20: identifier
正确代码应该是
..\user\API\led.c(30): error: #20: identifier
编译后:
..\user\API\led.c(30): error: #20: identifier

你可能感兴趣的:(Keil错误解决)