欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個(gè)按鍵的多次擊鍵組合應(yīng)該如何判別詳細(xì)技巧程序概述

Wildesbeast ? 來(lái)源:未知 ? 作者:佚名 ? 2019-11-09 10:45 ? 次閱讀

有時(shí)在設(shè)計(jì)中,往往要用一個(gè)按鍵來(lái)輸入多種信息。如:?jiǎn)螕?雙擊/三擊、短擊/長(zhǎng)擊、還有各種組合擊鍵方式??梢杂靡韵鲁绦騺?lái)做。

如果按鍵閉合時(shí)間《500MS,判斷為一次短擊(0);

如果按鍵閉合時(shí)間》500MS,判斷為一次長(zhǎng)擊(1);

兩次擊鍵時(shí)間間隔應(yīng)《700MS,如果按鍵釋放后700MS內(nèi)無(wú)鍵按下,則結(jié)束讀鍵。

讀鍵完畢返回一個(gè)鍵號(hào)值KEY_NUM。其意義如下:

KEY_NUM 意義

00000000 無(wú)鍵按下過(guò)

00000001 無(wú)意義

00000010 單次短擊

00000011 單次長(zhǎng)擊

00000100 短擊 + 短擊

00000101 短擊 + 長(zhǎng)擊

00000110 長(zhǎng)擊 + 短擊

00000111 長(zhǎng)擊 + 長(zhǎng)擊

…… ……

10000000 7次短擊

11111111 7次長(zhǎng)擊

上表中的KEY_NUM值的規(guī)律是,從左向右看,第一個(gè)“1”后面的每一位代表一次擊鍵;“0”代表短擊,“1”代表長(zhǎng)擊。掌握該規(guī)律后,我們可將任何一個(gè)8位的二進(jìn)制數(shù)“翻譯”成一種擊鍵組合。例如:01010101,代表的是:短+長(zhǎng)+短+長(zhǎng)+短+長(zhǎng)。

該程序最多可識(shí)別7次連續(xù)擊鍵,共254種組合。但并非每個(gè)程序中用得上。在大多數(shù)程序中,能判斷雙擊即可以了,這時(shí)可將程序中的ZHBIT定義為2。同理,如果要判斷3次按鍵,將ZHBIT定義為3即可。

當(dāng)ZHBIT=“1”時(shí),程序僅能判斷一次擊鍵,包括2種組合(短擊/長(zhǎng)擊);當(dāng)ZHBIT=“2”時(shí),程序還能判斷兩次擊鍵,包括6(2+4)種組合(短擊/長(zhǎng)擊/(短+短)/(短+長(zhǎng))/(長(zhǎng)+短)/(長(zhǎng)+長(zhǎng)));以次類推,當(dāng)ZHBIT=“3”時(shí),程序能判斷三次擊鍵,包括14(2+4+8)種組合。

ZHBIT 組合種類

1 2

2 2+4=6

3 2+4+8=14

4 2+4+8+16=30

5 2+4+8+16+32=62

6 2+4+8+16+32+64=126

7 2+4+8+16+32+64+128=254

下面這段程序摘自小匠的一個(gè)智能充電器程序(MCU是EM78P458),如下:

;********************************

;讀鍵子程序

;出口: KEY_NUM =鍵號(hào)值

;中間: KEY_DL =計(jì)數(shù)器

;說(shuō)明:

/*

短擊:鍵按下時(shí)間《500MS

長(zhǎng)擊:鍵按下時(shí)間》500MS

兩次按鍵間隔時(shí)間《700MS

鍵號(hào)定義:

KEY_NUM=“00000000”: 無(wú)鍵按下

KEY_NUM=“00000001”: 無(wú)意義

KEY_NUM=“00000010”: 單次短擊

KEY_NUM=“00000011”: 單次長(zhǎng)擊

KEY_NUM=“00000100”: 短擊 + 短擊

KEY_NUM=“00000101”: 短擊 + 長(zhǎng)擊

KEY_NUM=“00000110”: 長(zhǎng)擊 + 短擊

KEY_NUM=“00000111”: 長(zhǎng)擊 + 長(zhǎng)擊

。..

。..

KEY_NUM=“11111110”: 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 短擊

KEY_NUM=“11111111”: 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊 + 長(zhǎng)擊

*/

ZHBIT EQU 2 ;按鍵組合位(選擇范圍1~7)

;********************************

READKEY:

CLR KEY_NUM ;清鍵號(hào)

JKOFF READKEYF ;鍵未按下跳

