687165.C(1): error C129: missing ';' before '0001'在keil中运行不了 单片机请问 DISPLAY.C(1): error C129...

作者&投稿:龚咽 (若有异议请与网页底部的电邮联系)

你的错误代码是 error c129: 这是一个C语言方面的语法错误,说明你的文件被保存为C文件(文件名为.c后缀),但你这段命令明显是汇编语言,是不能保存为C文件的。

我用你这段程序放在keil编译器中试验过,当程序保存为c文件并编译时,会出现如你所示的error c129的错误且指向程序的第一句代码处;若将文件另存为汇编文件(文件名为.asm后缀)再进行编译,则不会出现c129的报错,只会出现下面这些错误:

error A45:UNDEFINED SYMBOL      (有未定义的标识符)

error A9:SYNTAX ERROR                 (有语法错误)

error A3:ILLEGAL CHARACTER        (有非法字符)

因为按我这样整理这段汇编程序,出现的错误太多,而且很多完全不知道你为什么会这样书写,就只能猜测你这里发出来的程序不是完整的。那么关于这些错误如何修改,你可以按照你的程序实际情况进行处理。

 

附:程序截图如下



KEIL错误:LXD.C(1): error C129: missing ';' before '.'这是哪里错了啊 求高手解决~

在文档中如果想说明增加注释的话,在注释前面需要“//”
例如:
//beep.h
另外,看你的代码,这应该是三个不同的文件。你把这三段分别保存,名字为beep.h,beep.c,adc0808.h,并且在同一目录下,然后编译即可。

uchar 不是keil 变量类型的关键字
要定义宏 #define uchar unsigned char
新建个头文件display.h里添加 如下
#ifndef _Display_H
#define _Display_H
#define uchar unsigned char
#endif
然后在display.c的第一行
#include “display.h”

顺便说一下 你的变量也太多了
可以用结构简单明了
typedef struct
{
unsigned char H_Year;
unsigned char L_Year;
unsigned char Month;
unsigned char Day;
unsigned char Hour;
unsigned char Minute;
unsigned char Second;
} DateTime;
这个放在头文件里声明
使用
DateTime dt;
dt.H_Year=1;
dt.Day=16;

DateTime *dt;
dt->H_Year=1;
dt->Day=16;