欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 求助,怎么在51單片機上添加可調控的按鈕 [打印本頁]

作者: RK-800    時間: 2021-10-21 13:47
標題: 求助,怎么在51單片機上添加可調控的按鈕
#include<reg52.h>
#include<intrins.h> //庫函數
#define uint unsigned int
#define uchar unsigned char//宏定義
void delay(uint xms)//延時函數
{
              uint i,j;
              for(i=xms;i>0;i--)
                            for(j=110;j>0;j--);
}
void zys(uint t)//左右閃爍
{
              while(t--)
              {
                            P3=P2=0x00;
                            delay(500);

P1=P0=0x00;
                            delay(500);
                            P1=P0=0xff;
              }
}
void qs(uint t)//全部閃亮
{
              while(t--)
              {
                            P0=P1=P2=P3=0xff;
                            delay(300);
                            P0=P1=P2=P3=0x00;
                            delay(300);
              }
              P1=P2=P3=P0=0xff;
}
void ycdl(uint t)//依次點亮
{
              uchar code table[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};
              uint i;
              while(t--)
              {
                            for(i=0;i<8;i++)
                                          {
                                                        P0=table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P1=table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P2=table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P3=table[i];
                                                        delay(200);
                                          }
              }
}
void ycxm (uint t)//依次熄滅
{
                            uchar code table[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};
              uint i;
              while(t--)
              {
                            P0=P1=P2=P3=0x00;
                            for(i=0;i<8;i++)
                                          {
                                                        P0=~table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P1=~table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P2=~table[i];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P3=~table[i];
                                                        delay(200);
                                          }
              }
}
void jgs(uint t)//間隔閃爍
{
              while(t--)
              {
                            P0=P1=P2=P3=0xaa;
                            delay(500);
                            P0=P1=P2=P3=~0xaa;
                            delay(500);
              }
              P0=P1=P2=P3=0xff;
              delay(200);
}

void sszs(uint t)//順時針閃爍
{
              uchar a,i;
              while(t--)
              {
                            a=0xfe;
                            for(i=0;i<8;i++)
                            {
                                          P0=a;
                                          delay(200);
                                          a=_crol_(a,1);
                            }
                            P0=0xff;
                            a=0xfe;
                            for(i=0;i<8;i++)
                            {
                                          P1=a;
                                          delay(200);
                                          a=_crol_(a,1);
                            }
                            P1=0xff;
                            a=0xfe;
                            for(i=0;i<8;i++)
                            {
                                          P2=a;
                                          delay(200);
                                          a=_crol_(a,1);
                            }
                            P2=0xff;
                            a=0xfe;
                            for(i=0;i<8;i++)
                            {
                                          P3=a;
                                          delay(200);
                                          a=_crol_(a,1);
                            }
                            P3=0xff;
              }
}
void nszs(uint t)//逆時針閃爍
{
              uchar a,i;
              while(t--)
              {
                            a=0x7f;
                            for(i=0;i<8;i++)
                            {
                                          P3=a;
                                          delay(200);
                                          a=_cror_(a,1);
                            }
                            P3=0xff;
                            a=0x7f;
                            for(i=0;i<8;i++)
                            {
                                          P2=a;
                                          delay(200);
                                          a=_cror_(a,1);
                            }
                            P2=0xff;
                            a=0x7f;
                            for(i=0;i<8;i++)
                            {
                                          P1=a;
                                          delay(200);
                                          a=_cror_(a,1);
                            }
                            P1=0xff;
                            a=0x7f;
                            for(i=0;i<8;i++)
                            {
                                          P0=a;
                                          delay(200);
                                          a=_cror_(a,1);
                            }
                            P0=0xff;
              }
}
void djs1(uint t)//對角閃爍2個順時針
{
              uchar i;
              uchar code table[]={0xf0,0xe1,0xc3,0x87,0x0f,0x1f,0x3f,0x7f,
                                               0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,
                                               0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,
                                               0xf0,0xe1,0xc3,0x87,0x0f,0x1f,0x3f,0x7f,0xff};                                                                 
              while(t--)
              {
                            for(i=0;i<17;i++)
                                          {
                                                        P0=P2=table[i];
                                                        P1=P3=table[i+17];
                                                        delay(200);
                                          }
                            for(i=0;i<17;i++)
                                          {
                                                        P1=P3=table[i+17];
                                                        P0=P2=table[i];
                                                        delay(200);
                                          }
              }
              delay(300);
              P0=P1=P2=P3=0xff;
}
void djs2(uint t)//對角閃4個逆時針
{
              uchar i;
              uchar code table[]={0x0f,0x87,0xc3,0xe1,0xf0,0x78,0x3c,0x1e,0x0f};
              while(t--)
              {
                            for(i=0;i<9;i++)
                                          {
                                                        P1=P2=P3=P0=table[i];
                                                        delay(200);
                                          }
              }
}
void sxhx(uint t)//從上往下畫心
{
              uchar code table[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,
                                                                                                                                                          0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
              uint i;
              while(t--)
              {
                            for(i=0;i<8;i++)
                                          {
                                                        P0=table[i];
                                                        P3=table[i+8];
                                                        delay(200);
                                          }
                            for(i=0;i<8;i++)
                                          {
                                                        P1=table[i];
                                                        P2=table[i+8];
                                                        delay(200);
                                          }
                            P1=P2=P3=P0=0xff;
                            delay(300);
              }
}

void main()
{
while(1)
{
ycdl(1);
              ycxm(1);
              jgs(3);
              sszs(1);
              nszs(1);
              djs1(1);
                            djs2(3);
                            zys(3);
                            sxhx(1);
                            qs(3);
}       
}

仿真圖.png (166.08 KB, 下載次數: 39)

仿真圖.png

作者: yzwzfyz    時間: 2021-10-21 16:46
添加可調控的按鈕:【添加】【可調控】的【按鈕】
【添加】、【按鈕】:這個你隨意,極易做。
【可調控】:誰來調,誰來控?控什么?誰執行?你能說說嗎?
作者: lkc8210    時間: 2021-10-21 17:05
調控什么?




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1