BS KEY_NUM,0 ;“1” -》 鍵號(hào)低位

;=================

READKEYA:

CLR KEY_DL ;清計(jì)數(shù)器

READKEYB:

CALL DL10MS

INC KEY_DL

MOV A,@50

SUB A,KEY_DL

JBC R3,C

JMP READKEYC ;計(jì)數(shù)器溢出跳

JKON READKEYB ;鍵未釋放跳

BC R3,C ;C=“0”

JMP READKEYD

;=================

READKEYC:

WDTC ;喂狗

JKON READKEYC ;鍵未釋放跳

BS R3,C ;C=“1”

READKEYD:

RLLC KEY_NUM ;鍵號(hào)左移一位,C -》 鍵號(hào)低位

JBC KEY_NUM,ZHBIT ;按鍵檢測(cè)未完成繼續(xù)

RET

;=================

CLR KEY_DL ;清計(jì)數(shù)器

READKEYE:

CALL DL10MS

INC KEY_DL

MOV A,@70

SUB A,KEY_DL

JBC R3,C

READKEYF:

RET ;計(jì)數(shù)器溢出返回

JKOFF READKEYE ;鍵未按下跳

JMP READKEYA ;再次檢測(cè)

;=================

;鍵閉合跳(宏)

;=================

JKON MACRO ADDRESS

JBS R5,KEY ;鍵斷開跳

FJMP ADDRESS ;鍵閉合跳

CALL DL10MS ;延時(shí)去抖動(dòng)

JBS R5,KEY ;鍵斷開跳

FJMP ADDRESS ;鍵閉合跳

ENDM

;=================

;鍵斷開跳(宏)

;=================

JKOFF MACRO ADDRESS

JBC R5,KEY ;鍵閉合跳

FJMP ADDRESS ;鍵斷開跳

CALL DL10MS ;延時(shí)去抖動(dòng)

JBC R5,KEY ;鍵閉合跳

FJMP ADDRESS ;鍵斷開跳

