单片机流水灯简单的程序

我写了一个程序想让流水灯往返但是不能往返只能流水求高手帮我修改下程序如下:#include"reg51.h"#include"intrins.h"#defineuintu... 我写了一个程序 想让流水灯往返 但是不能往返 只能流水 求高手帮我修改下
程序如下:
#include "reg51.h"
#include "intrins.h"
#define uint unsigned int
void delay(uint x)
{
uint y;
for(;x>0;x--)
{
for(y=0;y<124y++);
}
}
void main()
{
uint i=0xfe,j=0x7f;

while(1)
{
P1=i;
i=_crol_(i,1);
if(i==j)
{
P1=j;
j=_cror_(j,1);
}
delay(1000);
}

}
展开
 我来答
zero_fn
2011-04-22 · TA获得超过2258个赞
知道小有建树答主
回答量:1173
采纳率:80%
帮助的人:547万
展开全部
while(1)
{
P1=i;
i=_crol_(i,1);
if(i==j)
{
P1=j;
j=_cror_(j,1); //这里只会执行一次,然后就直到i左移后等于j了,然后又执行一次
} //所以得不到你要的结果。
delay(1000);
}

——————————————————正确的分割线——————————
char flag=0;
while(1)
{
if(flag)
{
P1=i;
i=_crol_(i,1);
if(i == 0x7f) flag = 1;
}
else
{
P1=i;
i=_cror_(i,1);
if(i == 0xfe) flag = 0;
}
delay(1000);
}
宿兴电子
2025-07-09 广告
深圳市宿兴电子有限公司 联系电话 13923889244位于深圳市宝安沙井镇,距离深圳机场15公里,广深高速新桥出口3公里,宝安大道50米的路程。本公司专业研发、生产压电陶瓷蜂鸣片、压电插针蜂鸣器、压电引线蜂鸣器。可根据客户需求研发定制各种... 点击进入详情页
本回答由宿兴电子提供
chen19_89
2012-06-06
知道答主
回答量:29
采纳率:0%
帮助的人:4.2万
展开全部
#include<reg51.h>

void delay10ms(int x)
{
int i,j;
for(i=0;i<x;i++)
for(j=0;j<1200;j++);
}

void left_right(int x)
{ while(1)
{ int i,j;
for(i=0;i<x;i++)
{
led=0xfe;
for(j=0;j<7;j++)
{
delay10ms(25);
led=(led<<1)|0x01;

}
delay10ms(25);
}
for(i=0;i<x;i++)
{
led=0x7f;
for(j=0;j<7;j++)
{
delay10ms(25);
led=(led>>1)|0x80;

}
delay10ms(25);
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式