找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機一個按鍵控制調用不同程序的設計思路是什么?

[復制鏈接]
跳轉到指定樓層
樓主
ID:462680 發(fā)表于 2019-1-5 20:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
求解一個按鍵控制調用不同程序
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:94031 發(fā)表于 2019-1-6 10:14 | 只看該作者
可以用短按與長按來區(qū)分。
回復

使用道具 舉報

板凳
ID:47286 發(fā)表于 2019-1-6 10:19 | 只看該作者
一種方法是聲明n個標記 比如if(flag_1==1)就執(zhí)行 執(zhí)行完畢自己把標記清零 有多少個需要執(zhí)行的就聲明多少個標記
回復

使用道具 舉報

地板
ID:213173 發(fā)表于 2019-1-6 11:21 | 只看該作者
本帖最后由 wulin 于 2019-1-6 16:12 編輯

給你一個單鍵控制多任務的子函數(shù)示例
void Choice()
{
        static unsigned char i=0;
        unsigned int j;
        if(!Key)//鍵按下
        {
                j=2000;
                while(j--);//按鍵消抖
                if(!Key)//確認鍵按下
                {
                        if(++i>n)//按鍵次數(shù)計數(shù)
                                i=0;
                        while(!Key);//等待按鍵松手
                        switch(i)//多分支執(zhí)行任務
                        {                        
                                case 0: /*停止所有任務*/; break;
                                case 1: /*任務1*/; break;
                                case 2: /*任務2*/; break;
                                case 3: /*任務3*/; break;
                                ......
                                ......
                                case n: /*任務n*/; break;
                        }
                }
        }
}
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表