标题: 单片机点亮LED流水灯的操作疑问 [打印本页]

作者: 鹏博士PBs    时间: 2018-8-10 17:08
标题: 单片机点亮LED流水灯的操作疑问
   利用STC89C52RC单片机编写一个让双数位的LED灯发光的程序,但是在编译时显示undefined indentifier(未定义变量)的报错,之后进行的变量定位后又显示syntax error(语法错误)的提示,作为一名刚刚入门的单片机小白来讲真心很迷,请求各位帮忙指点迷津,谢谢大家了。

捕获.PNG (226.64 KB, 下载次数: 82)

捕获.PNG

作者: Januaryzlw    时间: 2018-8-10 17:23
多半是有中文的字符
作者: emmmmm    时间: 2018-8-10 17:24
define宏定义最后不能加 分号
作者: gluck    时间: 2018-8-10 17:32
语法错误,按提示改
作者: 249095775    时间: 2018-8-10 18:23
就是#define uchar unsigned char 就行了不用加这个“ ; ”  
作者: jdddd    时间: 2018-8-10 18:23
define后面不能加分号。如果要加分号,可以改成这样
typedef unsigned int uint;
typedef unsigned char uchar;
作者: 咻咻修    时间: 2018-8-10 18:31
因为你宏定义后边加了分号,导致你后边的x,y出现没有被定义的情况,所以只要去掉那两个分号就可以了。这是个很好的犯错,这是易犯问题,越早犯越好,这种小地方,以后犯一次就记住,这就是进步。加油。。。。
作者: zwwstar    时间: 2018-8-11 09:56
类似这种头文件,宏定义,引脚定义,位声明,能复制的尽量复制,少手打,这些基本格式几乎都是通用的,手打效率低,且容易错
作者: 鹏博士PBs    时间: 2018-8-11 23:31
zwwstar 发表于 2018-8-11 09:56
类似这种头文件,宏定义,引脚定义,位声明,能复制的尽量复制,少手打,这些基本格式几乎都是通用的,手打 ...

谢谢老师,的确是符号画蛇添足所致
作者: 鹏博士PBs    时间: 2018-8-11 23:32
emmmmm 发表于 2018-8-10 17:24
define宏定义最后不能加 分号

嗯嗯 的确如此  问题已经解决 谢谢您
作者: 鹏博士PBs    时间: 2018-8-11 23:33
zwwstar 发表于 2018-8-11 09:56
类似这种头文件,宏定义,引脚定义,位声明,能复制的尽量复制,少手打,这些基本格式几乎都是通用的,手打 ...

好的哦 谢谢您提出的意见
作者: 阿灿丶    时间: 2018-8-13 08:16
define 宏定义后面不能加分号
作者: 13458736873    时间: 2018-8-13 09:04
for循环最好有大括号,这样写:
作者: 13458736873    时间: 2018-8-13 09:05
for(x=1;x<10;x++)
作者: 13458736873    时间: 2018-8-13 09:06
注意for循环的格式,最好加上大括号,注意分号
作者: 1984528951    时间: 2018-8-21 12:04
定义的uchar和uint后面的分好去了
作者: 文凤轩    时间: 2018-8-21 15:30
define 宏定义后面不能加分号,对的
作者: 文凤轩    时间: 2018-8-22 00:49
重要提示在跳马的时候一定要在纯中文的界面下输入包括标点符号不然很容易报错的能复制函数的尽量复制用手敲出来的很多错
作者: 暗双魂    时间: 2018-8-22 04:10
细节决定成败啊
作者: 15270661671    时间: 2018-8-22 11:23
宏定义后面不要加分号,加了会出错。
作者: 1984528951    时间: 2018-8-23 15:27
第三行第四行的分号去了,define定义后面不能加分号




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1