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

QQ登錄

只需一步,快速開始

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

求助:?jiǎn)蝹(gè)按鍵長(zhǎng)按,短按的問(wèn)題

[復(fù)制鏈接]
ID:4297 發(fā)表于 2009-4-4 09:39 | 顯示全部樓層 |閱讀模式
我想實(shí)現(xiàn)一個(gè)按鍵key短按時(shí)(就是正常按,判斷去抖后),led1閃爍兩下,當(dāng)key長(zhǎng)按時(shí)(一直按住到1秒后),led2閃爍兩下
看那位大蝦給解決以下,不勝感謝阿!
還有就是怎么區(qū)分出是在松后后執(zhí)行,還是松手前執(zhí)行!
回復(fù)

使用道具 舉報(bào)

ID:8179 發(fā)表于 2009-4-4 17:56 | 顯示全部樓層

                            KEY BIT P1.0     ;按鍵低電平有效
                            LED BIT P2.0     ;LED高電平亮
                            MOV P1,#0FFH ;置P1為輸入方式
CHECK_KEY:         JB P1.0,$     ;等待按鍵
                            LCALL DELAY10MS   ;去抖動(dòng)10ms
                           JB P1.0,CHECK_KEY  ;確定有按鍵
                           LCALL DELAY1S       ;延時(shí)1S后檢測(cè)按鍵
                          JB P1.0,short       ;若已為高電平為短按
                         LCALL LED_FLASH    ;若仍然為低電平為長(zhǎng)按
                          LCALL LED_FLASH
                    JNB P1.0,$        ;等鍵松開
                     LCALL DELAY10MS   ;去抖動(dòng)
                     SJMP CHECK_KEY     ;返回循環(huán)                     

short:           LCALL LED_FLASH    ;閃爍1次
                    SJMP CHECK_KEY     ;循環(huán)

LED_FLASH:    SETB LED           ;閃爍程序
                       LCALL DELAY500MS    ;延時(shí)500ms
                       CLR  LED
                       LCALL DELAY500MS
                        RET
DELAY10MS:    MOV R2,#100
L1:            MOV R3,#50
                DJNZ R3,$
                DJNZ R2,L1
                RET
DELAY500MS:   MOV R2,#100
L2:           MOV R3,#250
                DJNZ R3,$
                DJNZ R2,L1
                RET
DELAY1S:      MOV R2,#200
                MOV R3,#250
                DJNZ R3,$
                DJNZ R2,L1
                RET
END

回復(fù)

使用道具 舉報(bào)

ID:4297 發(fā)表于 2009-4-6 19:40 | 顯示全部樓層

能寫個(gè)C語(yǔ)言版的嗎? 謝謝!

回復(fù)

使用道具 舉報(bào)

ID:10980 發(fā)表于 2009-4-10 16:57 | 顯示全部樓層
很感謝,我也為這問(wèn)題頭痛著
回復(fù)

使用道具 舉報(bào)

ID:4297 發(fā)表于 2009-4-10 20:29 | 顯示全部樓層
應(yīng)用中斷怎么解決??
回復(fù)

使用道具 舉報(bào)

ID:10636 發(fā)表于 2009-4-12 22:57 | 顯示全部樓層
匯編好難懂。
回復(fù)

使用道具 舉報(bào)

ID:11501 發(fā)表于 2009-4-19 20:22 | 顯示全部樓層
匯編雖然難懂,但是很實(shí)用,遇著不懂得就查字典了,有專門的匯編字典,或者上網(wǎng)搜索,多看就會(huì)明白的
回復(fù)

使用道具 舉報(bào)

ID:9960 發(fā)表于 2009-4-20 20:06 | 顯示全部樓層
以下是引用xiaochen在2009-4-12 22:57:30的發(fā)言:
匯編好難懂。

我感覺C語(yǔ)言的難懂哦~

回復(fù)

使用道具 舉報(bào)

ID:66142 發(fā)表于 2014-9-14 20:12 | 顯示全部樓層
匯編不會(huì)呀.可憐怎么沒(méi)有C語(yǔ)言
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表