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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4355|回復: 12
收起左側

萌新想請問一下單片機大佬怎么實現(xiàn)同一個按鈕第一次按下和第二次按下效果不一樣。

[復制鏈接]
ID:811125 發(fā)表于 2020-8-5 11:25 | 顯示全部樓層 |閱讀模式
具體來說就是第一次按下按鈕小燈會亮10S,如果在小燈亮的10S之內再次按下開關,小燈就會熄滅。麻煩各位大佬了!
回復

使用道具 舉報

ID:332444 發(fā)表于 2020-8-5 14:38 | 顯示全部樓層
提前結束延時就是
回復

使用道具 舉報

ID:332444 發(fā)表于 2020-8-5 14:40 | 顯示全部樓層
設置一個變量表示第一次按下,第二次按下判斷此變量結束延時。
回復

使用道具 舉報

ID:811576 發(fā)表于 2020-8-5 16:23 | 顯示全部樓層
可以按照下面代碼的思路來實現(xiàn)

static int flag = 0;

void main(void) {
        int32 i = 0;
        while (1) {
                if ((flag == 0) && (key)){
                        //延時10s 設置delay標志
                        if(delay) {
                                flag = 1;
                        } else {
                                flag = 0;
                        }
                } else if ((flag == 1) && (key)) {
                        //關閉led
                        flag = 0;
                }
        }
}
回復

使用道具 舉報

ID:811576 發(fā)表于 2020-8-5 16:25 | 顯示全部樓層
可以按照下面代碼的思路進行編碼

static int flag = 0;

void main(void) {
        int32 i = 0;
        while (1) {
                if ((flag == 0) && (key)){
                        //延時10s 設置delay標志
                        if(delay) {
                                flag = 1;
                        } else {
                                flag = 0;
                        }
                } else if ((flag == 1) && (key)) {
                        //關閉led
                        flag = 0;
                }
        }
}
回復

使用道具 舉報

ID:811568 發(fā)表于 2020-8-5 17:08 | 顯示全部樓層
1.方法1:設置計數(shù)器記下案件的次數(shù),然后再不同次數(shù)完成不同操作
1.方法2:用定時器判斷按下按鍵的時間,不同時間不同操作。
回復

使用道具 舉報

ID:592807 發(fā)表于 2020-8-5 17:23 | 顯示全部樓層
定義一個全局變量當標志位,每按一次標志位數(shù)字改變一次。不同數(shù)值的標志位啟動不同功能
回復

使用道具 舉報

ID:462827 發(fā)表于 2020-8-5 21:09 | 顯示全部樓層
用狀態(tài)標識就行
回復

使用道具 舉報

ID:716656 發(fā)表于 2020-8-6 11:12 | 顯示全部樓層
按鍵-消抖-按鍵-松手,a++,if(a%=?)
回復

使用道具 舉報

ID:457495 發(fā)表于 2020-8-6 16:29 | 顯示全部樓層
簡單來說,就是一個邏輯問題。
回復

使用道具 舉報

ID:457495 發(fā)表于 2020-8-6 16:31 | 顯示全部樓層
簡單來說就是邏輯問題,如果你的按鍵有用,你原來是檢測按鍵按下之后執(zhí)行一個函數(shù),那你就設置一個變量。只要按下一次這個變量+1,那么再使用CASE去檢測變量的值,這樣就可以實現(xiàn),按不同的次數(shù)執(zhí)行不同的函數(shù)程序,記得要將變量清零,然后按鍵的防抖動要做好。
回復

使用道具 舉報

ID:811125 發(fā)表于 2020-8-12 15:47 | 顯示全部樓層
xianfajushi 發(fā)表于 2020-8-5 14:40
設置一個變量表示第一次按下,第二次按下判斷此變量結束延時。

謝謝您!
回復

使用道具 舉報

ID:813773 發(fā)表于 2020-8-13 20:37 | 顯示全部樓層
可以用按鍵計數(shù),第一下與第二下電位相反
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

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