Keil常见错误/警告 解释以及解决办法

waring: while loop has empty body(while为空的偱环体)

只是警告,语句没有错误,不消除也正常编译、运行;
把循环体下面一条语句,与while左对齐,可消除警告;
如果上一条方法不能解决,应该是两条语句前的空位是Tab或空格不统一,删除空位,统一用空格即可。

variable “xxxxxx“was declared but never referrnced

变量’XXXXX’定义但从未使用,或者是,虽然这个变量你使用了,但编译器认为变量XXXXX所在的语句没有意义,编译器把它优化了。
解决:看一下所定义的变量xxxx是否真实有用,如果变量xxxx的定义有意义并且进行了使用,那么可以尝试使用volatile修饰自己定义变量xxxx,若是真的没有用,那么删除掉或者注释掉以释放可能的内存。

Deprecated declaration xxxxxxxxxx - give arg types

在函数xxxxxxxxxx()声明和定义的时候定义参数类型,无参函数定义为void,即可解决该问题。

A1167E: Invalid line start

启动文件选择不对导致,如果采用的开发环境是keil ,那么应该选择arm文件夹下对应的启动文件。

L6304W: Duplicate input file .\system_apm32f10x_1.o ignored.

出现该问题的原因是 system_apm32f10x.c文件被重复包含了,去掉一个就好了

你可能感兴趣的:(开发工具,stm32)