ENDM
責(zé)任編輯 LK

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3798

    瀏覽量

    81469
  • 按鍵
    +關(guān)注

    關(guān)注

    4

    文章

    223

    瀏覽量

    57675
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    按鍵學(xué)習(xí) 按鍵漫談+單個(gè)按鍵多次擊鍵的檢測(cè)方法

    非常好的按鍵學(xué)習(xí)資料,在此共享,為了照顧沒E幣的人,不浪費(fèi)你們的E幣,我打包起來(lái)了。三個(gè)文件:按鍵漫談.pdf+單個(gè)按鍵多次
    發(fā)表于 06-24 22:47

    單個(gè)按鍵多次擊鍵的檢測(cè)方法

    單個(gè)按鍵多次擊鍵的檢測(cè)方法
    發(fā)表于 08-19 23:33

    按鍵高級(jí)使用:短按、長(zhǎng)按、連續(xù)、雙擊、組合鍵實(shí)現(xiàn)

    /zhang_en/beauty_key.git視頻地址:【個(gè)開源的按鍵處理程序-可以實(shí)現(xiàn)短按、長(zhǎng)按、雙擊、組合】 https://www
    發(fā)表于 10-24 21:35

    如何為單片機(jī)的按鍵個(gè)鎖防止多次觸發(fā)?

    如何為單片機(jī)的按鍵個(gè)鎖防止多次觸發(fā)
    發(fā)表于 10-30 08:21

    個(gè)按鍵多次擊鍵組合判別技巧匯編程序

    由于在學(xué)習(xí)用DS1302來(lái)做LED時(shí)鐘時(shí),發(fā)現(xiàn)開發(fā)板附的程序對(duì)按鍵操作,很不靈活,后來(lái)在網(wǎng)上找到篇《個(gè)
    發(fā)表于 06-08 15:00 ?2782次閱讀

    基于狀態(tài)機(jī)的單片機(jī)按鍵短按長(zhǎng)按功能的實(shí)現(xiàn)

    本文主要介紹了基于狀態(tài)機(jī)的單片機(jī)按鍵短按長(zhǎng)按功能的實(shí)現(xiàn),按鍵擊鍵過(guò)程也是種狀態(tài)的切換,也可以看著是
    發(fā)表于 12-28 08:43 ?2w次閱讀
    基于狀態(tài)機(jī)的單片機(jī)<b class='flag-5'>按鍵</b>短按長(zhǎng)按功能的實(shí)現(xiàn)

    PID程序算法的詳細(xì)資料概述免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是PID程序算法的詳細(xì)資料概述免費(fèi)下載
    發(fā)表于 07-24 08:00 ?36次下載

    用兩個(gè)IO口檢測(cè)5個(gè)按鍵程序詳細(xì)資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是用兩個(gè)IO口檢測(cè)5個(gè)按鍵程序詳細(xì)資料免費(fèi)下載。
    發(fā)表于 03-29 15:16 ?27次下載
    用兩<b class='flag-5'>個(gè)</b>IO口檢測(cè)5<b class='flag-5'>個(gè)</b><b class='flag-5'>按鍵</b>的<b class='flag-5'>程序</b><b class='flag-5'>詳細(xì)</b>資料免費(fèi)下載

    如何為單片機(jī)的按鍵個(gè)鎖防止多次觸發(fā)實(shí)例資料和程序免費(fèi)下載

    儲(chǔ)存著兩樣信息,力度和鍵值。那么在我寫的程序的項(xiàng)目要求是這樣的,要求每個(gè)按鍵次只能觸發(fā)次,并且觸發(fā)的時(shí)候要發(fā)出不同的鍵碼,通過(guò)音頻解碼盒將該鍵碼值讀出來(lái),比如第
    發(fā)表于 08-14 17:32 ?0次下載
    如何為單片機(jī)的<b class='flag-5'>按鍵</b>加<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>鎖防止<b class='flag-5'>多次</b>觸發(fā)實(shí)例資料和<b class='flag-5'>程序</b>免費(fèi)下載

    應(yīng)該如何學(xué)習(xí)STM32資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是教你應(yīng)該如何學(xué)習(xí)STM32資料概述
    發(fā)表于 11-08 14:45 ?26次下載
    <b class='flag-5'>應(yīng)該</b>如何學(xué)習(xí)STM32資料<b class='flag-5'>概述</b>

    單片機(jī)C程序設(shè)計(jì)的六個(gè)實(shí)例詳細(xì)講解

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)C程序設(shè)計(jì)的5個(gè)實(shí)例詳細(xì)講解包括了:按鍵程序編寫的基礎(chǔ),模塊化
    發(fā)表于 11-18 08:00 ?1次下載
    單片機(jī)C<b class='flag-5'>程序</b>設(shè)計(jì)的六<b class='flag-5'>個(gè)</b>實(shí)例<b class='flag-5'>詳細(xì)</b>講解

    STM32 獨(dú)立按鍵掃描功能大全-支持連擊、組合連擊、任意連擊

    STM32 獨(dú)立按鍵掃描功能大全-支持連擊、組合連擊、任意連擊本人剛學(xué)習(xí)STM32開發(fā),最近看了硬漢的按鍵檢測(cè)程序,進(jìn)行了架構(gòu)的深度優(yōu)化,所以跟大家分享
    發(fā)表于 12-04 20:36 ?58次下載
    STM32 獨(dú)立<b class='flag-5'>按鍵</b>掃描功能大全-支持連擊、<b class='flag-5'>組合</b>連擊、任意連擊

    RT-Thread大會(huì):如何實(shí)現(xiàn)4個(gè)按鍵的手勢(shì)組合?

    我有基于個(gè)電極的非觸摸程序,如何實(shí)現(xiàn)4個(gè)按鍵的手勢(shì)組合?   通過(guò)4路波形判斷手勢(shì)   即
    的頭像 發(fā)表于 05-27 11:01 ?1214次閱讀
    RT-Thread大會(huì):如何實(shí)現(xiàn)4<b class='flag-5'>個(gè)</b><b class='flag-5'>按鍵</b>的手勢(shì)<b class='flag-5'>組合</b>?

    stm32單片機(jī)如何實(shí)現(xiàn)個(gè)按鍵切換兩個(gè)程序

    ,非常實(shí)用。下面,我們將詳細(xì)介紹如何在STM32單片機(jī)上實(shí)現(xiàn)個(gè)按鍵切換兩個(gè)程序。
    的頭像 發(fā)表于 09-14 14:22 ?6351次閱讀

    idea如何多次運(yùn)行程序

    些實(shí)際的示例。 內(nèi)容: 、使用循環(huán)結(jié)構(gòu) 1.1 for循環(huán) 最常用的多次運(yùn)行程序的方法之是使用循環(huán)結(jié)構(gòu)。其中最常用的循環(huán)結(jié)構(gòu)是for
    的頭像 發(fā)表于 12-06 14:59 ?1616次閱讀