wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> 基礎(chǔ)教程 >> 瀏覽文章

25課:單片機(jī)鍵盤接口程序設(shè)計(jì)

作者:佚名   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2007年08月14日   【字體:

    鍵盤是由若干按鈕組成的開關(guān)矩陣,它是單片機(jī)系統(tǒng)中最常用的輸入設(shè)備,用戶能通過(guò)鍵盤向計(jì)算機(jī)輸入指令、地址和數(shù)據(jù)。一般單片機(jī)系統(tǒng)中采和非編碼鍵盤,非編碼鍵盤是由軟件來(lái)識(shí)別鍵盤上的閉合鍵,它具有結(jié)構(gòu)簡(jiǎn)單,使用靈活等特點(diǎn),因此被廣泛應(yīng)用于單片機(jī)系統(tǒng)。

按鈕開關(guān)的抖動(dòng)問(wèn)題

組成鍵盤的按鈕有觸點(diǎn)式和非觸點(diǎn)式兩種,單片機(jī)中應(yīng)用的一般是由機(jī)械觸點(diǎn)組成的。在下圖中,當(dāng)開

<鍵盤結(jié)構(gòu)圖>

圖1

圖2

關(guān)S未被按下時(shí),P1。0輸入為高電平,S閉合后,P1。0輸入為低電平。由于按鈕是機(jī)械觸點(diǎn),當(dāng)機(jī)械觸點(diǎn)斷開、閉合時(shí),會(huì)有抖動(dòng)動(dòng),P1。0輸入端的波形如圖2所示。這種抖動(dòng)對(duì)于人來(lái)說(shuō)是感覺(jué)不到的,但對(duì)計(jì)算機(jī)來(lái)說(shuō),則是完全能感應(yīng)到的,因?yàn)橛?jì)算機(jī)處理的速度是在微秒級(jí),而機(jī)械抖動(dòng)的時(shí)間至少是毫秒級(jí),對(duì)計(jì)算機(jī)而言,這已是一個(gè)“漫長(zhǎng)”的時(shí)間了。前面我們講到中斷時(shí)曾有個(gè)問(wèn)題,就是說(shuō)按鈕有時(shí)靈,有時(shí)不靈,其實(shí)就是這個(gè)原因,你只按了一次按鈕,可是計(jì)算機(jī)卻已執(zhí)行了多次中斷的過(guò)程,如果執(zhí)行的次數(shù)正好是奇數(shù)次,那么結(jié)果正如你所料,如果執(zhí)行的次數(shù)是偶數(shù)次,那就不對(duì)了。

為使CPU能正確地讀出P1口的狀態(tài),對(duì)每一次按鈕只作一次響應(yīng),就必須考慮如何去除抖動(dòng),常用的去抖動(dòng)的辦法有兩種:硬件辦法和軟件辦法。單片機(jī)中常用軟件法,因此,對(duì)于硬件辦法我們不介紹。軟件法其實(shí)很簡(jiǎn)單,就是在單片機(jī)獲得P1。0口為低的信息后,不是立即認(rèn)定S1已被按下,而是延時(shí)10毫秒或更長(zhǎng)一些時(shí)間后再次檢測(cè)P1。0口,如果仍為低,說(shuō)明S1的確按下了,這實(shí)際上是避開了按鈕按下時(shí)的抖動(dòng)時(shí)間。而在檢測(cè)到按鈕釋放后(P1。0為高)再延時(shí)5-10個(gè)毫秒,消除后沿的抖動(dòng),然后再對(duì)鍵值處理。不過(guò)一般情況下,我們常常不對(duì)按鈕釋放的后沿進(jìn)行處理,實(shí)踐證明,也能滿足一定的要求。當(dāng)然,實(shí)際應(yīng)用中,對(duì)按鈕的要求也是千差萬(wàn)別,要根據(jù)不一樣的需要來(lái)編制處理程序,但以上是消除鍵抖動(dòng)的原則。

鍵盤與單片機(jī)的連接


<鍵盤連接>

圖3


<單片機(jī)與鍵盤接口圖>

圖4

1、通過(guò)1/0口連接。將每個(gè)按鈕的一端接到單片機(jī)的I/O口,另一端接地,這是最簡(jiǎn)單的辦法,如圖3所示是實(shí)驗(yàn)板上按鈕的接法,四個(gè)按鈕分別接到P3.2 、P3.3、P3.4和P3.5。對(duì)于這種鍵各程序能采用持續(xù)查詢的辦法,功能就是:檢測(cè)是否有鍵閉合,如有鍵閉合,則去除鍵抖動(dòng),判斷鍵號(hào)并轉(zhuǎn)入對(duì)應(yīng)的鍵處理。下面給出一個(gè)例程。其功能很簡(jiǎn)單,四個(gè)鍵定義如下:

