遇到一道流水灯问题,大神请进,谢谢了

2019-07-15 16:16发布

  1. 题目是第一次一个灯流动一次,第二次两个灯流动,依次到8个灯,时间间隔为300ms。我写出的程序第3次开始灯的显示就有问题。大神帮忙改下,谢谢了。
复制代码

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
lichengjie2015
1楼-- · 2019-07-15 16:40
#include<reg52.h>
#include<intrins.h>
void delay(int x)
{
        int i,j;
        for(i=110;i>=0;i--)
                for(j=x;j>=0;j--);
}
void main()
{
       
        int a,b;
        while(1)
        {
                a=0xfe;
                for(b=1;b<8;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0xfc;
                for(b=1;b<7;b++)
                {
                P1=a;
                a=_crol_(b,1);
                delay(300);
                }
                delay(300);

                a=0xf8;
                for(b=1;b<6;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0xf0;
                for(b=1;b<5;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0xe0;
                for(b=1;b<4;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0xc0;
                for(b=1;b<4;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0x80;
                for(b=1;b<3;b++)
                {
                P1=a;
                a=_crol_(a,1);
                delay(300);
                }
                delay(300);

                a=0x00;
                P1=a;
                delay(300);
        }
}
丶未云何龙
2楼-- · 2019-07-15 19:22
lichengjie2015 发表于 2015-8-15 15:46
#include
#include
void delay(int x)

谢谢,你的是8种灯亮的情况都写出来,有没有简单一些的
lichengjie2015
3楼-- · 2019-07-15 22:58
丶未云何龙 发表于 2015-8-15 15:59
谢谢,你的是8种灯亮的情况都写出来,有没有简单一些的

试试直接for循环。。我先看看,然后发给你
wiefel
4楼-- · 2019-07-16 00:04
看不见你发的程序
丶未云何龙
5楼-- · 2019-07-16 03:49
 精彩回答 2  元偷偷看……
腾讯qq
6楼-- · 2019-07-16 05:26
顶一贴,我是新手,感觉对啊,我的开发板坏了,等我试试哈

一周热门 更多>