找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7683|回复: 45
收起左侧

谁能给我给个流水灯程序

  [复制链接]
ID:150178 发表于 2016-11-25 17:58 | 显示全部楼层 |阅读模式
谁有啊给我发个呗
回复

使用道具 举报

ID:150194 发表于 2016-11-25 19:00 来自手机 | 显示全部楼层
#include <reg52.h>
回复

使用道具 举报

ID:150194 发表于 2016-11-25 19:11 来自手机 | 显示全部楼层
#include <reg52.h>   #include<intrins.h> #define uchar unsigned char #define uint unsigned int uchar b=0x01; void delay(uchar  x) {     uchar a;     while(x--)      {              for(a=0;a<120;a++);       } }  void main() {   while(1)    {         P0=b;      delay(50);       b=_crol_(b,1);      } }
回复

使用道具 举报

ID:57657 发表于 2016-11-26 18:49 | 显示全部楼层
控制IO口数据左移右移,赋值数据,以及加上延迟函数就行。
回复

使用道具 举报

ID:152365 发表于 2016-12-9 20:28 | 显示全部楼层
#include<reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp;
void delay(uint);
void main()
{
          temp=0xfe;
          P2=temp;
          while(1)
        {
                temp=_crol_(temp,1);
                delay(600);
                P2=temp;
        }
}
void delay(int z)
{
        uint x,y;
        for(x=100;x>0;x--)
          for(y=z;y>0;y--);
}
回复

使用道具 举报

ID:148885 发表于 2016-12-9 21:59 | 显示全部楼层
#include<reg52.h> #include<intrins.h> #define uint unsigned int #define uchar unsigned char uchar t1,t2,s; void delayms(uint); void main() {        EA=1;         ET0=1;         ET1=1;         TR0=1;         TR1=1;         while(1)         {            P1=s;                         P1=0xff;          } } void t0()interrupt 0 {         TH0=(65536-45872)/258;         TL0=(65536-45872)%256;         t1++;         if(t1==10)         {                 t1==0;                 P1=~P1;         } } void Y1()interrupt 3 {         TH1=(65536-45872)/256;         TL1=(65536-45872)%256;         t2++;         if(t2==10)         {                   t2==0;                   P1=_cror_(s,1);         } }
回复

使用道具 举报

