久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團(tuán)論壇單片機(jī)專(zhuān)區(qū)單片機(jī)初中級(jí) → 單片機(jī)鍵盤(pán)輸入編程


  共有8652人關(guān)注過(guò)本帖樹(shù)形打印

主題:?jiǎn)纹瑱C(jī)鍵盤(pán)輸入編程

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
單片機(jī)鍵盤(pán)輸入編程  發(fā)帖心情 Post By:2010-12-7 14:42:44

線接P1.4~P1.7。行列式鍵盤(pán)輸入適合于按鍵輸入多的情況,如有16個(gè)按鍵輸入,用簡(jiǎn)單按鍵輸入用要占用2個(gè)輸入口(共16位),而使用行列式鍵盤(pán)輸入只需占用一個(gè)輸入口(8位)。但行列式鍵盤(pán)輸入軟件編寫(xiě)較復(fù)雜,對(duì)初學(xué)者而言有一定的難度。
  
  以上略談了一下按鍵輸入的情況。在很多狀態(tài)下,按鍵輸入的值要同時(shí)要在LED數(shù)碼管上顯示出來(lái)。如一個(gè)按鍵設(shè)計(jì)為輸入遞增(加法)鍵,可以設(shè)計(jì)成每點(diǎn)按一下,數(shù)值遞增加1,同時(shí)在LED數(shù)碼管上顯示出來(lái);也可設(shè)計(jì)成持續(xù)按下時(shí),數(shù)值以一定時(shí)間間隔(如0.3秒)累加。但是當(dāng)欲輸入值較大時(shí)(如三位LED數(shù)碼管作輸入顯示時(shí)的輸入值最大為999),則可能按下鍵的時(shí)間太長(zhǎng)(最長(zhǎng)達(dá)300秒),看來(lái)這種方式只適用于一位或至多兩位數(shù)值(最大99)的輸入。當(dāng)然你也可多設(shè)幾個(gè)鍵,每個(gè)鍵只負(fù)責(zé)一位數(shù)值的輸入,但這樣會(huì)占用較多的口線,浪費(fèi)寶貴的硬件資源。
  大家可能見(jiàn)到過(guò),一些進(jìn)口的溫度控制器(如日本RKC INSTRUMENT INC. 生產(chǎn)的REX_C700溫控器)的面板設(shè)計(jì)為:溫度測(cè)量值用4位LED數(shù)碼管顯示,輸入設(shè)定值顯示也用4位LED數(shù)碼管,輸入按鍵只有4個(gè),一個(gè)為“模式設(shè)定鍵”,一個(gè)為“左移鍵”,另兩個(gè)為“加法鍵”、“減法鍵”。欲輸入設(shè)定值(溫控值)時(shí),按一下“模式設(shè)定鍵”,程序進(jìn)入設(shè)定狀態(tài),此時(shí)輸入設(shè)定值顯示的4位LED數(shù)碼管中,個(gè)位顯示最亮(穩(wěn)定顯示),而十、百、千位顯示較暗(有閃爍感),說(shuō)明可對(duì)個(gè)位進(jìn)行輸入。按下“加法鍵”或“減法鍵”,即可輸入個(gè)位數(shù)的值;點(diǎn)按一下“左移鍵”,變?yōu)槭伙@示最亮,而個(gè)、百、千位顯示較暗,說(shuō)明可對(duì)十位進(jìn)行輸入。按下“加法鍵”或“減法鍵”,即可輸入十位數(shù)的值;……這樣可完成4位數(shù)的輸入。完成輸入后,再按一下“模式設(shè)定鍵”,程序即退出設(shè)定狀態(tài),進(jìn)入工作運(yùn)行。用這種輸入方法,不僅輸入4位數(shù)用4個(gè)鍵即可,再多位(5位至24位)的輸入也用這4個(gè)鍵就夠了。
  
大家了解了這種新穎的按鍵輸入方式后,一定很感興趣,也想掌握設(shè)計(jì)方法。為了便于大家理解,這里結(jié)合筆者設(shè)計(jì)的一款“節(jié)能時(shí)控器”,詳細(xì)進(jìn)行講解。“節(jié)能時(shí)控器”用于定時(shí)控制大功率電器工作,因現(xiàn)采用分時(shí)計(jì)費(fèi)方法,可起到節(jié)約開(kāi)支的作用,對(duì)工業(yè)生產(chǎn)成效顯著。
  
圖3為“節(jié)能時(shí)控器”硬件構(gòu)成原理圖。“節(jié)能時(shí)控器”共有4個(gè)輸入按鍵:set--模式設(shè)定鍵,left--左移鍵,up—加法鍵,on/off--定時(shí)1、2啟動(dòng)/關(guān)閉鍵。單片機(jī)IC1(AT89C2051)只有15條I/O線,由于受I/O線數(shù)量限制,因此P1口中的P1.0~P1.3既作為驅(qū)動(dòng)4位LED數(shù)碼管的數(shù)據(jù)輸出一部分,同時(shí)也用作按鍵的輸入。無(wú)疑,這種方式大大節(jié)約了硬件的I/O線,但也給編程者提出了更高的技術(shù)要求。限于篇幅,我們只對(duì)要詳解的按鍵輸入程序進(jìn)行分析,其它部分只略作介紹。如讀者需“節(jié)能時(shí)控器”詳細(xì)的源程序,可以Email圖片點(diǎn)擊可在新窗口打開(kāi)查看uyuandz@163.com與作者聯(lián)系。

  圖4為主程序狀態(tài)流程圖。可見(jiàn)主程序只負(fù)責(zé)進(jìn)行走時(shí)或調(diào)整時(shí)間的運(yùn)算及顯示,而判斷按鍵輸入則放在T1定時(shí)中斷(10mS)服務(wù)子程序中。T0作為走時(shí)的基準(zhǔn)被設(shè)置為100mS定時(shí)中斷。這種設(shè)計(jì)的優(yōu)點(diǎn)是大大簡(jiǎn)化了主程序設(shè)計(jì),并且CPU會(huì)定時(shí)關(guān)心鍵盤(pán),只要定時(shí)中斷時(shí)間足夠短(如為幾十mS),就不會(huì)漏掉每一次的按鍵輸入。
  
下面為判斷按鍵輸入的T1定時(shí)中斷服務(wù)子程序,序號(hào)為解釋方便而加。

序號(hào)  
1:void zd1(void) interrupt 3
        
2:{
        
3:uchar i,j;i=P1;j=P3;
        
4:TH1=-(5000/256);
        
5:TL1=-(5000%256);
        
6:if(m==1)n++;
        
7:if(n>=30){n=0;m=0;}
        
8:P3_7=0;
        
9:P1=0xff;
        
10:if(P1!=0xff)
        
11:{
        
12:if(n==0)m=1;
        
13:{if(n==1)
        
14:{
        
15:if(P1_0==0){set++;left=0;}
        
16:if(set>=4)set=0;
        
17:if(set==1)flag=0x55;
        
18:if(P1_1==0)left++;
        
19:if(left>=4)left=0;
        
20:if(P1_2==0){up++;
        
21:switch(left)
        
22:{
        
23:case 0:{if(up>=10)up=0;}break;
        
24:case 1:{if(up>=6)up=0;}break;
        
25:case 2:{if(up>=10)up=0;}break;
        
26:case 3:{if(up>=3)up=0;}break;
        
27:default:break;
        
28:}
        
29:}
        
30:if(P1_2==0){
        
31:switch(set)
        
32:{case 0:break;
        
33:case 1圖片點(diǎn)擊可在新窗口打開(kāi)查看[left]=up;break;
        
34:case 2:{y[left]=up;if(P1_3==0)o_f1=!o_f1;}break;
        
35:case 3:{z[left]=up;if(P1_3==0)o_f2=!o_f2;}break;
        
36:default:break;
        
37:}
}
        
38:else {
        
39:switch(set)
        
40:{case 0:break;
        
41:case 1:up=x[left];break;
        
42:case 2:{up=y[left];if(P1_3==0)o_f1=!o_f1;}break;
        
43:case 3:{up=z[left];if(P1_3==0)o_f2=!o_f2;}break;
        
44:default:break;}
45   
:}}
        
46:}}
        
47:P1=i圖片點(diǎn)擊可在新窗口打開(kāi)查看3=j;
        
48:}
  
序號(hào)1(程序解釋?zhuān)韵峦郝暶鞫〞r(shí)1中斷函數(shù)。
  
序號(hào)2:定時(shí)1中斷函數(shù)開(kāi)始。
  
序號(hào)3:定義i、j為無(wú)符號(hào)字符型局部變量。將當(dāng)時(shí)的P1口、P3口狀態(tài)送i、j暫存。
  
序號(hào)4、5:定時(shí)器T1重新載入10mS初值。
  
序號(hào)6:如變量m等于1,則變量n遞增。說(shuō)明:m、n為整個(gè)程序開(kāi)始時(shí)定義的無(wú)符號(hào)字符型全局變量。
  
序號(hào)7:如變量n大于等于30,則m、n清零。
  
序號(hào)8:P3.7置0,準(zhǔn)備讀取按鍵輸入。
  
序號(hào)9:P1口置全1,準(zhǔn)備讀取按鍵輸入。
  
序號(hào)10:如果P1口不等于全1,說(shuō)明4個(gè)按鍵中有鍵按下。
  
序號(hào)11:進(jìn)入if(P1!=0xff)語(yǔ)句范圍。
  
序號(hào)12:如果n等于0,進(jìn)入if(n==0)語(yǔ)句,m置1。
  
序號(hào)13:如果n等于1,進(jìn)入if(n==1)語(yǔ)句,同時(shí)進(jìn)行下面的具體判斷按鍵語(yǔ)句。作用效果為:開(kāi)始時(shí)m、n均賦0,一旦有鍵按下,第一次中斷產(chǎn)生時(shí)m賦1;第二次中斷產(chǎn)生時(shí)n遞增。當(dāng)n等于1時(shí)(第二次中斷產(chǎn)生)進(jìn)入下面的具體判斷按鍵語(yǔ)句。若持續(xù)按下鍵,則第三次中斷產(chǎn)生~第三十一次中斷產(chǎn)生時(shí),程序不進(jìn)入具體的判斷按鍵語(yǔ)句過(guò)程(因這時(shí)n不等于1)。由于中斷每10mS產(chǎn)生一次,這樣可實(shí)現(xiàn)每0.31秒(31x10=0.31秒)進(jìn)行一次加法或移位的操作,與人眼的視覺(jué)特性相吻合。
  
序號(hào)14:進(jìn)入具體判斷按鍵語(yǔ)句范圍。
  
序號(hào)15:如果P1.0等于0(即電路中的set鍵按下),變量set遞增,變量left清0。說(shuō)明:set、left是為了判斷模式設(shè)定及左移而在整個(gè)程序開(kāi)始時(shí)定義的無(wú)符號(hào)字符型全局變量。
  
序號(hào)16:如果set大于等于4,則set清0。說(shuō)明:set值只能在0~3間變化,只有4種工作模式(走時(shí)及輸出控制模式、走時(shí)調(diào)整模式、定時(shí)1調(diào)整模式、定時(shí)2調(diào)整模式)。
  
序號(hào)17:在set等于1時(shí),向RAM區(qū)標(biāo)志變量flag寫(xiě)入55H。說(shuō)明:flag是在整個(gè)程序開(kāi)始時(shí)定義的無(wú)符號(hào)字符型全局變量,用作判斷RAM區(qū)是否受干擾的依據(jù)。


支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

單片機(jī)鍵盤(pán)輸入編程








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
欧美老女人在线| 久久激情五月激情| 欧美日韩午夜在线视频| 图片区小说区区亚洲五月| 国产超碰91| 噜噜噜噜噜久久久久久91| 国产视频不卡| 久久伊人一区二区| 色99中文字幕| 色偷偷一区二区三区| 在线观看日韩av先锋影音电影院| 欧美日韩国产乱码电影| 日韩精品综合一本久道在线视频| 久久青草欧美一区二区三区| 中文字幕欧美一| 视频在线观看一区| 国产一区三区三区| 99re在线精品| 国产精品一区二区三区不卡| 欧美在线一二三区| 欧洲在线/亚洲| 日韩欧美一级特黄在线播放| 欧美国产日韩一二三区| 亚洲最新在线观看| 免费看欧美女人艹b| 国产成人免费视频精品含羞草妖精| 99国产精品国产精品毛片| 精品九九九九| 欧美午夜在线观看| 国产日韩视频一区二区三区| 亚洲最新在线观看| 韩国av一区二区三区在线观看| 91蝌蚪porny| 日韩国产欧美精品| 欧美日韩精品一区二区三区蜜桃| 久久久青草青青国产亚洲免观| 亚洲激情男女视频| 国产毛片一区二区| 欧美日韩无遮挡| 欧美日韩在线一区二区| 国产亚洲精品7777| 三级不卡在线观看| 91亚洲精品久久久蜜桃| 中国一区二区三区| 久久精品在线免费观看| 污片在线观看一区二区| 99精品国产99久久久久久白柏| 日韩久久久久久久| 欧美刺激脚交jootjob| 亚洲一区精品在线| 99久久精品一区| 亚洲自拍偷拍二区| 久久精品亚洲精品国产欧美| 日本va欧美va精品| 国产伦精品一区二区三区视频黑人 | 91成人网在线| 国产精品蜜臀在线观看| 免费成人美女在线观看| 国产丝袜不卡| 日韩欧美电影一区| 偷拍与自拍一区| 国产精品一区二区三区不卡| 欧美精品免费视频| 亚洲r级在线视频| 国产精品一区二区三区观看| 6080亚洲精品一区二区| 亚洲国产另类av| 国产精品推荐精品| 欧美一区二区视频在线观看| 亚洲成av人片一区二区三区| 国产精品12| 91精品国产91久久综合桃花| 天堂一区二区在线免费观看| 国产日韩一区欧美| 2020国产精品自拍| 国产激情精品久久久第一区二区 | 色综合久久久久久久久| 欧美激情一区二区| 暴力调教一区二区三区| 欧美日韩国产a| 美女网站视频久久| 亚洲一区三区视频在线观看| 亚洲柠檬福利资源导航| 不卡视频一区| 久久久精品人体av艺术| 国产精品中文欧美| 欧美在线色视频| 亚洲一二三四区| 欧美午夜精品久久久久久蜜| 欧美精彩视频一区二区三区| 99精品在线观看视频| 日韩视频在线永久播放| 国产老肥熟一区二区三区| 欧美性猛交xxxx黑人交 | 国产成人在线看| 欧美日韩国产在线观看| 免费看欧美女人艹b| 色综合久久99| 免费成人在线观看| 91豆麻精品91久久久久久| 日韩成人免费电影| 一区二区三区四区欧美| 亚洲成av人综合在线观看| 日韩尤物视频| 午夜精品福利在线| 色偷偷一区二区三区| 毛片基地黄久久久久久天堂| 在线视频一区二区三区| 美女视频网站久久| 欧美日韩国产精品自在自线| 国产精品18久久久久久vr| 日韩一区二区三区视频在线观看 | 中文字幕一区二区视频| 精品亚洲欧美日韩| 亚洲欧美电影一区二区| 欧美久久久久久一卡四| 亚洲一区二区三区在线| 色婷婷精品大在线视频| 男女性色大片免费观看一区二区 | 欧美日本乱大交xxxxx| 久久草av在线| 日韩三级视频在线观看| 97se国产在线视频| 亚洲免费视频中文字幕| 中文字幕日韩一区二区三区不卡| 久久精品国产在热久久| 日韩一区二区三区三四区视频在线观看| 成a人片亚洲日本久久| 欧美国产禁国产网站cc| 蜜桃久久精品乱码一区二区| 亚洲成a人v欧美综合天堂下载 | 成人综合在线观看| www久久精品| 久久99久久99精品蜜柚传媒| 亚洲国产视频一区| 欧美自拍偷拍午夜视频| 成人黄色国产精品网站大全在线免费观看 | 免费观看一级特黄欧美大片| 91精品免费观看| 97人人模人人爽人人少妇| 亚洲美女视频在线观看| 椎名由奈jux491在线播放| 高清不卡一二三区| 亚洲欧洲日韩av| 色国产综合视频| www.欧美日韩国产在线| 亚洲综合一区二区精品导航| 欧美日韩一区久久| 成人av蜜桃| 日韩激情视频网站| 日韩欧美精品在线视频| 精品一区二区不卡| 久久激五月天综合精品| 国产精品免费久久| 欧美午夜电影在线播放| 成人精品水蜜桃| 蜜臀91精品一区二区三区 | 成人黄色小视频| 一区二区三区国产| 91精品国产一区二区| 成人激情av| 蜜桃av一区二区三区电影| 久久久久亚洲综合| 色呦呦国产精品| 91麻豆免费视频| 日韩成人一级片| 欧美激情一区二区| 欧美日韩在线观看一区二区| 久久久久久草| www.亚洲人| 久久av中文字幕片| 亚洲码国产岛国毛片在线| 69堂精品视频| 神马影院我不卡| 91免费在线播放| 久久精品国产精品青草| 亚洲免费在线观看视频| 精品国产制服丝袜高跟| 在线亚洲免费视频| 狼狼综合久久久久综合网| 国产精品一区二区免费不卡 | 国产精品免费久久| 欧美剧情电影在线观看完整版免费励志电影| 国产精品视频福利| 国产福利精品导航| 亚洲成人动漫一区| 亚洲人妖av一区二区| 精品国产一区二区三区av性色| 色综合一个色综合| 久久久久久国产精品免费免费| 成人激情电影免费在线观看| 黄色成人免费在线| 天天综合网天天综合色| 亚洲人成网站影音先锋播放| 久久这里只有精品首页| 欧美日韩免费一区二区三区| 色一情一乱一伦一区二区三区丨| 99在线国产| 91理论电影在线观看| 国产99一区视频免费|