《《鍵盤輸入與IO實驗》PPT課件》由會員分享,可在線閱讀,更多相關《《鍵盤輸入與IO實驗》PPT課件(15頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、JX44B0實驗系統(tǒng)教案鍵盤輸入與IO實驗,武漢創(chuàng)維特信息技術有限公司,2020/9/21,2,,提綱,1,3,2,4,5,基礎知識,實驗目的,實驗內(nèi)容,預備知識,實驗設備,6,實驗過程,7,實驗報告要求,3,一 實驗目的,,實驗目的,,學習鍵盤驅(qū)動原理 掌握通過CPU的I/O擴展鍵盤的方法,4,二 實驗內(nèi)容,,實驗內(nèi)容,,編寫矩陣鍵盤掃描程序,并將按鍵鍵值在數(shù)碼管中顯示,5,三 預備知識,,預備知識,,了解ADT集成開發(fā)環(huán)境的基本功能; 了解鍵盤的構成以及原理,6,四 實驗設備,,實驗設備,,JX44B0教學實驗箱 ADT1000仿真器和ADT IDE集成開發(fā)環(huán)境 串口連接線,7,五 基礎知
2、識,,鍵盤實現(xiàn)方案,,,鍵盤實現(xiàn)方案 采用專門的芯片實現(xiàn)鍵盤掃描 采用軟件實現(xiàn)鍵盤掃描 軟鍵盤實現(xiàn)方案 當開關打開時,通過處理器的I/O 口的一個上拉電阻提供邏輯1;當開關閉合時,處理器的I/O 口的輸入將被拉低到邏輯0。,,8,五 基礎知識,,矩陣鍵盤電路,,,一個瞬時接觸開關(按鈕)放置在每一行與每一列的交叉點。每一行由一個輸出端口的一位驅(qū)動,每一列由一個電阻器上拉且供給輸入端口一位。,,,9,五 基礎知識,,按鍵抖動,,,開關并不完善,因為當它們被按下或者被釋放時,并不能夠產(chǎn)生一個明確的1或者0。盡管觸點可能看起來穩(wěn)定而且很快地閉合,但與微處理器快速的運行速度相比,這種動作是比較慢的。當
3、觸點閉合時,其彈起就像一個球。彈起效果將產(chǎn)生如下圖所示的好幾個脈沖。彈起的持續(xù)時間通常將維持在5ms30ms 之間。,,,10,五 基礎知識,,鍵盤掃描,,,鍵盤掃描過程就是讓微處理器按有規(guī)律的時間間隔查看鍵盤矩陣,以確定是否有鍵被按下 一旦處理器判定有一個鍵按下,鍵盤掃描軟件將過濾掉抖動并且判定哪個鍵被按下 每個鍵被分配一個稱為掃描碼的唯一標識符。應用程序利用該掃描碼,根據(jù)按下的鍵來判定應該采取什么行動,換句話說,掃描碼將告訴應用程序按下哪個鍵,,,11,五 基礎知識,,鍵盤掃描算法,,,初始化:所有的行(輸出端口)被強行設置為低電平 在沒有任何鍵按下時,所有的列(輸入端口)將讀到高電平。
4、任何鍵的閉合將造成其中的一列變?yōu)榈碗娖健?一旦檢測到有鍵被按下,就需要找出是哪一個鍵。過程很簡單,微處理器只需在其中一列上輸出一個低電平。如果它在輸入端口上發(fā)現(xiàn)一個0值,微處理器就知道在所選擇行上產(chǎn)生了鍵的閉合,,,12,五 基礎知識,,JX44B0的鍵盤模塊,,,JX44B0具有44的軟鍵盤。原理圖如下:,,,13,五 基礎知識,,實驗說明,,,,鍵盤處理流程圖,,依次將鍵盤的每一行輸出低電平,延時一段時間 然后獲取該行中各列的輸入情況,如果各列全部為1則繼續(xù)查詢下一行,否則延時一段時間并重新掃描一次 如果掃描結(jié)果與上次掃描結(jié)果相同則調(diào)用key_get_char獲取鍵碼,然后調(diào)用display_num在LED上顯示相應鍵值。 圖中通過如下程序?qū)㈡I盤的row行輸出低電平: unsigned char*keyboard_port = (unsigned char*)0 x2000000; *keyboard_port = (0 x00000001 << row);,14,六 實驗過程,,實驗過程,,,15,六 實驗報告要求,,實驗報告要求,,,鍵盤掃描有哪幾種方式,分別說明其基本原理; 思考使用中斷方式如何處理鍵盤輸入,試畫出流程圖。,