宫本无三四 发表于 2017-5-10 09:03 谢谢指教 |
没有定义数据类型吧 |
再尝试几次 |
数据没有定义 |
应该是语法有错误吧 |
你的错误代码是 error c129: 这是一个C语言方面的语法错误,说明你的文件被保存为C文件(文件名为.c后缀)。 我用你这段程序放在keil编译器中试验过,当程序保存为c文件并编译时,会出现如你所示的error c129的错误且指向程序的第一句代码处;若将文件另存为汇编文件(文件名为.asm后缀)再进行编译,则不会出现c129的报错。 现在将这段程序保存为.asm文件,并将程序整理为以下形式: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 ORG 0000H LJMP START ORG 000BH ; LJMP INTT0; START: MOV R0,#70H MOV R7,#0CH INIT: MOV @R0,#00H INC R0 DJNZ R7,INIT MOV 72H,#10 MOV 75H,#10 MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#03CH SETB EA SETB ET0 SETB TR0 START1: LCALL SCAN LCALL KEYSCAN SJMP START1; DL1MS: MOV R6,#14H DL1: MOV R7,#19H DL2: DJNZ R7,DL2 DJNZ R6,DL1 RET; DL20MS: 对于以上程序段,不知道整理出来之后是否与你的原代码相同,但其中有一点需要说明,汇编文件中的分号“ ; ” 的作用与C文件中的“ // ”作用类似,它后面紧跟的是注释内容。 你这段程序,若按以上整理,那么所有命令后面的分号“ ; ” 都可以不要的。 不过,也有可能你确实使用了分号的作用,将后面一些命令作了屏蔽处理,则此处不另作说明。 下面将整理后的程序进行编译,会出现以下报错情况: 错误、警告的解释: 第4行的错误原因是:标志符号“INTT0”没有定义; 第18行的错误原因是:标志符号“SCAN”没有定义; 第19行的错误原因是:标志符号“KEYSCAN”没有定义; 第27行的警告原因是:代码结束处没有“END”命令;(注:所有汇编文件结尾处都应有一句“END”命令表示结束) 可以看得出,你这段程序应该不是完整的,另有一部份你没有复制出来。你可以根据以上说明,再结合你的实际情况处理你的程序。 祝你成功! |
没有定义数据类型吧 |
没有定义数据类型吧 |
jmx 发表于 2017-5-8 19:01 应该他没定义 |
是不是没有定义数据类型 |