解决方法KEIL 5编译中常见基础错误及警告的解决办法

问题1
.\Objects\wifiqxz.axf: Error: L6200E: Symbol __ARM_use_no_argv multiply defined
//解决办法
//多重定义。其他.C文件包含 int main(){},删除即可
.\Objects\stm32.axf: Error: L6200E: Symbol Delay_ms multiply defined (by delay.o and main.o).
//delay.c和main.c文件,多次定义同一个函数。删除两者中一个即可!

问题2
.\Objects\wifiqxz.axf: Error: L6218E: Undefined symbol key_scan (referred from main.o).
.\Objects\wifiqxz.axf: Error: L6218E: Undefined symbol key_config (referred from main.o).

//解决办法
//“品”字未添加相关.C文件。双击project中相关文件夹添加或品字添加

问题3
.\Objects\project.sct(7): error: L6235E: More than one section matches selector – cannot all be FIRST/LAST.

//解决办法
//startup启动文件夹包含多个启动文件!根据芯片选择相应启动文件(ZET6用:hd.s)

问题4
STM32报错Error: L6218E: Undefined symbol assert_param (referred from misc.o).

//解决办法
在魔法棒C/C++中,Define.添加如下语句
STM32F10X,USE_STDPERIPH_DRIVER

问题5
…\user\API\dht11.c(72): error: #18: expected a “)”

//有可能在宏定义时,多加了“;”
宏定义不能加“;”

问题6
…\user\API\ESP8266.c(143): warning: #223-D: function “Delay_ms” declared implicitly

//问题 提示:隐式声明
//解决 检查相关定义的函数是否包含在相应头文件中

问题7
…\user\main.c(50): warning: #177-D: variable “rxbuff” was declared but never referenced

//解决办法 翻译:警告:#177-D:变量“rxbuff”被声明但从未被引用。屏蔽掉相应代码段即可

问题8

..\LVGL_APP\font\font_icon_model_16.c(756): error:  #144: a value of type "const uint16_t *" cannot be used to initialize an entity of type "uint16_t *"
          .unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 12, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY**

//问题翻译:“const uint16_t *” 类型的值不能用于初始化 “uint16_t *” 类型的实体
//解决办法:用强制转换解决!.unicode_list =(uint16_t *)uincode_list_3
小白上路,欢迎指教!

物联沃分享整理
物联沃-IOTWORD物联网 » 解决方法KEIL 5编译中常见基础错误及警告的解决办法

发表评论