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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1353|回復: 2
收起左側

求助,怎么在51單片機上添加可調控的按鈕

[復制鏈接]
ID:973730 發表于 2021-10-21 13:47 | 顯示全部樓層 |閱讀模式
#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
回復

使用道具 舉報

ID:123289 發表于 2021-10-21 16:46 | 顯示全部樓層
添加可調控的按鈕:【添加】【可調控】的【按鈕】
【添加】、【按鈕】:這個你隨意,極易做。
【可調控】:誰來調,誰來控?控什么?誰執行?你能說說嗎?
回復

使用道具 舉報

ID:161164 發表于 2021-10-21 17:05 | 顯示全部樓層
調控什么?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩福利 | 乳色吐息在线观看 | 日韩中文字幕在线视频 | 高清国产午夜精品久久久久久 | 国产一区欧美 | 午夜羞羞 | 1级毛片| 特级黄一级播放 | 一区二区三区四区在线播放 | 粉色午夜视频 | 美国十次成人欧美色导视频 | 国产精品欧美精品 | 美日韩中文字幕 | 亚洲国产一区二区视频 | 日本三级电影免费观看 | 亚洲精品美女视频 | 天天操夜夜操 | 亚洲少妇综合网 | 国产精品无码久久久久 | 亚洲精品888 | 最新中文字幕一区 | www.788.com色淫免费 | 午夜电影日韩 | 国产精品亚洲一区二区三区在线 | 超碰在线免费公开 | 日韩在线中文字幕 | 观看av| 高清视频一区二区三区 | 在线观看av网站永久 | 爽爽免费视频 | 在线观看黄色大片 | 亚洲精品9999 | 欧美日韩18 | 99久久久久久 | 亚洲品质自拍视频网站 | 四虎成人av | 国产黄色精品 | 美女黄网站 | 国产无人区一区二区三区 | 曰韩三级| 日韩午夜影院 |