标题:
流水灯程序错误error C141: syntax error near 'unsigned'
[打印本页]
作者:
苏苏彧
时间:
2020-2-7 16:59
标题:
流水灯程序错误error C141: syntax error near 'unsigned'
自学单片机中,写这个流水灯程序,不知道是哪步错了,求各位指点,万分感谢!
#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
#define led P2
void delay(u16 i)
{
while(i--);
}
void main()
{
led=0x01;
u8 cnt=0;
while(1)
{
led=~(led<<cnt);
delay(50000);
if(cnt>=8)
{cnt=0;}
}
}
错误提示如下
liushuideng.c(14): error C141: syntax error near 'unsigned'
liushuideng.c(14): error C202: 'cnt': undefined identifier
作者:
学子哟
时间:
2020-2-7 19:16
你把main函数cnt定义放到第一行就可以编译成功了
u8 cnt=0;
led=0x01;
作者:
banalsheep
时间:
2020-2-7 19:23
LED=... 和u8 cnt两行颠倒一下
作者:
odfggf
时间:
2020-2-7 21:31
LED=... 和u8 cnt两行颠倒一下,或者删去 led=0x01;这行。
另外 delay(50000);这行后面应该加上cnt++; 否则后面的if语句就没有作用了,就不是流水灯,而是闪烁了
作者:
bh2030693
时间:
2020-2-8 16:00
“u8 cnt” 定义变量应放在首行,led赋值不应该放在首行。
程序中cnt没有变化,led反复取反,结果不易控制。
一般是这样写的:
批注 2020-02-08 155841.png
(8.44 KB, 下载次数: 38)
下载附件
2020-2-8 15:59 上传
作者:
苏苏彧
时间:
2020-2-9 19:42
好嘞,谢谢各位啦,问题已解决!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1