您的位置:首页 > 编程语言

嵌入式编程常见错误总结

2020-07-04 09:19 90 查看

1 declaration may not appear after executable statement in block


        该错误提醒是说: 变量声明不允许出现在语句之后,对应图中就是说:FRESULT res ;该语句是声明变量;但是之前已经有了执行语句:
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
uart_init(115200); //串口初始化为115200
   解决方法:
  调整执行语序为如下所示:

FRESULT res ;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2
uart_init(115200); //串口初始化为115200

2 Undefined symbol TIM_Cmd(referred from timer.o)


这种错误是没添加定时器的固件库文件,解决方法如下 :

3 一个警告,见下图:

4 MULTIPLE PUBLIC DEFINITIONS


        如①所示的错误,说明是重复定义了,才会报错。此处的错误没有显示完全。实际上是如②所示的,所有定义的变量都是错误的。因为在本工程中,这些变量定义在了<LED_OSD.H>文件中,而该文件被如③所示的所有.h文件都调用,而如③所示的.c文件中都没有使用这些变量,所以才会出现“MULTIPLE PUBLIC DEFINITIONS”的错误。
        修正,就是将如②所示的所有定义的变量定义在使用这些变量的那个头文件中,而不会被其他文件所调用。

5、error C267: ‘GetADCResult’: requires ANSI-style prototype


        说明 GetADCResult()函数未作声明 或未作外部声明, 所以无法给其他函数调用。
        解决方法: 将叙述GetADCResult()在相应的头文件中进行声明,如果被外部调用,也可以加上extern关键字进行声明。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: