❶ keil的编译错误:error c129:missing';'before'0000'
你的错误代码是 error c129: 这是一个C语言方面的语法错误,说明你的文件被保存为C文件(文件名为.c后缀)。
我用你这段程序放在keil编译器中试验过,当程序保存为c文件并编译时,会出现如你所示的error c129的错误且指向程序的第一句代码处;若将文件另存为汇编文件(文件名为.asm后缀)再进行编译,则不会出现c129的报错。
现在将这段程序保存为.asm文件,并将程序整理为以下形式:
ORG0000H
LJMPSTART
ORG000BH;
LJMPINTT0;
START:MOVR0,#70H
MOVR7,#0CH
INIT:MOV@R0,#00H
INCR0
DJNZR7,INIT
MOV72H,#10
MOV75H,#10
MOVTMOD,#01H
MOVTL0,#0B0H
MOVTH0,#03CH
SETBEA
SETBET0
SETBTR0
START1:LCALLSCAN
LCALLKEYSCAN
SJMPSTART1;
DL1MS:MOVR6,#14H
DL1:MOVR7,#19H
DL2:DJNZR7,DL2
DJNZR6,DL1
RET;
DL20MS:
对于以上程序段,不知道整理出来之后是否与你的原代码相同,但其中有一点需要说明,汇编文件中的分号“ ; ” 的作用与C文件中的“// ”作用类似,它后面紧跟的是注释内容。 你这段程序,若按以上整理,那么所有命令后面的分号“; ” 都可以不要的。 不过,也有可能你确实使用了分号的作用,将后面一些命令作了屏蔽处理,则此处不另作说明。
下面将整理后的程序进行编译,会出现以下报错情况:
错误、警告的解释:
第4行的错误原因是:标志符号“INTT0”没有定义;
第18行的错误原因是:标志符号“SCAN”没有定义;
第19行的错误原因是:标志符号“KEYSCAN”没有定义;
第27行的警告原因是:代码结束处没有“END”命令;(注:所有汇编文件结尾处都应有一句“END”命令表示结束)
可以看得出,你这段程序应该不是完整的,另有一部份你没有复制出来。你可以根据以上说明,再结合你的实际情况处理你的程序。 祝你成功!
❷ 单片机c语言用keil编译时出现如下的错误是什么原因'=':illegal type conversion from/to 'void',急求
Write_24C02 ();
下方错误提示显示的是,这个函数返回类型是 void 也就是没有设定返回值,所以使用 = 等号 就产生了语法错误。
❸ keil中出现编译错误,错误信息如下,各位大哥大姐给看看是什么原因谢谢。十分紧急,跪等答案。
你的程序中没有xdata 变量,说明在Keil设置中,内存模式的设置你选择了“small”,只能使用内部RAM,造成你的变量定义超过128Byte(其实除去工作寄存器组和堆栈,实际能使用的RAM少于128字节),这种错误一般应该在链接时出现。方法有两个:1、减少变量定义,2、更改内存模式设置。
❹ Keil 编译一直错误error C129: missing ';' before 'char'
原因:因为缺少';。解决步骤如下:
1.第一步是打开devc++5.11,然后进入以下界面。
❺ keil c51编译错误什么原因,求解
可能是因为你软件没安装好,比如重装系统之后可能会出现这个问题。
另外,估计你是用的KEIL V4版的,你安装个KEIL V2 或V3版,然后用V2 或V3 打开工程,就可以顺利编译工程,并生成HEX文件了。
❻ Keil的编译错误问题
根据LENGTH:082BH(2K)分析,ERROR L107错误的出现应该是你使用的Keil软件是一个评估软件(对代码有2K长度的限制)。
至于在选择的目标文件(就是存放这些C程序代码的文件)里面多了很多无用的C、H、LIB文件,只要里面的函数名和全局变量不同名并且不违背C51的语法,是不会影响程序的编译和运行的。C5会自动的把未被调用的函数和未使用的变量删除以减小代码的长度。
❼ keil编译错误undefined identifier是什么意思
undefined identifier是常见的keil编译错误。
引发这一错误的原因是你使用的变量没有被定义。
常见的处理手段是对你使用到的变唤消量进行变量定义。
另外一种常见的错误就是大和销知小写导致的,如定义的是unsigned char num;在使斗谈用的时候,写成了NUM,也会出现同样的错误。
(7)keil编译错误原因扩展阅读:
使用独立的Keil仿真器时,注意事项:
仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。
仿真器上的复位按钮只复位仿真芯片,不复位目标系统。
仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。