这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » ARM常见错误及解决方法

共3条 1/1 1 跳转至

ARM常见错误及解决方法

工程师
2020-12-15 18:29:04     打赏

#513-D …\HARDWARE\1U\src\Uart.c(1134): warning: #513-D: a value of type “char *” cannot be assigned to an entity of type "uchar "
p = strrchr(Command,’
’);
修改

#513 …\HARDWARE\src\uart.c(396): error: #513: a value of type “u8 *” cannot be assigned to an entity of type “uint8_t”
temp = USART2_RX_BUF;
修改

#1293-D …\HARDWARE\1U\src\Uart.c(1114): warning: #1293-D: assignment in condition(转让的条件)
……
if(p = strrchr(Command,’’))
{……}
修正…….
p = strrchr(Command,’
’)
if§ {……}

#375-D …\1u\v2.3xe\API…/hal/si_hal.h(161): warning: #375-D: declaration requires a typedef name
};
修改:将有问题的变量,定义好

#1-D …\HEADER\head.h(49): warning: #1-D: last line of file ends without a newline
#endif
修改:在末尾添加空行

  • #9-D …\EDID\si_edid.c(483): warning: #9-D: nested comment is not allowed
    /* Write to selected EDID ram. *
    修改:(不允许嵌套注释)

#550-D …\API\si_api9187B.c(53): warning: #550-D: variable “l_stableHdcp1” was set but never used
static BOOL l_stableHdcp1[PortNumber] = {false};/Y/
修改:在定义的变量前添加volatile 修饰关键字
分析1、定义的变量在下面代码中,执行函数并将函数返回值赋值给该变量,然而并没有使用该返回值;编译器对这种情况会做优化,分析出函数的返回值没有被使用,给变量附的值被编译器省略,于是只剩该变量,并没有使用变量
2
、定义的变量没有使用,而且有同名的局部变量

#177-D …\EDID\si_edid.c(554): warning: #177-D: variable “temp” was declared but never referenced
uint8_t temp = 0;
修改:(定义了没有使用)注释该变量或删除,或使用该变量

#223-D …\HAL\Time.c(103): warning: #223-D: function “NOP” declared implicitly
NOP();
修改1、在定义NOP()的*.c对应的*.h添加该函数的声明
2
、不用可以注释或删除
3
、在调用该函数的.c文件添加对应的.h头文件
4
、在头文件的#ifndef _XXX_H——#define _XXX_H——#endif
有重复定义_XXX_H,修改_XXX_H名字就好

#128-D …\HAL\uart.c(43): warning: #128-D: loop is not reachable(循环不可到达)
while(*str != ‘\0’){
修改:循环体有问题,不能执行下面的程序,
1
修改循环条件
2
删除循环后面的执行语句


欢迎跟帖留言~




关键词: warning     错误     解决     方法     常见     修改    

高工
2020-12-15 21:12:51     打赏
2楼

方法总结的不错


工程师
2020-12-15 21:45:54     打赏
3楼

确实可以的方法


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]