版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第三講鍵盤掃描的學(xué)習(xí)提要:主要學(xué)習(xí)Atmega8通用數(shù)字I/O接口掃描鍵盤的應(yīng)用。前面我們學(xué)習(xí)了ATmega8的I/O口作為通用數(shù)字輸入/輸出口來用時對LED 數(shù)碼管控制的應(yīng)用,其實(shí)主要是作為輸出口的應(yīng)用。下面我們就來學(xué)習(xí)一下用作輸入口的應(yīng)用掃描鍵盤。3.1 按鍵的使用特點(diǎn):按鍵的應(yīng)用主要就是在按鍵閉合時改變電路的電平,但是一般情況下按鍵的開關(guān)都是機(jī)械彈性觸點(diǎn)開關(guān),它利用觸點(diǎn)的接觸和分離來實(shí)現(xiàn)電路的通斷,在按鍵按下和釋放時往往會產(chǎn)生抖動干擾,所以要想辦法消除抖動干擾。消除抖動干擾即可用硬件設(shè)計也可用軟件設(shè)計的方法。硬件消抖就要在硬件設(shè)計上增加消抖電路,如用R-S觸發(fā)器等,這樣就會增加系統(tǒng)成本。
2、軟件消抖就是要在軟件中對按鍵進(jìn)行二次測試確認(rèn),既當(dāng)?shù)谝淮螜z測到按鍵被按下后,間隔10毫秒左右再次檢測該按鍵是否被按下,只有兩次都冊到按鍵按下時才確認(rèn)該按鍵被按下了,從而消除抖動干擾。另外我們還要判別按鍵的釋放,為了設(shè)計方便,我們現(xiàn)不考慮長時間按下按鍵的情況,只簡單考慮檢測到按下和釋放才計作一次按鍵操作。3.2 單鍵盤掃描的應(yīng)用下面我們就用軟件消抖的方法來做個簡單的應(yīng)用,我們用PB口接一個LED 數(shù)碼管,用來顯示數(shù)據(jù),用PC0端口接一個按鍵電路,我先畫出電路: 我們要實(shí)現(xiàn)的功能是每按一次按鍵,LED數(shù)碼管顯示的數(shù)據(jù)加1,到9回0。怎么樣不是很復(fù)雜吧,是不是很快就可以些出來了呢?下面是我寫的,你也
3、參考一下吧: 上面的程序沒考慮按鍵長按的情況,如果象我們使用的鍵盤一樣,長時間按下一個按鍵,在屏幕上就不斷的打印該字符,在這個例子里就是長時間按下按鍵的話就對CountNum加一,而不是每次按下按鍵一次就加一一次,該怎么考慮呢,你可以試試能不能實(shí)現(xiàn)。3.3 矩陣按鍵(鍵盤掃描的應(yīng)用如果按鍵多的話,我們一般就要考慮節(jié)省I/O資源,通常會考慮采用矩陣式的接口。矩陣鍵盤由行和列組成,每個按鍵都有它的行值和列值,行值和列值的組合就是識別每個鍵盤的編碼。確定哪個按鍵的流程是:先在行和列的一個口中輸出高電平,在另一個行列口讀取一個掃描碼;然后在后一個行列口輸出高電平,在前一行列口讀取第二個掃描碼,然后查表
4、就可確定哪個按鍵被按下了。有了確定哪個按鍵的方法,就簡單多了。鍵盤的處理程序也就基本出來了,因為它個單按鍵的掃描程序是很類似的:先確定有無按鍵按下,然后確定是哪個按鍵,返回該鍵值或處理對應(yīng)的任務(wù)就可以了。當(dāng)然這里也要考慮抖動的消除,等待按鍵的斷開。下面我們就設(shè)計一個3X3的鍵盤來學(xué)習(xí)多按鍵的應(yīng)用。我先畫出電路圖,然后再描述要實(shí)現(xiàn)的功能: 我們要實(shí)現(xiàn)的目標(biāo)是每按下一個按鍵就要在LED數(shù)碼管中顯示出該按鍵對應(yīng)的值,按鍵斷開后顯示”-”,這個符號不在前面介紹的內(nèi)容中,你可以試著計算一下該值應(yīng)該是多少。好了,我給出一個參考: 資料整理自互聯(lián)網(wǎng),版權(quán)歸原作者! 歡迎訪問 www.XinShiL 新勢力單片機(jī)、嵌入式 Protues-ATmega8仿真 好了,我是在主函數(shù)中判斷是否有按鍵按下,然后消除抖動干擾的,然后用 ScanKey 函數(shù)的到按鍵值,顯示在 LED 數(shù)碼管中,最后等待按鍵釋放;ScanKey 的功能主要就是的到掃描碼確定是哪個按鍵,返回該按鍵的值。 除了像上面的對按鍵的接口不停的掃描,還可以使用定時掃描,例如用一個 定時器,每隔 10MS 對按鍵接口進(jìn)行掃描,看是否有按鍵按下;也可以使用中斷 的方式去掃描,當(dāng)按鍵按下時由硬件電路產(chǎn)生一個中斷,MCU 響應(yīng)該中斷,確 定哪個按鍵被按下,處理相應(yīng)函數(shù)。 這些內(nèi)容在后面講到時鐘和中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省即墨一中2025屆生物高三上期末質(zhì)量跟蹤監(jiān)視模擬試題含解析
- 2025屆陜西省安康市漢陰縣第二高級中學(xué)生物高二上期末質(zhì)量檢測模擬試題含解析
- 河北省邯鄲市永年區(qū)第二中學(xué)2025屆生物高三第一學(xué)期期末質(zhì)量檢測試題含解析
- 2024年影視拍攝合同范文
- 2025屆湖南省長沙雅禮中學(xué)高二上生物期末學(xué)業(yè)質(zhì)量監(jiān)測模擬試題含解析
- 2025屆內(nèi)蒙古通遼市科左后旗甘旗卡第二高級中學(xué)高一數(shù)學(xué)第一學(xué)期期末統(tǒng)考模擬試題含解析
- 山西省朔州市懷仁縣一中2025屆高一上數(shù)學(xué)期末調(diào)研模擬試題含解析
- 2025屆河北省承德二中高一數(shù)學(xué)第一學(xué)期期末學(xué)業(yè)水平測試試題含解析
- 2025屆云南省鎮(zhèn)沅縣第一中學(xué)生物高三第一學(xué)期期末考試模擬試題含解析
- 2025屆肇慶市高中畢業(yè)班生物高二上期末達(dá)標(biāo)檢測試題含解析
- 高考熱點(diǎn)作文素材:《黑神話:悟空》
- 工業(yè)大學(xué)安全施工組織設(shè)計
- 城市軌道交通列車自動控制系統(tǒng)維護(hù) 課件 1.1 列車自動控制系統(tǒng)初識
- 湘美版 八年級上冊 美術(shù) 第3課 寄情山水 教案
- 期中模擬試卷-浙2024-2025學(xué)年統(tǒng)編版語文四年級上冊
- 洗車場加盟協(xié)議
- 2024-2030年沉香木項目融資商業(yè)計劃書
- 2024年新華師大版七年級上冊數(shù)學(xué)教學(xué)課件 第1章 有理數(shù) 1.13 近似數(shù)
- 2023-2024學(xué)年北京市朝陽區(qū)陳經(jīng)綸中學(xué)七年級(上)期中數(shù)學(xué)試卷【含解析】
- 財政投資評審咨詢服務(wù)預(yù)算和結(jié)算評審項目 投標(biāo)方案(技術(shù)方案)
- 高中化學(xué)必修一《2.2 氯及其化合物》導(dǎo)學(xué)案
評論
0/150
提交評論