流水灯程序总提示错误

2019-07-16 03:11发布

#include<reg51.h>
sbit m=P1;
void delay()
{
int x=32766;
while(x--);
}
void main()
{
char i;
while(1)
{
  for(i=0;i<8;i++)
  {
   P0=m;
   delay();
   m<<=1;
  }
}
}
提示错误:EX8.C(17): error C193: '<<=': bad operand type
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
回到/lq从前
1楼-- · 2019-07-16 03:48
 精彩回答 2  元偷偷看……
icewu521
2楼-- · 2019-07-16 09:30
楼主是想P1口赋值给m作为初值吗,可以这样
#include<reg51.h>
void delay()
{
int x=32766;
while(x--);
}
void main()
{
char i,m;
m=P1;
while(1)
{
  for(i=0;i<8;i++)
  {
   P0=m;
   delay();
   m<<=1;
  }
}
}
5768340
3楼-- · 2019-07-16 12:40
和2楼的观点一样,欢迎加入我的小组http://bbs.elecfans.com/group-352-1.html
in发烧友ing
4楼-- · 2019-07-16 13:05
真心搞不懂楼主:sbit m=P1;这个是什么意思
如果是楼上所说的意思,那楼上正解,

如果只是P0接LED灯,与P1无关,做流水灯,那就这样
#include<reg51.h>
void delay()
{
int x=32766;
while(x--);
}
void main()
{
char i,m;
m=0xfe;
while(1)
{
  for(i=0;i<8;i++)
  {
   P0=m;
   delay();
   m<<=1;
  }
}
}
xiaobeishou123
5楼-- · 2019-07-16 16:48
icewu521 发表于 2012-12-14 00:15
楼主是想P1口赋值给m作为初值吗,可以这样
#include
void delay()

嗯,这样改就可以了,谢谢了
3htech
6楼-- · 2019-07-16 19:14
 精彩回答 2  元偷偷看……

一周热门 更多>