P3.2:開始,按此鍵則燈開始流動(dòng)(由上而下)

P3.3:停止,按此鍵則停止流動(dòng),所有燈為暗

P3.4:上,按此鍵則燈由上向下流動(dòng)

P3.5:下,按此鍵則燈由下向上流動(dòng)

UpDown EQU 00H ;上下行標(biāo)志

StartEnd EQU 01H ;起動(dòng)及停止標(biāo)志

LAMPCODE EQU 21H ;存放流動(dòng)的數(shù)據(jù)代碼

ORG 0000H

AJMP MAIN

ORG 30H

MAIN:

MOV SP,#5FH

MOV P1,#0FFH

CLR UpDown ;啟動(dòng)時(shí)處于向上的狀態(tài)

CLR StartEnd ;啟動(dòng)時(shí)處于停止?fàn)顟B(tài)

MOV LAMPCODE,#0FEH ;單燈流動(dòng)的代碼

LOOP:

ACALL KEY ;調(diào)用鍵盤程序

JNB F0,LNEXT ;如果無(wú)鍵按下,則繼續(xù)

ACALL KEYPROC ;不然調(diào)用鍵盤處理程序

LNEXT:

ACALL LAMP ;調(diào)用燈顯示程序

AJMP LOOP ;反復(fù)循環(huán),主程序到此結(jié)束

DELAY:

MOV R7,#100

D1: MOV R6,#100

DJNZ R6,$

DJNZ R7,D1

RET

;----------------------------------------延時(shí)程序,鍵盤處理中調(diào)用

KEYPROC:

MOV A,B ;從B寄存器中獲取鍵值

JB ACC.2,KeyStart ;分析鍵的代碼,某位被按下,則該位為1(因?yàn)樵阪I盤程序中已取反)

JB ACC.3,KeyOver

JB ACC.4,KeyUp

JB ACC.5,KeyDown

AJMP KEY_RET

KeyStart:

SETB StartEnd ;第一個(gè)鍵按下后的處理

AJMP KEY_RET

KeyOver:

CLR StartEnd ;第二個(gè)鍵按下后的處理

AJMP KEY_RET

KeyUp: SETB UpDown ;第三個(gè)鍵按下后的處理

AJMP KEY_RET

KeyDown:

CLR UpDown ;第四個(gè)鍵按下后的處理

KEY_RET:RET

KEY:

CLR F0 ;清F0,表示無(wú)鍵按下。

ORL P3,#00111100B ;將P3口的接有鍵的四位置1

MOV A,P3 ;取P3的值

ORL A,#11000011B ;將其余4位置1

CPL A ;取反

JZ K_RET ;如果為0則一定無(wú)鍵按下

ACALL DELAY ;不然延時(shí)去鍵抖

ORL P3,#00111100B

MOV A,P3

ORL A,#11000011B

CPL A

JZ K_RET

MOV B,A ;確實(shí)有鍵按下,將鍵值存入B中

SETB F0 ;設(shè)置有鍵按下的標(biāo)志

K_RET:

ORL P3,#00111100B ;此處循環(huán)等待鍵的釋放

MOV A,P3

ORL A,#11000011B

CPL A

JZ K_RET1 ;直到讀取的數(shù)據(jù)取反后為0說(shuō)明鍵釋放了,才從鍵盤處理程序中返回

AJMP K_RET

K_RET1:

RET

D500MS: ;流水燈的延遲時(shí)間

PUSH PSW

SETB RS0

MOV R7,#200

D51: MOV R6,#250

D52: NOP

NOP

NOP

NOP

DJNZ R6,D52

DJNZ R7,D51

POP PSW

RET

LAMP:

JB StartEnd,LampStart ;如果StartEnd=1,則啟動(dòng)

MOV P1,#0FFH

AJMP LAMPRET ;不然關(guān)閉所有顯示,返回

LampStart:

JB UpDown,LAMPUP ;如果UpDown=1,則向上流動(dòng)

MOV A,LAMPCODE

RL A ;實(shí)際就是左移位而已

MOV LAMPCODE,A

MOV P1,A

LCALL D500MS

AJMP LAMPRET

LAMPUP:

MOV A,LAMPCODE

RR A ;向下流動(dòng)實(shí)際就是右移

MOV LAMPCODE,A

MOV P1,A

LCALL D500MS

