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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 7907|回復(fù): 11
收起左側(cè)

關(guān)于單片機(jī)按鍵控制小燈,一個(gè)按鍵如何控制多個(gè)程序?

  [復(fù)制鏈接]
ID:421426 發(fā)表于 2019-1-1 15:11 | 顯示全部樓層 |閱讀模式
想實(shí)現(xiàn)一個(gè)按鍵控制多個(gè)程序應(yīng)該怎么辦   每按下一次  更換一個(gè)程序   但是用的同一個(gè)按鍵
回復(fù)

使用道具 舉報(bào)

ID:451904 發(fā)表于 2019-1-1 16:09 來自觸屏版 | 顯示全部樓層
可以定義一個(gè)變量,按鍵按下去后變量加一,然后后面寫if語(yǔ)句,當(dāng)變量為0時(shí)執(zhí)行什么程序,當(dāng)變量為1時(shí)執(zhí)行什么程序,以此類推,這樣就可以用一個(gè)按鍵更換程序了
回復(fù)

使用道具 舉報(bào)

ID:459120 發(fā)表于 2019-1-1 16:19 | 顯示全部樓層
可以使用中斷嵌套
回復(fù)

使用道具 舉報(bào)

ID:164602 發(fā)表于 2019-1-1 16:25 | 顯示全部樓層
可以嘛——用switch語(yǔ)句。
按鍵只計(jì)數(shù),再通過switch語(yǔ)句選擇不同的函數(shù),就可以了。
例如:
                if(k1==0)//掃描鍵盤k1
                {
                        Delay10ms(1);
                        if(k1==0)
                        {
                            j++;
                            if (j>5)
                            {
                                 j=0;
                            }
                            while((i<50)&&(k1==0))
                            {
                                    Delay10ms(1);
                                    i++;
                            }
                            i=0;
                        }

                switch(j)         //位選,選擇點(diǎn)亮的數(shù)碼管,
                {
                        case(0):
                                ONE(); break;
                        case(1):
                                TWO(); break;
                        case(2):
                                ......; break;
                        case(3):
                                ......; break;
                        case(4):
                                ......; break;
                        case(5):
                                ......; break;
                        }
回復(fù)

使用道具 舉報(bào)

ID:357520 發(fā)表于 2019-1-1 16:40 | 顯示全部樓層
創(chuàng)建標(biāo)志位,一個(gè)值對(duì)應(yīng)一個(gè)程序
回復(fù)

使用道具 舉報(bào)

ID:459397 發(fā)表于 2019-1-1 16:59 | 顯示全部樓層
#include <reg51.h>
#define uchar unsigned char
sbit key = P1^0;
sbit led0 = P1^1;
sbit led1 = P1^2;
uchar count = 0;
void delayms (uchar time)//延時(shí)
{
for(time; time>0; time--)
{
TMOD |= 0x01;
TH0 = 0xfc;
TL0 = 0x18;
TR0 = 1; //啟動(dòng)計(jì)數(shù)器0
while(TF0!=1);//計(jì)數(shù)溢出
TF0 = 0;
TR0 = 0;
}
}
void scan_key (void)
{
if (!key)
{
delayms (5);
if (!key)
{
delayms (1);
while (!key);
count++;
if (count==3)
{
count = 0;
}
}
}
}
void main (void)
{
P1 = 0xff;
while (1)
{
scan_key ();
if (count==0)
{
led0 = 1;
led1 = 1;
}
if (count==1)
{
led0 = 0;
led1 = 1;
}
if (count==2)
{
led0 = 1;
led1 = 0;
}
}
}
回復(fù)

使用道具 舉報(bào)

ID:459381 發(fā)表于 2019-1-1 17:05 | 顯示全部樓層
控制多個(gè)程序  首先程序是你自己寫的   執(zhí)行完一個(gè)動(dòng)作倒是可以進(jìn)行下一個(gè)  但是按鈕就是個(gè)開關(guān)而已   所以按鍵切換不了程序   程序簡(jiǎn)單或復(fù)雜自己寫入
回復(fù)

使用道具 舉報(bào)

ID:94031 發(fā)表于 2019-1-1 17:25 | 顯示全部樓層
可以設(shè)個(gè)標(biāo)記,按一下標(biāo)記+1,標(biāo)記數(shù)不變后,執(zhí)行標(biāo)記數(shù)對(duì)應(yīng)的程序。
回復(fù)

使用道具 舉報(bào)

ID:356526 發(fā)表于 2019-1-1 17:50 | 顯示全部樓層
定義一個(gè)變量,每按一次按鍵變量自加1,然后判斷變量的值,根據(jù)變量的值跳轉(zhuǎn)程序,當(dāng)變量自增到一定的值就重新給變量賦值1,希望能幫到你
回復(fù)

使用道具 舉報(bào)

ID:421426 發(fā)表于 2019-1-3 14:41 | 顯示全部樓層
sadwdawdasd 發(fā)表于 2019-1-1 16:59
#include
#define uchar unsigned char
sbit key = P1^0;

但是怎樣才可以將程序快速的跳出延時(shí)函數(shù)呢    我想用break  但是應(yīng)該怎么加呢
回復(fù)

使用道具 舉報(bào)

ID:460873 發(fā)表于 2019-1-3 15:36 來自觸屏版 | 顯示全部樓層
#include<reg52.h> #define uint unsigned int #define uchar unsigned char #define LED P0 sbit S1=P1^0; 按鍵1 void delay(uint i) { uchar x,j; for(j=0;j<i;j++) for(x=0;x<=148;x++); } void main() { if(s1==0) { delay(2); if(s1==0) { LED=0; } } }
回復(fù)

使用道具 舉報(bào)

ID:259017 發(fā)表于 2019-1-3 19:10 | 顯示全部樓層
可以使用狀態(tài)機(jī)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 中文精品视频 | 久久亚洲精品国产精品紫薇 | 国产欧美精品一区二区三区 | 四虎影音 | 美女爽到呻吟久久久久 | 国产精品午夜电影 | 亚洲一区二区三区在线视频 | a毛片| 久久久久久久国产精品影院 | 久久久91精品国产一区二区三区 | 日产精品久久久一区二区福利 | 国产在线观看一区二区三区 | 日韩欧美一区二区三区免费观看 | 久久久久久亚洲精品 | 国产精品一区二区三 | 高清亚洲 | 国产在线97 | hitomi一区二区三区精品 | 成人免费视频一区二区 | 亚洲视频在线免费观看 | 日韩国产一区二区三区 | 欧美日韩中文字幕在线 | 日韩一区二区三区在线视频 | 精品久久久久久亚洲综合网站 | 精品无码久久久久久国产 | 久久高清 | 一区二区三区四区毛片 | 国产伦一区二区三区视频 | 国产综合视频 | 国外成人在线视频 | 国产一区二区三区在线看 | 欧美精品一区久久 | 精久久久久 | 色播99 | 99色在线 | 成人精品一区亚洲午夜久久久 | 亚洲一区二区精品视频在线观看 | 成人区一区二区三区 | 精品国产一区二区 | 成人免费观看视频 | 天天干夜夜拍 |