当keil5出现error: #20: identifier "xxx" is undefined 的时候,一般有以下几种情况
1.头文件包含错误,这种较为常见,已有人给出较好的回答
2.文件名和.c文件一致,也就是文件名为“LCD”,文件为“LCD.c”的情况,这种情况只需更改文件名即可(但是博主并未对这种情况进行具体实践)
3.报错信息点进去后与显示报错的函数不同
本博文适用范围较小,仅适用于第三种情况
下图是博主的报错信息:
error: #20: identifier "LCD_CS_GPIO_Port" is undefined
error: #20: identifier "LCD_CS_Pin" is undefined
然而当我点击error后却转跳到LCD_CS_Clr()的报错上来,经过检查也能确定已经在lcd.h中声明了函数
仔细分析发现,报错原因和GPIO引脚有关,重新进行了电平配置后代码运行正常