ID:150555 发表于 2016-12-9 22:11 | 显示全部楼层
#include<reg52.h>
int a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//上至下
int b[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//下至上
int c[]={0x7e,0xbd,0xdb,0xe7};//边至中
int d[]={0xe7,0xdb,0xbd,0x7e};//中至边
void delay(int);
void main()
{
        int i,j;
        while(1){
        for(i=1;i<4;i++)
        {
                P1=0xaa;
                delay(400);
                P1=0x55;
                delay(400);
        }
        for(j=0;j<3;j++)
         {
                        for(i=0;i<8;i++)
                        {
                                P1=a[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
                        for(i=0;i<8;i++)
                        {
                                P1=b[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=c[j];
                         delay(100);
                        // P1=0xff;
                        // delay(100);
     }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=d[j];
                         delay(100);
                         //P1=0xff;
                         //delay(100);
     }
   }
         for(i=1;i<4;i++)
         {
                 P1=0x00;
                 delay(100);
                 P1=0xff;
                 delay(100);
   }
}
}
void delay(int z)
{
        int i,j;
        for(i=100;i>0;i--)
                for(j=z;j>0;j--);
}
回复

使用道具 举报

ID:153393 发表于 2016-12-9 22:15 | 显示全部楼层
#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intvoid delay(uint z);main(){ uchar aa; while(1){ aa=0xfe;P1=aa;delay(100);while(1){aa=_crol_(aa,1);P1=aa;delay(100);}}}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}
回复

使用道具 举报

ID:153755 发表于 2016-12-10 23:14 | 显示全部楼层
论坛太多教程。请多看教程和视频
回复

使用道具 举报

ID:153755 发表于 2016-12-10 23:16 | 显示全部楼层
论坛有的亲。多学习视频
回复

使用道具 举报

ID:153790 发表于 2016-12-11 11:06 | 显示全部楼层
网上挺多的啊,
回复

使用道具 举报

ID:153881 发表于 2016-12-11 15:54 | 显示全部楼层
int i;
for(i=0;i<8;i++)
     PORTA=1<<i;
for(i=7;i>=2;i--)
     PORTA=1<<i;     
回复

使用道具 举报

ID:154526 发表于 2016-12-13 21:49 | 显示全部楼层
//主函数,C语言的入口函数:       
void main(void)
{
        P2=0XFE;
        while(1){                                //无限循环
                P2=(P2<<1)|(P2>>7);        //P2口值左循环移1位,也可利用函数库"intrins.h"中的_crol_(),
                delay(50);                        //调用延时子函数,改变参数大小,调整变化速度
        }
}

//延时子函数
void delay(unsigned char tmp)//双重循环减,如改用INT型,将会达到更长的延时时间
{
        unsigned char j;
        while(tmp--){
                j=255;
                while(j--);
        }
}
回复

使用道具 举报

ID:153846 发表于 2016-12-14 22:43 | 显示全部楼层
开发板上的8只LED为共阳极连接,即单片机输出端为低电平时即可点亮LED。  程序A:  ;用最直接的方式实现流水灯   ORG 0000H   START:MOV P1,#01111111B      最下面的LED点亮   LCALL DELAY;延时1秒   MOV P1,#10111111B            最下面第二个的LED点亮   LCALL DELAY;延时1秒   MOV P1,#11011111B            最下面第三个的LED点亮 (以下省略)  LCALL DELAY  MOV P1,#11101111B   LCALL DELAY  MOV P1,#11110111B   LCALL DELAY  MOV P1,#11111011B   LCALL DELAY  MOV P1,#11111101B   LCALL DELAY  MOV P1,#11111110B   LCALL DELAY   MOV P1,#11111111B              完成第一次循环点亮,延时约0.25秒   AJMP START                    反复循环 ;延时子程序,12M晶振延时约250毫秒  DELAY: MOV R4,#2 L3: MOV R2 ,#250 L1: MOV R3 ,#250 L2: DJNZ R3 ,L2  DJNZ R2 ,L1 DJNZ R4 ,L3   RET  END 程序B:  ;用移位方式实现流水灯    org 00h    程序上电从00h开始              require.async(['wkcommon:widget/ui/lib/sio/sio.js'], function(sio) { var url = 'https://cpro.baidustatic.com/cpro/ui/c.js'; sio.callByBrowser( url, function () { BAIDU_CLB_fillSlotAsync('u2398768','cpro_u2398768'); } ); });             void function(e,t){for(var n=t.getElementsByTagName("img"),a=+new Date,i=[],o=function(){this.removeEventListener&&this.removeEventListener("load",o,!1),i.push({img:this,time:+new Date})},s=0;s< n.length;s++)!function(){var e=n[s];e.addEventListener?!e.complete&&e.addEventListener("load",o,!1):e.attachEvent&&e.attachEvent("onreadystatechange",function(){"complete"==e.readyState&&o.call(e,o)})}();alog("speed.set",{fsItems:i,fs:a})}(window,document);     ajmp main  跳转到主程序 org 0030h    主程序起始地址  main:  mov a,#0feh  给A赋值成11111110  loop:   mov p1,a  将A送到P1口,发光二极管低电平点亮  lcall delay  调用延时子程序 rl a    累加器A循环左移一位 ajmp loop 重新送P1显示  delay:  mov r3,#20  最外层循环二十次  d1:  mov r4,#80  次外层循环八十次  d2:  mov r5,#250  最内层循环250次 djnz r5,$  总共延时2us*250*80*20=0.8S  djnz r4,d2 djnz r3,d1  ret end
回复

使用道具 举报

ID:154486 发表于 2016-12-15 20:40 | 显示全部楼层
这么普遍的程序,你没有书吗哼╭(╯^╰)╮
回复

使用道具 举报

ID:155213 发表于 2016-12-16 11:08 | 显示全部楼层
网上一搜一大把
回复

使用道具 举报

ID:155215 发表于 2016-12-16 11:12 | 显示全部楼层
我可以
回复

使用道具 举报

ID:155240 发表于 2016-12-16 13:19 | 显示全部楼层
这个简单
回复

使用道具 举报

ID:140489 发表于 2017-1-6 14:28 | 显示全部楼层
多种流水灯
#include<reg52.h>  
#include<intrins.h>  
#define uint unsigned int  
#define uchar unsigned char  
void delays(uint xms)  
{  
    uint i,j;  
    for(i=xms;i>0;i--)  
       for(j=110;j>0;j--);  
}  
void main()  
{  
     uint i,j,n; uchar a,b,c,d;   
     for(i=0;i<1;i++)       //                                                               所有灯闪1下  
     {  
         P0=P1=P2=P3=0x00;delays(1000);  
         P0=P1=P2=P3=0xff;delays(1000);  
     }                        
                       P3=P2=0xff;                                                        //两边一起向下流水  
                       for(j=0;j<=8;j++)  
                       {  
                           P1=0xff<<j;P0=0xff<<j;delays(40);  
                       }  
                       for(j=0;j<=8;j++)  
                       {  
                           P3=0xff<<j; P2=0xff>>j;delays(40);  
                       }  
                       P0=P1=P2=P3=0x00;delays(500);  
                       for(j=0;j<8;j++)  
                       {P3=0xff<<(7-j);P2=0xff>>(7-j);delays(40);  
                       }  
                      for(j=0;j<8;j++)  
                       {  
                           P0=0xff<<(7-j);P1=0xff<<(7-j);delays(40);  
                       }                                 
                                    P3=P2=0xff;           //两边 杂乱 闪烁  
                                    for(j=0;j<=8;j++)  
                                    {P1=0xff<<j; P0=0xff<<j; delays(40);  
                                    }  
                                    for(j=0;j<=8;j++)  
                                    {P3=0xff>>j;P2=0xff<<j; delays(40);  
                                    }  
                                    P0=P1=P2=P3=0x00;delays(500);  
                                    for(j=0;j<8;j++)  
                                    {P1=0xff>>(7-j);P0=0xff>>(7-j);delays(40);  
                                    }  
                                    for(j=0;j<8;j++)  
                                    {P2=0xff>>(7-j);P3=0xff<<(7-j);delays(40);  
                                    }                                   
        P0=P1=P2=P3=0xff;    //一边向下流水  
        for(j=0;j<=8;j++)  
        { P1=0xff<<j;delays(30);  
        }        
        for(j=0;j<=8;j++)  
        {  
              P3=0xff<<j;delays(30);  
        }  
        for(j=0;j<=8;j++)  
        {  
              P2=0xff<<j;delays(30);  
        }  
        for(j=0;j<=8;j++)  
        {  
              P0=0xff>>j;delays(30);  
        }   
        P0=P1=P2=P3=0x00;  
        delays(500)  ;  
        for(j=0;j<8;j++)  
        {   
              P0=0xff>>(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P2=0xff<<(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P3=0xff<<(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P1=0xff<<(7-j);delays(30);  
        }  
        P0=P1=P2=P3=0xff;  
        for(j=0;j<=8;j++)  
        {  
              P0=0xff<<j; delays(30);  
        }        
        for(j=0;j<=8;j++)  
        {  
              P2=0xff>>j; delays(30);  
        }  
        for(j=0;j<=8;j++)  
        {  
              P3=0xff>>j;delays(30);  
        }  
        for(j=0;j<=8;j++)  
        {  
              P1=0xff>>j;delays(30);  
        }   
        P0=P1=P2=P3=0x00;  
        delays(500)  ;  
        for(j=0;j<8;j++)  
        {   
              P1=0xff>>(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P3=0xff>>(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P2=0xff>>(7-j);delays(30);  
        }  
        for(j=0;j<8;j++)  
        {   
              P0=0xff<<(7-j);delays(30);  
        }  //2   
                                     P0=P2=P3=0xff ;  
                       for(i=0;i<=8;i++)  
         {   P1=0xff<<i;delays(50);  
         } delays(800);  
         for(i=0;i<8;i++)  
         {   P1=0xff>>(7-i);delays(50);  
         }  P0=P1=P2=0xff;  
              for(i=0;i<=8;i++)  
              {  P3=0xff<<i;delays(50);  
              }   delays(800);  
              for(i=0;i<8;i++)  
              {   P3=0xff>>(7-i);delays(50);  
              }P0=P1=P3=0xff;   
         for(i=0;i<=8;i++)  
         {  P2=0xff<<i;delays(50);  
                                       }   delays(800);  
         for(i=0;i<8;i++)  
                                       {   P2=0xff>>(7-i);delays(50);  
                                       } P1=P2=P3=0xff;  
              for(i=0;i<=8;i++)  
              {  P0=0xff>>i;delays(50);  
              }      delays(800);  
              for(i=0;i<8;i++)  
              {  P0=0xff<<(7-i);delays(50);  
              }   
        P2=P3=0xff;for(i=0;i<=8;i++)  
                   {  
         P0=0xff<<i;P1=0xff<<i;delays(50);  
    }delays(800);  
    for(i=0;i<8;i++)  
    {  
         P0=0xff>>(7-i);P1=0xff>>(7-i);delays(50);      
    }P0=P1=0xff;  
         for(i=0;i<=8;i++)  
         {  
             P3=0xff<<i;P2=0xff>>i;delays(50);  
         }delays(800);  
         for(i=0;i<8;i++)  
         {  
             P3=0xff>>(7-i);P2=0xff<<(7-i);delays(50);  
         }  
         for(i=0;i<3;i++)  
         {  
             P1=P3=P2=0xcc;P0=0x33;delays(500);P1=P3=P2=0x33;P0=0xcc;delays(500);  
         }  
                          P1=P3=P2=0xcc;   P0=0x33;           //首先逆时针  
                                                        for(i=0;i<120;i++)  
                                                        {      
                                                               delays(100);P0=_cror_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_crol_(P2,1);  
                                                        }  
                                                        delays(1500) ;  
                                                        for(i=0;i<120;i++)  
                                                        {      
                                                               delays(100); P0=_crol_(P0,1);P1=_cror_(P1,1);P3=_cror_(P3,1);P2=_cror_(P2,1);  
                                                         } delays(1000);  
    P1=P3=P2=0x0f;   P0=0xf0;           //首先逆时针  
    for(i=0;i<80;i++)  
     {      
        delays(120);P0=_cror_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_crol_(P2,1);  
     }  
     delays(1500) ;  
      for(i=0;i<80;i++)  
     {      
        delays(120); P0=_crol_(P0,1);P1=_cror_(P1,1);P3=_cror_(P3,1);P2=_cror_(P2,1);  
     }   
                P1=P3=P0=0x77;P2=0xee;  
                for(i=0;i<50;i++)    //四口来回转  
                {      
                        delays(100);P0=_crol_(P0,1);P1=_crol_(P1,1);P3=_crol_(P3,1);P2=_cror_(P2,1);  
                }      
  P0=P3=0xff;P1=P2=0xfe;  
                        for(i=0;i<8;i++)  
         {      delays(30);  
                P1=_crol_(P1,1);P2=_crol_(P2,1);   
         }P1=P2=0xff;P3=0xfe;P0=0x7f;  
         for(i=0;i<8;i++)  
         {      delays(30);  
                P3=_crol_(P3,1);P0=_cror_(P0,1);  
         }P0=0xfe;P3=0x7f;a=0x7f;  b=0xfe;  
      for(j=1;j<8;j++)  
      {  c=0xff<<j;d=0xff>>j;  
         P1=P2=0xfe;  
                        for(i=0;i<=7;i++)  
         {      delays(30);  
                P1=_crol_(P1,1);P2=_crol_(P2,1);  
         }P1=P2=0xff;                 
                                                      for(i=0;i<7;i++)  
                                                      {      
                P0=a&c;P3=b&d;delays(30);  
                                                             a=_cror_(a,1);b=_crol_(b,1);                                                                  
                                                      }  
       } P0=P3=0x00;b=0xfe;  
     for(j=1;j<8;j++)  
     {  d=0xff>>j;  
           for(i=0;i<7;i++)  
           {  
              P1=b&d;P2=b&d;delays(30);b=_crol_(b,1);  
           }            
     }  
  n=2;     while(n)  
          {  
             P1=P2=P3=0x7f;P0=0xfe;  
             for(i=0;i<7;i++)  
             {   delays(100);P1=_cror_(P1,1);P2=_cror_(P2,1);P3=_cror_(P3,1);P0=_crol_(P0,1);  
             } delays(100);  
             c=0xfe;d=0x7f;a=0x7f;b=0xfe;   
            for(j=0;j<9;j++)  
            {                 
               for(i=0;i<=8;i++)  
               {   
                  P1=P2=P3=c&a;P0=b&d;delays(100);  
   a=_cror_(a,1);b=_crol_(b,1);                     
               } c=_cror_(c,1);d=_crol_(d,1); a=c;b=d;  
            }n--;  
          }  
                                     P3=P2=0xff;        //两边一起向下亮  
                                     for(j=0;j<=8;j++)  
                                     {  
                                           P1=0xff<<j;P0=0xff<<j;delays(40);  
                                     }  
                                     for(j=0;j<=8;j++)  
                                     {  
                                           P3=0xff<<j; P2=0xff>>j;delays(40);  
                                     }  
while(1)                                                       //一心调频率接近的跳动  
{  
    P0=P1=P2=P3=0x00;delays(800);  
    P0=P1=P2=P3=0xff;delays(800);  
}   
}  
回复

使用道具 举报

ID:160258 发表于 2017-1-6 14:58 | 显示全部楼层
仿真程序的实例中就有 你自己仔细找找
回复

使用道具 举报

ID:160452 发表于 2017-1-6 15:59 | 显示全部楼层
#include <reg51.h> #include<intrins.h> #define uchar unsigned char uchar j,temp; void delay(unsigned int ms) { uchar t; while(ms--) for(t=0;t<123;t++); } void main() { P1=0xff; delay(500); temp=0xfe; //有点怪,led接在P2.3~P2.6 for(j=0;j<4;j++) { P1=temp; delay(500); temp=_crol_(temp,1); } P1=0xff; while(1); }
回复

使用道具 举报

ID:150178 发表于 2017-2-17 07:49 来自手机 | 显示全部楼层
1131014564 发表于 2016-12-9 20:28
#include
#include
#define uint unsigned int

谢谢啦正在学51
回复

使用道具 举报

ID:150178 发表于 2017-2-17 07:49 来自手机 | 显示全部楼层
qi_dianzikeji 发表于 2016-12-9 21:59
#include #include #define uint unsigned int #define uchar unsigned char uchar t1,t2,s; void delayms( ...

谢谢,很有帮助
回复

使用道具 举报

ID:165180 发表于 2017-2-17 22:00 | 显示全部楼层
这个很多啊,网上随便收收
回复

使用道具 举报

ID:44573 发表于 2017-2-18 08:19 | 显示全部楼层
#include<reg52.h>
int a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//上至下
int b[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//下至上
int c[]={0x7e,0xbd,0xdb,0xe7};//边至中
int d[]={0xe7,0xdb,0xbd,0x7e};//中至边
void delay(int);
void main()
{
        int i,j;
        while(1){
        for(i=1;i<4;i++)
        {
                P1=0xaa;
                delay(400);
                P1=0x55;
                delay(400);
        }
        for(j=0;j<3;j++)
         {
                        for(i=0;i<8;i++)
                        {
                                P1=a[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
                        for(i=0;i<8;i++)
                        {
                                P1=b[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=c[j];
                         delay(100);
                        // P1=0xff;
                        // delay(100);
     }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=d[j];
                         delay(100);
                         //P1=0xff;
                         //delay(100);
     }
   }
         for(i=1;i<4;i++)
         {
                 P1=0x00;
                 delay(100);
                 P1=0xff;
                 delay(100);
   }
}
}
void delay(int z)
{
        int i,j;
        for(i=100;i>0;i--)
                for(j=z;j>0;j--);
}
回复

使用道具 举报

ID:165292 发表于 2017-2-18 20:05 | 显示全部楼层
百度,就有啊,在这里等回复太慢了
回复

使用道具 举报

ID:155120 发表于 2017-2-19 17:00 | 显示全部楼层
百度一下,一大片。朋友
回复

使用道具 举报

ID:129201 发表于 2017-2-21 14:44 | 显示全部楼层
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay1ms(uint);
void main()
{
   while(1)
{
    uchar a;
    a=0xfe;
    P0=a;
    a=_crol_(a,1);
    delay1ms(500);
  }
}
void delay1ms(uint m)
{
  uint i,j;
  for(i=0;i<m;i++)
  foe(j=0;j<110;j++);
}
   
回复

使用道具 举报

ID:165595 发表于 2017-2-21 18:01 | 显示全部楼层
这个网上一大片哦! 一般教程都是从点灯开始的
回复

使用道具 举报

ID:165787 发表于 2017-2-21 18:16 | 显示全部楼层
#include<reg52.h>
int a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//上至下
int b[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//下至上
int c[]={0x7e,0xbd,0xdb,0xe7};//边至中
int d[]={0xe7,0xdb,0xbd,0x7e};//中至边
void delay(int);
void main()
{
        int i,j;
        while(1){
        for(i=1;i<4;i++)
        {
                P1=0xaa;
                delay(400);
                P1=0x55;
                delay(400);
        }
        for(j=0;j<3;j++)
         {
                        for(i=0;i<8;i++)
                        {
                                P1=a[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
                        for(i=0;i<8;i++)
                        {
                                P1=b[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=c[j];
                         delay(100);
                        // P1=0xff;
                        // delay(100);
     }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=d[j];
                         delay(100);
                         //P1=0xff;
                         //delay(100);
     }
   }
         for(i=1;i<4;i++)
         {
                 P1=0x00;
                 delay(100);
                 P1=0xff;
                 delay(100);
   }
}
}
void delay(int z)
{
        int i,j;
        for(i=100;i>0;i--)
                for(j=z;j>0;j--);
}
回复

使用道具 举报

ID:165787 发表于 2017-2-21 18:24 | 显示全部楼层
#include<reg52.h>
int a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//上至下
int b[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//下至上
int c[]={0x7e,0xbd,0xdb,0xe7};//边至中
int d[]={0xe7,0xdb,0xbd,0x7e};//中至边
void delay(int);
void main()
{
        int i,j;
        while(1){
        for(i=1;i<4;i++)
        {
                P1=0xaa;
                delay(400);
                P1=0x55;
                delay(400);
        }
        for(j=0;j<3;j++)
         {
                        for(i=0;i<8;i++)
                        {
                                P1=a[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
                        for(i=0;i<8;i++)
                        {
                                P1=b[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=c[j];
                         delay(100);
                        // P1=0xff;
                        // delay(100);
     }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=d[j];
                         delay(100);
                         //P1=0xff;
                         //delay(100);
     }
   }
         for(i=1;i<4;i++)
         {
                 P1=0x00;
                 delay(100);
                 P1=0xff;
                 delay(100);
   }
}
}
void delay(int z)
{
        int i,j;
        for(i=100;i>0;i--)
                for(j=z;j>0;j--);
}
回复

使用道具 举报

ID:165787 发表于 2017-2-21 18:25 | 显示全部楼层
#include<reg52.h>
int a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//上至下
int b[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//下至上
int c[]={0x7e,0xbd,0xdb,0xe7};//边至中
int d[]={0xe7,0xdb,0xbd,0x7e};//中至边
void delay(int);
void main()
{
        int i,j;
        while(1){
        for(i=1;i<4;i++)
        {
                P1=0xaa;
                delay(400);
                P1=0x55;
                delay(400);
        }
        for(j=0;j<3;j++)
         {
                        for(i=0;i<8;i++)
                        {
                                P1=a[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
                        for(i=0;i<8;i++)
                        {
                                P1=b[i];
                                delay(20);
                                //P1=0xff;
                                //delay(20);
                        }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=c[j];
                         delay(100);
                        // P1=0xff;
                        // delay(100);
     }
   }
         for(i=0;i<3;i++)
         {
                 for(j=0;j<4;j++)
                 {
                         P1=d[j];
                         delay(100);
                         //P1=0xff;
                         //delay(100);
     }
   }
         for(i=1;i<4;i++)
         {
                 P1=0x00;
                 delay(100);
                 P1=0xff;
                 delay(100);
   }
}
}
void delay(int z)
{
        int i,j;
        for(i=100;i>0;i--)
                for(j=z;j>0;j--);
}
回复

使用道具 举报

ID:110456 发表于 2017-5-5 22:51 | 显示全部楼层
#include <reg51.h> #include <intrins.h> #define uchar unsigned char #define uint unsigned int  void DelayMS(uint x) {          uchar i;         while(x--)         {                  for(i=120;i>0;i--);         } }  void main() {          P0 = 0xFE;         while(1)         {                  P0 = _crol_(P0,1);    // _crol_,_cror_:将char型变量循环向左(右)移动指定位数后返回                  DelayMS(150);         } }
回复

使用道具 举报

ID:184914 发表于 2017-5-5 22:52 | 显示全部楼层
#include <reg52.h>   #include<intrins.h> #define uchar unsigned char #define uint unsigned int uchar b=0x01; void delay(uchar  x) {     uchar a;     while(x--)      {              for(a=0;a<120;a++);       } }  void main() {   while(1)    {         P0=b;      delay(50);       b=_crol_(b,1);      } }
回复

使用道具 举报

ID:197119 发表于 2017-5-5 22:54 | 显示全部楼层
#在这里快速回复##include <reg52.h>
回复

使用道具 举报

ID:196174 发表于 2017-5-6 00:01 | 显示全部楼层
这个在别的帖子里有文件可以直接下载
回复

使用道具 举报

ID:197179 发表于 2017-5-6 09:03 | 显示全部楼层
#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intvoid delay(uint z);main(){ uchar aa; while(1){ aa=0xfe;P1=aa;delay(100);
回复

使用道具 举报

ID:162242 发表于 2017-5-6 13:06 | 显示全部楼层
#include <reg52.h>
回复

使用道具 举报

ID:162242 发表于 2017-5-6 13:09 | 显示全部楼层
#include <reg52.h>11
回复

使用道具 举报

ID:153108 发表于 2017-5-6 13:54 | 显示全部楼层
网上好多的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表