L6200E .\Objects\StmHdmi0404Main.axf: Error: L6200E: Symbol Reset_Flag_Bit multiply defined (by variable.o and hal.o).
修改:Reset_Flag_Bit多出定义,在variable.o and hal.o存在,修改:去掉赋值部分(我的是直接删除其中一个)
可能存在现象:应该是定义变量定义在头文件,修改:头文件的删除,在对应.c文件定义
定义的变量需要在其它.c/.h使用,.c中定义了,修改:需要添加extern
#137 …\HARDWARE\UART\Uart.c(469): error: #137: expression must be a modifiable lvalue
Mail_ACK_Low();
修改:
#550-D …\HARDWARE\IIC\iic.c(3): warning: #550-D: variable “Port_SDA” was set but never used
static uint8_t Port_SDA,Port_SCL,PIN_Sda,PIN_Scl;
修改:变量已设置,但没有使用,可以改为定义时加上volatile
#247 …\HARDWARE\IIC\iic.c(183): error: : function “IIC_Write_Byte” has already been defined
uint8_t IIC_Write_Byte(uint8_t str)
修改:重复定义了函数
#1295-D …\HARDWARE\TIME\time.h(114): warning: #1295-D: Deprecated declaration NOP - give arg types
void NOP();//10
修改:无参函数NOP(),声明时括号缺少void关键字
L6304W …\HDMI1602_Firmware\SiI9687_1_4.axf: Warning: L6304W: Duplicate input file …\hdmi1602_firmware\main_1.o ignored.
Program Size: Code=52680 RO-data=5472 RW-data=1876 ZI-data=7356
修改:
#136 main.c(135): error: #136: struct “” has no field “GPIO_OType”
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
修改:
L6236E .\Objects\project.sct(7): error: L6236E: No section matches selector - no section to be FIRST/LAST.
Not enough information to list image symbols.
Not enough information to list the image map.
修改:
#69-D main.c(58): warning: #69-D: integer conversion resulted in truncation(整数转换导致截断)
Led_Refresh_En(250,60000);
修改:个人猜测应该是括号里的数据超出定义类型的范围
#31 main.c(73): error: #31: expression must have integral type
switch(USART2_IRQHandler())
修改:switch括号里的变量要整型数
#268 …\HARDWARE\src\uart.c(196): error: #268: declaration may not appear after executable statement in block
uint8_t USART2_Handler(void) //串口2中断服务程序
修改:该函数缺少了“}”,在第196行前加上,一般#268与#67一起出现
修改:声明在执行语句后,将声明语句放到最前
#67 …\HARDWARE\src\uart.c(196): error: #67: expected a “}”
uint8_t USART2_Handler(void) //串口2中断服务程序
修改:在第196行前面少了“}”
当#7 #67 #40一起出现时,存在中文符号,修改后还存在#7 #29 #2969-D,我的是将后面的换行符删除,就是格式不正确导致的现象,我也不太清楚,因为代码的上一行和下一行可以使用换行符的
原:0x20, 0xF8, 0x14, 0xFB, 0x98, 0xB9, 0x57, 0x00, 0xC0, 0x09, 0x14, 0xFB, 0x05, 0x00, \
改:0x20, 0xF8, 0x14, 0xFB, 0x98, 0xB9, 0x57, 0x00, 0xC0, 0x09, 0x14, 0xFB, 0x05, 0x00,
#109 …\HARDWARE\src\uart.c(131): error: #109: expression preceding parentheses of apparent call must have (pointer-to-) function type(显式调用前括号的表达式必须具有(指针到-)函数类型)
data=Check_Mail_ACK();
修改:
#42 headware\simulation_uart.c(94): error: #42: operand types are incompatible (“uint16_t” and “uint8_t *”)(操作数据类型不兼容)
if(USART_ReceiveData(USART2) == buf)
修改:需要强制转换成另一个类型
#7 main.c(32): error: #7: unrecognized token
CUart_Simulation_Print(0, 0xFF, 0xFF);
修改:存在不可见字符,中文字符等,找到该行修改或删除 修改:存在不可见字符,中文字符
到该行修改或删除
欢迎跟帖留言~