版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PC機(jī)除了主機(jī)以外還需要哪些部分呢?單片機(jī)電路有時(shí)候也需要鍵盤、顯示等外設(shè)。鍵盤、顯示器接口編碼式的:由其內(nèi)部硬件邏輯電路自動(dòng)產(chǎn)生被按鍵的編碼。使用方便,鍵盤碼產(chǎn)生速度快,占用CPU時(shí)間少,但對(duì)按鍵的檢測(cè)與消除抖動(dòng)干擾是靠硬件電路來(lái)完成的,硬件電路復(fù)雜、成本高。非編碼式的:主要由軟件產(chǎn)生被按鍵的編碼。硬件電路簡(jiǎn)單,成本低,但占用CPU的時(shí)間較長(zhǎng)。(單片機(jī)系統(tǒng)中普遍使用非編碼式鍵盤。)6.3鍵盤接口鍵盤分類介紹此獨(dú)立式按鍵矩陣式按鍵矩陣式按鍵我們實(shí)驗(yàn)用的非編碼鍵盤獨(dú)立式按鍵
硬件方案——雙穩(wěn)態(tài)去抖電路一、鍵盤接口需要解決的問(wèn)題是否有鍵按下按鍵識(shí)別:鍵抖動(dòng)及消除:機(jī)械按鍵抖動(dòng)時(shí)間在5ms~10ms之間
軟件方案——延時(shí)10ms~20ms后再次判斷消除方法:求鍵號(hào)閉合斷開前沿抖動(dòng)后沿抖動(dòng)鍵按下閉合穩(wěn)定鍵釋放QQP鍵被按下去抖動(dòng)后的按鍵輸出波形+5VR按鍵開關(guān)P鍵按下,S、R=01,觸發(fā)器置1,P=0。按鍵前后,SR=10,觸發(fā)器置0,P=1。P+5VPRR去抖動(dòng)電路SR觸點(diǎn)抖動(dòng)跳開時(shí),S、R=11,觸發(fā)器保持,P仍=0。*在此期間,CPU對(duì)一次鍵入做多次鍵處理雙穩(wěn)態(tài)去抖電路這里的抖動(dòng)指觸點(diǎn)跳開前沿抖動(dòng)后沿抖動(dòng)鍵按下閉合穩(wěn)定鍵釋放去抖電路2鍵盤的工作方式有3種:查詢法(程序控制掃描)定時(shí)掃描法中斷掃描法二、非編碼獨(dú)立式按鍵結(jié)合ME830實(shí)驗(yàn),重點(diǎn)講此法接口電路:特點(diǎn):一線一鍵,按鍵識(shí)別(編程)簡(jiǎn)單;但占用較多口線,適合8鍵以下使用。實(shí)際上,51單片機(jī)的P1-P3口都有內(nèi)部上拉電阻,這些電阻、電源可以不接。見ME830實(shí)驗(yàn)板。1.查詢法
查詢法是指單片機(jī)在空閑時(shí),才調(diào)用鍵盤掃描子程序,并反復(fù)地掃描鍵盤,直到用戶從鍵盤上輸入命令或數(shù)據(jù)。而在執(zhí)行鍵入命令或處理鍵入數(shù)據(jù)過(guò)程中,CPU將不再響應(yīng)鍵入要求,直到CPU重新掃描鍵盤為止。
定時(shí)掃描方式就是每隔一段時(shí)間對(duì)鍵盤掃描一次,它利用單片機(jī)內(nèi)部的定時(shí)器產(chǎn)生一定時(shí)間(例如10ms)的定時(shí),當(dāng)定時(shí)時(shí)間到就產(chǎn)生定時(shí)器溢出中斷。CPU響應(yīng)中斷后對(duì)鍵盤進(jìn)行掃描,并在有鍵按下時(shí)識(shí)別出該鍵,再執(zhí)行該鍵的功能程序。2.定時(shí)掃描方式
為提高CPU工作效率,可采用中斷掃描工作方式。其工作過(guò)程如下:當(dāng)無(wú)鍵按下時(shí),CPU處理自己的工作,當(dāng)有鍵按下時(shí),產(chǎn)生中斷請(qǐng)求,CPU轉(zhuǎn)去執(zhí)行鍵盤掃描子程序,并識(shí)別鍵號(hào)。3.中斷掃描方式ME830獨(dú)立式摁鍵查詢法原理----當(dāng)任何一個(gè)鍵被按下時(shí),與其相連的輸入線被置成“0”,平時(shí)該線為“1”。鍵處理程序ORG2000HSTART:MOVA,#0FFH;先置P1口為“1”MOVP1,AMOVA,P1;輸入鍵狀態(tài)JNBACC.0,P0F;查詢0號(hào)鍵JNBACC.1,P1F;查詢1號(hào)鍵JNBACC.2,P2F;查詢2號(hào)鍵JNBACC.3,P3F;查詢3號(hào)鍵JNBACC.4,P4F;查詢4號(hào)鍵JNBACC.5,P5F;查詢5號(hào)鍵JNBACC.6,P6F;查詢6號(hào)鍵JNBACC.7,P7F;查詢7號(hào)鍵LJMPSTART鍵盤掃描07P0F:LJMPPROM0;入口地址表P1F:LJMPPROM1P6F:LJMPPROM6P7F:LJMPPROM7……PROM0:…..;0號(hào)鍵功能程序PROM7:…..;7號(hào)鍵功能程序…..LJMPSTART;0號(hào)鍵處理完返回鍵盤掃描LJMPSTART;7號(hào)鍵處理完返回鍵盤掃描…...... ORG0000HKB: MOVP1,#0FFH MOVA,P1;第一次讀鍵
CPLA ANLA,#0FH JZKBACK;A=0(無(wú)鍵摁下)轉(zhuǎn)
LCALLD10MS;防止抖動(dòng)
MOVA,P1;再次讀鍵
CPLA ANLA,#0FH JZKBACK;無(wú)鍵按下轉(zhuǎn)
;******************有鍵按下
CJNEA,#01H,KB01;不等轉(zhuǎn)
LCALLPGM1 SJMPKBACKKB01: CJNEA,#02H,KB02 LCALLPGM2 SJMPKBACKKB02: CJNEA,#04H,KB LCALLPGM3KBACK:LJMPKB;循環(huán)檢測(cè)鍵
END例子:按三個(gè)按鍵中的任一鍵均對(duì)應(yīng)相應(yīng)的一個(gè)特定功能PGMi。對(duì)應(yīng)的數(shù)字叫鍵號(hào)1、2、4類似ME830中的例程三123三、非編碼矩陣式按鍵結(jié)構(gòu)關(guān)鍵問(wèn)題:摁鍵的識(shí)別“行掃描法”與“線反轉(zhuǎn)法”課本P195
①行掃描法:基本思想:由程序?qū)︽I盤進(jìn)行逐行掃描,通過(guò)檢測(cè)到的列的輸出狀態(tài)來(lái)確定閉合鍵。
先行全0,讀列值,全1無(wú)摁鍵,非全1有鍵摁下;
有鍵摁下時(shí):
逐行輸出0,查列值:有0則該行該列交叉處即為摁鍵位置.
②線反轉(zhuǎn)法(行反轉(zhuǎn)法):行反轉(zhuǎn)法需要兩個(gè)雙向I/O口分別接行、列線。該方法比掃描法速度快,但硬件上要復(fù)雜一些?;舅枷耄和ㄟ^(guò)行列互換兩次掃描來(lái)識(shí)別閉合鍵。識(shí)別鍵摁下的兩種方法①行掃描法圖(c)掃描第0行(d)掃描第1行(e)掃描第2行(f)掃描第3行確定為3行2列有鍵摁下課本P195(a)無(wú)鍵摁下(b)有鍵摁下粗略判斷有無(wú)鍵摁下:有,再詳細(xì)判斷;無(wú),則CPU仍做自己的工作有鍵摁下,詳細(xì)判斷是哪行哪列?abcdef行列確定第2列有鍵摁下②線反轉(zhuǎn)法
AT89C51P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5vP202圖6-280行1行2行3行0列1列2列3列原理:@由行線輸出全“0”,讀入列線,判有無(wú)鍵按下。@若有鍵按下,再將讀入的列線值由列線輸出,讀進(jìn)行線的值。@第一步讀進(jìn)的列線值與第二步讀進(jìn)的行線值相加,從而得到代表此鍵的唯一的特征值。@線反轉(zhuǎn)法因輸入與輸出線反過(guò)來(lái)用而得名。@優(yōu)點(diǎn)是判鍵速度快,兩次即可。線反轉(zhuǎn)法圖例AT89C51P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5vMOVP1,#0F0H;低位送全“0”MOVA,P1;讀進(jìn)P1口電平
ANLA,#0F0H;保留高4位
CJNEA,#0F0H,MK3;若有鍵按下則P1.4—P1.7必有“0”位,跳轉(zhuǎn)到MK3去處理;
若無(wú)鍵按下則退出鍵掃描。0行1行2行3行0列1列2列3列設(shè):第3行/第1列結(jié)點(diǎn)有鍵按下首先:“11110000”→P1然后讀P1:P1←“1101xxxx”只留高4位:A=“11010000”因?yàn)橛墟I按下,A≠11110000P202圖6-28AT89C51P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5vMOVP1,#0F0H;低位送全“0”MOVA,P1;讀進(jìn)P1口電平
ANLA,#0F0H;保留高4位
CJNEA,#0F0H,MK30行1行2行3行0列1列2列3列此時(shí):R2←“11010000”然后:A←“11011111”返送P1口:“11011111”→P1再讀P1口:P1←“xxxx0111”只留低4位:A←“00000111”特征值:A+R2=“11010111”
MK3:
MOVR2,A;暫存回R2ORLA,#0FH;高4位保留;
低4位充“1”MOVP1,A;新值返送P1口
MOVA,P1;再讀進(jìn)P1口電平
ANLA,#0FH;只留低4位
ADDA,R2;得到鍵特征值P202圖6-28線反轉(zhuǎn)法圖例ME830矩陣式摁鍵(線反轉(zhuǎn)法)P1口,是一個(gè)雙向口低4位作為列線高4位作為行線0123456789AbCdEF實(shí)驗(yàn)八源程序線反轉(zhuǎn)法P68P1口:低4位作為列線高4位作為行線(特征值)01234CDFE0123456789AbCDEF-B中應(yīng)是特征值查特征值表的次數(shù)=鍵值從鍵值得到段碼1.矩陣鍵盤定義(接口引腳定義)2.建表:內(nèi)存中建好鍵編碼表(特征值表)和段碼表3.通過(guò)線反轉(zhuǎn)法得到相應(yīng)的特征值4.通過(guò)查找該特征值的查表次數(shù)得到相應(yīng)鍵值5.通過(guò)該鍵值得到相應(yīng)段碼6.送該段碼顯示鍵值實(shí)驗(yàn)總結(jié)重點(diǎn)!特點(diǎn):鍵的特征值唯一自動(dòng)解決了重鍵問(wèn)題1.LED顯示器結(jié)構(gòu)與原理圖7段LED數(shù)碼顯示器6.4顯示器接口ME830為共陽(yáng)極表十六進(jìn)制數(shù)及空白與P的顯示段碼數(shù)電里講過(guò)LED的結(jié)構(gòu)和顯示原理靜態(tài)顯示方式動(dòng)態(tài)顯示方式動(dòng)態(tài)顯示的實(shí)現(xiàn)動(dòng)態(tài)顯示方式顯示器接口技術(shù)包括重點(diǎn)學(xué)習(xí)靜態(tài)顯示方式連接
所有LED的位選均共同連接到+VCC或GND,每個(gè)LED的8根段選線分別連接一個(gè)8位并行I/O口,從該I/O口送出相應(yīng)的字型碼顯示字型。
特點(diǎn)原理簡(jiǎn)單;顯示亮度強(qiáng),無(wú)閃爍;占用I/O資源較多。分別用1個(gè)IO口動(dòng)態(tài)顯示方式連接
所有LED的段選線共
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小區(qū)門口變電站施工方案
- 上海高速公路欄桿施工方案
- 轉(zhuǎn)爐電氣改造方案
- 鋁合金網(wǎng)架施工方案
- 金牛區(qū)清淤河道施工方案
- 運(yùn)動(dòng)場(chǎng)圍網(wǎng)施工方案
- 銅梁石紋格柵吊頂施工方案
- 烈士陵園墓碑墓地施工方案
- 2025年中國(guó)電競(jìng)市場(chǎng)競(jìng)爭(zhēng)策略及行業(yè)投資潛力預(yù)測(cè)報(bào)告
- 2025年冷拉絲項(xiàng)目可行性研究報(bào)告
- 提高保險(xiǎn)公司客戶投訴處理能力的整改措施
- 物業(yè)費(fèi)收取協(xié)議書模板
- 電工(中級(jí)工)理論知識(shí)練習(xí)題(附參考答案)
- 工業(yè)設(shè)計(jì)概論試題
- 起重機(jī)的維護(hù)保養(yǎng)要求與月度、年度檢查記錄表
- 消防設(shè)施維護(hù)保養(yǎng)記錄表
- 城區(qū)生活垃圾填埋場(chǎng)封場(chǎng)項(xiàng)目 投標(biāo)方案(技術(shù)方案)
- 垃圾分類巡檢督導(dǎo)方案
- 大一護(hù)理生涯發(fā)展展示
- 五年級(jí)上冊(cè)數(shù)學(xué)應(yīng)用題100題及答案
- 新生兒急救與復(fù)蘇培訓(xùn)
評(píng)論
0/150
提交評(píng)論