久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10356|回復: 45
打印 上一主題 下一主題
收起左側

誰能給我給個流水燈程序

  [復制鏈接]
跳轉到指定樓層
#
ID:150178 發表于 2016-11-25 17:58 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
誰有啊給我發個唄
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

45#
ID:197464 發表于 2017-5-6 20:17 | 只看該作者
#include<reg52.h>                                                      //包含特殊功能寄存器定義的頭文件
                                                                                          


sbit ADDR0 = P1^0;                                                          //位地址聲明,注意:sbit必須小寫,P必須大寫

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;



int main(void)

{
                                                         
        unsigned char cnt1 = 0;                                              //定義一個字符型變量cnt1,并初始賦值0

        unsigned char cnt2 = 0;                                          //定義一個字符型變量cnt2,并初始賦值0

        unsigned int i = 0;                                                 //定義無符號整型變量i,并初始賦值0



        ENLED = 0;                                                                   // 使能3-8譯碼器

        ADDR3 = 1;

        ADDR2 = 1;                                        // 開啟8盞小燈總開關

        ADDR1 = 1;

        ADDR0 = 0;



        while(1)                                   //主循環,程序無限循環執行該循環體語句

        {

                P0 = ~(0x01 << cnt1);                       // P0等于1左移cnt位,控制8個LED燈,P0等于1時二進制是0b00000001,然后取反變成0b11111110,8個小燈以此類推

                for (i=0; i<30000; i++);                           //軟件延時
                                                                                           //移位計數變量自加1
                cnt1++;

            
                if(cnt1 >= 8)                                                  //移位計數超過7次后,再重新從0開始
            {

               for (cnt2=0; cnt2<=7; ++cnt2)       // 實現從左向右移動
                                                                                         
                        {

                                 P0 = ~(0x80 >> cnt2);                   //P0等于0x80右移cnt位,控制8個LED燈,P0等于80時二進制是0b10000000,然后取反變成0b01111111,8個小燈以此類推

                                 for (i=0; i<30000; i++);           //軟件延時
                                                                                          
                                                                                          
                                 if(cnt2 >= 7)                                   //移位計數超過6次后,再重新從0開始

                                  {

                                        cnt1 = 0;                                   //移位計數cnt1等于0時,開始循環

                                  }

                         }

                  }

                cnt2 = 0;                                                          //移位計數cnt2等于0時,重新開始程序循環

        }



        return 0;                                                          //返回住函數

}
回復

使用道具 舉報

44#
ID:197445 發表于 2017-5-6 19:24 | 只看該作者

#include "reg52.h"                         //此文件中定義了單片機的一些特殊功能寄存器
#include<intrins.h>                //因為要用到左右移函數,所以加入這個頭文件

typedef unsigned int u16;          //對數據類型進行聲明定義
typedef unsigned char u8;

#define led P2           //將P2口定義為led 后面就可以使用led代替P2口

/*******************************************************************************
* 函 數 名         : delay
* 函數功能                   : 延時函數,i=1時,大約延時10us
*******************************************************************************/
void delay(u16 i)
{
        while(i--);       
}

/*******************************************************************************
* 函 數 名       : main
* 函數功能                 : 主函數
* 輸    入       : 無
* 輸    出             : 無
*******************************************************************************/
void main()
{
        u8 i;
        led=0xfe;
        delay(50000); //大約延時450ms       
        while(1)
        {       
/*                for(i=0;i<8;i++)
                {
                        P2=~(0x01<<i);         //將1右移i位,然后將結果取反賦值到P2口
                        delay(50000); //大約延時450ms
                }
*/               
                for(i=0;i<7;i++)         //將led左移一位
                {
                        led=_crol_(led,1);
                        delay(50000); //大約延時450ms       
                }
                for(i=0;i<7;i++)        //將led右移一位
                {
                        led=_cror_(led,1);
                        delay(50000); //大約延時450ms       
                }       
        }               
}
回復

使用道具 舉報

43#
ID:197393 發表于 2017-5-6 16:59 | 只看該作者

/*---------------------------------------------------------------*/
#include<reg52.h> //包含頭文件,一般情況不需要改動,
                  //頭文件包含特殊功能寄存器的定義
/*-------------------------IO口定義----------------------------*/
sbit P20 = P2^0;//這是為了關閉開發板上的數碼管實際應用去掉
sbit P21 = P2^1;//這是為了關閉開發板上的數碼管實際應用去掉
sbit CS88 = P2^2;//這是為了關閉開發板上的點陣實際應用去掉

sbit LED0=P1^0;// 用sbit 關鍵字 定義 LED到P1.0端口,
sbit LED1=P1^1;//LED是自己任意定義且容易記憶的符號
sbit LED2=P1^2;
sbit LED3=P1^3;
sbit LED4=P1^4;
sbit LED5=P1^5;
sbit LED6=P1^6;
sbit LED7=P1^7;
/*------------------------------------------------
                    主函數
------------------------------------------------*/
void main (void)
{
        P1=0x00;//這是為了關閉開發板上的數碼管實際應用去掉
        P20=0; //這是為了關閉開發板上的數碼管實際應用去掉
        P21=0; //這是為了關閉開發板上的數碼管實際應用去掉
        CS88=0; //這是為了關閉開發板上的點陣實際應用去掉
        P1=0xFF;//P1口置1

                  //此方法使用bit位對單個端口賦值
LED0=0;            //將P1.0口賦值 0,對外輸出低電平
LED1=1;
LED2=0;
LED3=1;
LED4=0;
LED5=1;
LED6=0;
LED7=1;
while (1)         //主循環
  {
                  //主循環中添加其他需要一直工作的程序
  }
}
回復