LAMPRET:

RET

END

以上程序功能很簡(jiǎn)單,但它演示了一個(gè)單片機(jī)鍵盤處理程序的基本思路,程序本身很簡(jiǎn)單,也不很實(shí)用,實(shí)際工作中還會(huì)有好多要考慮的因素,比如主循環(huán)每次都調(diào)用燈的循環(huán)程序,會(huì)造成按鈕反應(yīng)“遲鈍”,而如果一直按著鍵不放,則燈不會(huì)再流動(dòng),一直要到松開手為止,等等,大家能仔細(xì)考慮一下這些問(wèn)題,再想想有什么好的解決辦法。

2、采用中斷方式:如圖4所示。各個(gè)按鈕都接到一個(gè)與非上,當(dāng)有任何一個(gè)按鈕按下時(shí),都會(huì)使與門輸出為低電平,從而引起單片機(jī)的中斷,它的好處是不用在主程序中持續(xù)地循環(huán)查詢,如果有鍵按下,單片機(jī)再去做對(duì)應(yīng)的處理

關(guān)閉窗口
狠狠躁18三区二区一区| 精品一区二区三区免费毛片| 一区二区三区加勒比av| 日韩成人av影视| 成人51免费| 免费av在线电影| 性欧美极品另类| 探花视频在线观看| avtt中文字幕| 日韩中文字幕在线不卡| 91精品视频免费看| 上原亚衣av一区二区三区| 色婷婷国产精品综合在线观看| 国产成人亚洲综合色影视| 水蜜桃精品av一区二区| 在线观看亚洲精品福利片| 久草免费在线| 老司机性视频| 91电影在线| 日本免费网站在线观看| 日本a在线观看| 日本护士做爰视频| 国模杨依粉嫩蝴蝶150p| 色爱区成人综合网| 国产精品爽爽ⅴa在线观看| 在线视频欧美日韩| 日韩欧美国产系列| 欧美日韩免费在线观看| 中文字幕精品一区二区精品绿巨人| 久久综合狠狠| 欧美精品一级| 精品成人影院| 91亚洲无吗| 国产a亚洲精品| √天堂8资源中文在线| 可以在线观看的av网站| 成人看片app| 日本小视频网站| 亚洲区精品久久一区二区三区| 亚洲天堂aaa| 精品一区二区三区四| 粉嫩av懂色av蜜臀av分享| 五月婷婷激情久久| 欧美深夜福利视频| 黄色a级在线观看| 国产精品久久久久免费| 97国产suv精品一区二区62| 亚洲人成自拍网站| 欧美成人aa大片| 欧美日韩国产片| 欧美丝袜一区二区| 亚洲成人av电影在线| 最新日韩av在线| 亚洲国产电影在线观看| 成人av午夜影院| 韩国精品免费视频| 久久国产精品色| 久久国产精品一区二区| 日韩精品电影在线| 视频一区二区中文字幕| 国产亚洲精品久久久久婷婷瑜伽| 亚洲不卡av不卡一区二区| 奇米狠狠一区二区三区| 麻豆一区一区三区四区| 久久99精品久久久久久欧洲站| 国产精品免费精品自在线观看| 在线日本欧美| 日本综合视频| 2020国产精品小视频| 91成人短视频在线观看| 日韩精品成人在线观看| 亚洲成av人片在线观看www| 99精品美女视频在线观看热舞| 一区二区三区播放| 久久久久亚洲视频| 中文字幕日韩国产| 国产精品探花视频| 国产av精国产传媒| 黑人精品一区二区| 一日本道久久久精品国产| 欧美xxxxbbbb在线播放| 国产成人福利| 2020天天操| 污视频网站在线看| 欧美精品a∨在线观看不卡| 国产黄在线观看免费观看不卡| www.黄在线观看| www.久久ai| 国产夫妻在线播放| av在线不卡精品| 亚洲一二av| 精品国产乱码久久久久久蜜坠欲下 | 亚洲一区二区伦理| 日本欧美在线看| 国产成人av电影在线播放| 91农村精品一区二区在线| 国产女人水真多18毛片18精品视频| 亚洲色图视频网站| 在线观看日韩av先锋影音电影院| 欧美一区二区日韩| 中文字幕精品在线| 欧美一级电影久久| 九九久久99| 国产精品久久久久久久乖乖| 成人综合久久网| 亚洲码无人客一区二区三区| 欧美日韩精品一区二区三区视频播放 | 精品国产乱码一区二区三区四区 | 中国一区二区视频| 影音先锋男人每日资源站| 国产精品合集一区二区| 成人午夜影院| 拍真实国产伦偷精品| 欧美成人性网| 免费黄色成人| 丝袜美腿成人在线| 国产丝袜在线精品| 欧美亚洲综合另类| 综合久久五月天| 国产精品草莓在线免费观看| 久久久99爱| 无码人妻h动漫| 香蕉视频黄色在线观看| 久久亚洲天堂网| 亚洲老妇色熟女老太| 91九色论坛| 精品推荐蜜桃传媒| 成人国产一区| 欧美xxxx中国| 国产高清精品在线| 天天综合色天天| 在线播放国产一区二区三区| 日本人成精品视频在线| 欧美日韩日本网| 9l视频白拍9色9l视频| 国产又粗又长免费视频| 一级特黄aaa大片| brazzers欧美最新版视频| 一级在线免费观看| 欧美人与性动交xxⅹxx| 欧美疯狂party性派对| 免费欧美在线视频| 一区二区三区产品免费精品久久75| 欧美一区二区三区在线电影| 久久男人av资源网站| 欧美日韩国产免费一区二区三区| 黑人粗进入欧美aaaaa| 色哟哟一一国产精品| 黄色一级大片在线免费看国产一| 天天干天天草| 蜜桃在线视频| a成人v在线| 韩国亚洲精品| 中文字幕在线观看一区| 精品日韩一区二区三区免费视频| 欧美在线不卡区| 精品国产一区二区三区在线| 狠狠人妻久久久久久综合蜜桃| 在线播放亚洲精品| blackedav金发美女大战黑人| 久久亚洲资源| 99精品视频精品精品视频| 不卡av免费在线观看| 91精品国产品国语在线不卡| 亚洲欧美中文日韩在线v日本| 成人亚洲激情网| 日韩有码免费视频| 国产精品suv一区二区三区| 亚洲午夜激情视频| avtt天堂资源网站| 成人午夜一级| 视频一区视频二区中文字幕| 图片区小说区国产精品视频| 美日韩在线视频| 99久re热视频精品98| 一级肉体全黄裸片| 波多野结衣久久高清免费| 国产精品ⅴa有声小说| 免费欧美视频| 国产亚洲欧美日韩俺去了| 亚洲国产精品资源| 在线亚洲精品福利网址导航| 萌白酱国产一区二区| 一区二区三区欧美在线| 999精品久久久| 九九这里只精品视在线99| www国产在线观看| 欧美日韩视频一区二区三区| 中文字幕亚洲不卡| 欧美国产中文字幕| 青青青在线视频播放| 国产精品99无码一区二区| 老太做爰xxxx| 青青在线精品| 国产成a人亚洲精| 亚洲午夜精品久久久久久久久| 欧美精品一二区| 无码专区aaaaaa免费视频| 国产欧美日韩另类| 可播放的18gay1069| 国产区精品视频在线观看豆花| 懂色av一区二区三区蜜臀| 国产丝袜精品视频| 一道精品一区二区三区| 精品无码久久久久久久| av线上观看| 天堂俺去俺来也www久久婷婷| 91视频一区二区| xxx成人少妇69| 日韩小视频在线播放| 国产精品自拍第一页| 免费在线视频一级不卡| 亚洲精品国产偷自在线观看| 欧美日韩亚洲国产一区| 国产日韩精品一区二区| 黄色正能量网站| 又大又黄又粗| 亚洲天堂av资源在线观看| 国产欧美精品在线观看| 欧美激情二区三区| 色播五月综合网| 少妇一区二区三区四区| 69av成人| 国产成人av电影免费在线观看| 亚洲小视频在线观看| 五十路熟女丰满大屁股 | 国产免费视频| 欧美激情精品| 国产精品国产三级国产a| 欧美在线一区二区三区四| 黄色一级片免费播放| 国产又爽又黄又刺激的软件| 不卡一区视频| 成人欧美一区二区三区| 国产精品久久久久久久电影| 国产精品无码午夜福利| 成人免费视频网站在线看| 综合亚洲自拍| 色综合色综合色综合 | av不卡一区二区| 亚洲欧美国产77777| 成人福利在线视频| 午夜免费激情视频| 日av在线播放| 日欧美一区二区| 日日骚久久av| 日韩女优在线视频| jizzjizzjizz亚洲| 欧美伊人影院| 精品成人佐山爱一区二区| 每日在线更新av| 欧美成人免费视频a| 一区二区三区亚洲变态调教大结局| 一区二区三区国产| 日韩国产一区久久| 888奇米影视| 国产综合av| 亚洲午夜私人影院| 欧洲亚洲一区二区| 国产富婆一级全黄大片| 全球最大av网站久久| 亚洲最新视频在线播放| 久久久影院一区二区三区| 精品成人无码久久久久久| 国产美女高潮在线观看| 中文字幕不卡在线观看| 国产三级精品在线不卡| 中国黄色一级视频| www.黄在线观看| 从欧美一区二区三区| 国产精品9999| 久久一区二区三| 美女日批视频在线观看| 国产亚洲女人久久久久毛片| 91久色国产| 中文天堂在线视频| 色婷婷成人网| 欧美日韩亚洲精品一区二区三区| 佐佐木明希av| 亚洲日韩色图| 91av精品| 久久久国产一区二区三区| 国产精品揄拍100视频| 天堂а√在线8种子蜜桃视频 | 精品自拍偷拍| 欧美区一区二区三区| 欧美 国产 综合| 在线观看天堂| 午夜精品久久久久99热蜜桃导演| 国产亚洲精品美女久久久久| 国产午夜在线一区二区三区| 在线国产视频| av亚洲精华国产精华精| 国产精品久久精品国产| 精品人妻久久久久一区二区三区| 嗯用力啊快一点好舒服小柔久久| 4438x成人网最大色成网站| 欧美成人三级在线播放| 国产乱妇乱子| 国产乱码字幕精品高清av| 国产日本欧美在线观看| 97超视频在线观看| 嫩草国产精品入口| 亚洲精品一区av在线播放| 中文字幕一区二区人妻电影丶| av在线天堂| 一区二区三区中文字幕电影| 国产91视频一区| 日美av在线| 国产精品一区二区三区四区| 99久久99久久| 影音先锋在线资源中文字幕| 中文无码久久精品| 欧美激情第99页| 日韩三级一区二区| 久久91在线| 精品国产一区二区三区久久狼黑人| 在线观看天堂av| 日本不卡一二三| 日韩视频免费观看高清完整版| 亚洲精品无码一区二区| 求av网址在线观看| 欧美日韩中文字幕综合视频| 特黄视频免费观看| 在线观看精品一区二区三区| 伊人色综合久久天天人手人婷| 欧美日韩性生活片| 亚洲尤物在线视频| 亚洲精品国产成人久久av盗摄| 精品无码一区二区三区爱欲| 亚洲男男gay视频| 国产精品美女一区二区在线观看| 91国视频在线| 蜜芽tv福利在线视频| 亚洲综合免费观看高清完整版在线| 91视频最新入口| 日韩欧美电影在线观看| 一区二区三区欧美在线观看| 色诱视频在线观看| 超碰97在线免费观看| 欧美日韩国内自拍| 香蕉网在线视频| 51精品在线| 欧美精品一区视频| 国产成人无码aa精品一区| 国产不卡精品在线| 中文字幕在线看视频国产欧美在线看完整| 麻豆一区产品精品蜜桃的特点 | 成人免费在线播放视频| 337p粉嫩大胆噜噜噜鲁| 粉嫩av一区| 欧美日韩国产影片| 亚洲av无一区二区三区| 亚洲高清在线一区| 久久久久久香蕉网| 欧美在线精品一区二区三区| 性欧美videos另类喷潮| 久久国产主播精品| jizz在亚洲| 一区二区三区丝袜| 捆绑凌虐一区二区三区| 只有精品亚洲| 国模精品视频一区二区三区| 刘玥91精选国产在线观看| 久久精品国产清高在天天线| 日本一区二区三区免费看| 骚视频在线观看| 欧美日韩中国免费专区在线看| 可以直接看的无码av| 久久久久毛片免费观看| 久久久久久有精品国产| 男女一区二区三区免费| 国产乱子伦一区二区三区国色天香 | 欧美精品一级片| 欧美丝袜激情| 91香蕉视频在线下载| jizz视频播放器| 亚洲一区二区精品视频| 国产精品嫩草av| 伊人www22综合色| 日本中文字幕久久看| 国产99在线|亚洲| 亚洲欧美中日韩| 亚洲av无码国产精品久久| 99这里只有精品视频| 国产91色在线|| 九色蝌蚪性视频| 亚洲一区二区中文在线| 日韩丰满少妇无码内射| 无码日韩精品一区二区免费| 国产精品视频中文字幕91| 黄色日本网站| 五月婷婷色综合| 亚洲国产精品免费在线观看| 妖精一区二区三区精品视频| 成人免费激情视频| www.尤物.com| 婷婷综合在线观看| 久久精品美女视频| 国模 一区 二区 三区|