微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 控制流水灯的两种程序

控制流水灯的两种程序

时间:10-02 整理:3721RD 点击:
#include<reg52.h>//第一种//
sbit D1=P0^0;
sbit D2=P0^1;
sbit D3=P0^2;
sbit D4=P0^3;
sbit D5=P0^4;
sbit D6=P0^5;
sbit D7=P0^6;
sbit D8=P0^7;

unsigned int a;
void main()
{        //P0=0xF9;
        D1=0;
        D2=1;
        D3=1;
        D4=1;
     D5=1;
        D6=1;
        D7=1;
        D8=1;
        a=40000;
        while(a--);
       

   // P0=0xA4;
        D1=1;
        D2=0;
        D3=1;
        D4=1;
         D5=1;
        D6=1;
        D7=1;
        D8=1;
        a=40000;
        while(a--);   // P0=0xB0;
        D1=1;
        D2=1;
        D3=0;
        D4=1;
         D5=1;
        D6=1;
        D7=1;
        D8=1;
        a=40000;
        while(a--);
    //P0=0x99;
        D1=1;
        D2=1;
        D3=1;
        D4=0;
         D5=1;
        D6=1;
        D7=1;
        D8=1;
        a=40000;
        while(a--);
    //P0=0x99;
        D1=1;
        D2=1;
        D3=1;
        D4=1;
         D5=0;
        D6=1;
        D7=1;
        D8=1;
        a=40000;
        while(a--);
   // P0=0xB0;
        D1=1;
        D2=1;
        D3=1;
        D4=1;
         D5=1;
        D6=0;
        D7=1;
        D8=1;
        a=40000;
        while(a--);
    //P0=0xA4;
        D1=1;
        D2=1;
        D3=1;
        D4=1;
         D5=1;
        D6=1;
        D7=0;
        D8=1;
        a=40000;
        while(a--);
    //P0=0xF9;
        D1=0;
        D2=1;
        D3=1;
        D4=1;
         D5=1;
        D6=1;
        D7=1;
        D8=0;
        a=40000;
        while(a--);
}

//.//
#include<reg52.h>//第二种//
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp,num,num1;
void delay(uint);
void main()
{
               
        while(1)
        {        temp=0xfe;
        for(num1=0;num1<8;num1++)
                {       
                for(num=0;num<8;num++)
                {
                        P0=temp;
                        delay(100);
                        temp=_crol_(temp,1);
                        P0=0xff;
                        delay(100);       
                }
                }
        }
}
void delay(uint z)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);       
}

刚学,不行啊,你很厉害啊,这么轻视别人

上路了

像你这么写  估计有控制很多种方法了。

嗯 流水灯最好的 是用位运算 简洁明了!

,看着看着就晕了,最好简单点

不错 我还不会写

非常好的资源,小弟学习了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top