使用道具 舉報

42#
ID:197362 發表于 2017-5-6 16:07 | 只看該作者
用FPGA做的
回復

使用道具 舉報

41#
ID:197136 發表于 2017-5-6 15:27 | 只看該作者
這個網上很多吧
回復

使用道具 舉報

40#
ID:197324 發表于 2017-5-6 15:16 | 只看該作者
這個網上一大把
回復

使用道具 舉報

39#
ID:153108 發表于 2017-5-6 13:54 | 只看該作者
網上好多的
回復

使用道具 舉報

38#
ID:162242 發表于 2017-5-6 13:09 | 只看該作者
#include <reg52.h>11
回復

使用道具 舉報

37#
ID:162242 發表于 2017-5-6 13:06 | 只看該作者
#include <reg52.h>
回復

使用道具 舉報

36#
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);
回復

使用道具 舉報

35#
ID:196174 發表于 2017-5-6 00:01 | 只看該作者
這個在別的帖子里有文件可以直接下載
回復

使用道具 舉報

34#
ID:197119 發表于 2017-5-5 22:54 | 只看該作者
#在這里快速回復##include <reg52.h>
回復

使用道具 舉報

33#
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);      } }
回復

使用道具 舉報

32#
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);         } }
回復

使用道具 舉報

31#
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--);
}
回復

使用道具 舉報

30#
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--);
}
回復

使用道具 舉報

29#
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--);
}
回復

使用道具 舉報

28#
ID:165595 發表于 2017-2-21 18:01 | 只看該作者
這個網上一大片哦! 一般教程都是從點燈開始的
回復

使用道具 舉報

27#
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++);
}
   
回復

使用道具 舉報

26#
ID:155120 發表于 2017-2-19 17:00 | 只看該作者
百度一下,一大片。朋友
回復

使用道具 舉報

25#
ID:165292 發表于 2017-2-18 20:05 | 只看該作者
百度,就有啊,在這里等回復太慢了
回復

使用道具 舉報

24#
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--);
}
回復

使用道具 舉報

23#
ID:165180 發表于 2017-2-17 22:00 | 只看該作者
這個很多啊,網上隨便收收
回復

使用道具 舉報

22#
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( ...

謝謝,很有幫助
回復

使用道具 舉報

21#
ID:150178 發表于 2017-2-17 07:49 來自觸屏版 | 只看該作者
1131014564 發表于 2016-12-9 20:28
#include
#include
#define uint unsigned int

謝謝啦正在學51
回復

使用道具 舉報

20#
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); }
回復

使用道具 舉報

19#
ID:160258 發表于 2017-1-6 14:58 | 只看該作者
仿真程序的實例中就有 你自己仔細找找
回復

使用道具 舉報

18#
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);  
}   
}  
回復

使用道具 舉報

17#
ID:155240 發表于 2016-12-16 13:19 | 只看該作者
這個簡單
回復

使用道具 舉報

16#
ID:155215 發表于 2016-12-16 11:12 | 只看該作者
我可以
回復

使用道具 舉報

15#
ID:155213 發表于 2016-12-16 11:08 | 只看該作者
網上一搜一大把
回復

使用道具 舉報

14#
ID:154486 發表于 2016-12-15 20:40 | 只看該作者
這么普遍的程序,你沒有書嗎哼╭(╯^╰)╮
回復

使用道具 舉報

13#
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
回復

使用道具 舉報

12#
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--);
        }
}
回復

使用道具 舉報

11#
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;     
回復

使用道具 舉報

10#
ID:153790 發表于 2016-12-11 11:06 | 只看該作者
網上挺多的啊,
回復

使用道具 舉報

9#
ID:153755 發表于 2016-12-10 23:16 | 只看該作者
論壇有的親。多學習視頻
回復

使用道具 舉報

8#
ID:153755 發表于 2016-12-10 23:14 | 只看該作者
論壇太多教程。請多看教程和視頻
回復

使用道具 舉報

7#
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--);}
回復

使用道具 舉報

6#
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--);
}
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 秋霞影院一区二区 | 精品中文字幕一区二区三区 | 伊人狼人影院 | 日本一区二区三区四区 | 亚洲精品视频在线 | 久久国内精品 | 一区二区精品 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 欧洲视频一区 | 操操操操操 | 久久国产美女视频 | 一区二区在线 | 日韩黄色免费 | 国产精品美女久久久久久久网站 | 日本久久久久久 | 日本免费在线观看视频 | 1级黄色大片 | 日韩视频中文字幕 | 欧美日韩高清在线一区 | 亚洲国产精品网站 | 伊人久久一区二区 | 国产精品久久久久久婷婷天堂 | 精品国产区 | 免费人成激情视频在线观看冫 | 成人在线播放网站 | 国产精品91网站 | 亚洲在线电影 | 欧美日韩视频 | 日韩成人免费视频 | 91精品国产一区二区在线观看 | 日日夜夜精品视频 | 视频一区二区三区四区五区 | 久热电影 | 四虎影院免费在线播放 | 理论片免费在线观看 | 老司机免费视频 | 国产精品一区二区三区久久 | av中文在线 | 国产精品一区在线观看 | 最新毛片网站 | 国产精品1区 |