資料介紹
小鍵盤+LED驅動實驗:一.實驗目的
學習小鍵盤驅動原理和LED顯示原理,掌握輪詢方式獲取鍵值的原理,理解驅動程序采用輪詢方式和中斷方式的區別。學習將最近的按鍵值移位顯示在LED上的方法。
二.實驗原理和說明
1. 鍵盤有關概念
1.1鍵盤掃描碼
當鍵盤上的按鍵被按下或松開的時候,鍵盤將發送掃描碼給計算機。掃描碼告訴系統什么鍵被按下或松開。例如按鍵'A'。按鍵'A'的掃描碼為1CH。當按下鍵'A'時,鍵盤將發送1CH到串行線上。如果一直按住鍵'A'不放,鍵盤將以一定的重復率發送1CH。這個過程將保持下去,直到另外的鍵被按下或者鍵'A'被釋放。
而且,當按鍵被釋放的時候,鍵盤也將發送其它代碼給計算機。還是以鍵'A'為例。當鍵'A'被釋放時,鍵盤將發送F0H給計算機,報告有鍵被釋放,隨后再發送1CH,說明被釋放的鍵是'A',即,鍵'A'釋放時鍵盤發送給計算機的掃描碼是F0H 1CH。
1.2系統掃描碼
在我們通常所使用的pc機上,系統(BIOS,linux內核)處理的并不是鍵盤掃描碼,而是系統掃描碼。而鍵盤掃描碼到系統掃描碼的轉換通常都是由硬件(如PC鍵盤接口模塊8042)完成。系統掃描碼與鍵盤掃描碼除了每個鍵的代碼不同外,最大的差別是把鍵盤放下時產生的兩個鍵盤掃描碼(共兩字節)轉換為1個字節的系統掃描碼表示。如‘A’被鍵釋放時,發送鍵盤掃描碼為:F0H,1CH,相應的系統掃描碼為9E。
1.3 鍵碼
內核中為了方便鍵盤按鍵的處理,把系統掃描碼對應成鍵碼(keycode)。鍵碼在1-128之間(一般的鍵盤為104鍵),這樣鍵碼就可用7位來表示鍵盤上某個鍵(內核中用鍵碼字節的高位表示此鍵是按下還是松開)。
硬件上已經實現了串轉并的功能,發送過來的是一個完整的鍵盤掃描碼,軟件上只要處理這些掃描碼即可。
2. 鍵盤按鍵值的獲取
PC機的PS2鍵盤按鍵太多,若是采用輪詢方式將浪費CPU時間。因此采用的是中斷方式。通用的鍵值獲取流程如下:
學習小鍵盤驅動原理和LED顯示原理,掌握輪詢方式獲取鍵值的原理,理解驅動程序采用輪詢方式和中斷方式的區別。學習將最近的按鍵值移位顯示在LED上的方法。
二.實驗原理和說明
1. 鍵盤有關概念
1.1鍵盤掃描碼
當鍵盤上的按鍵被按下或松開的時候,鍵盤將發送掃描碼給計算機。掃描碼告訴系統什么鍵被按下或松開。例如按鍵'A'。按鍵'A'的掃描碼為1CH。當按下鍵'A'時,鍵盤將發送1CH到串行線上。如果一直按住鍵'A'不放,鍵盤將以一定的重復率發送1CH。這個過程將保持下去,直到另外的鍵被按下或者鍵'A'被釋放。
而且,當按鍵被釋放的時候,鍵盤也將發送其它代碼給計算機。還是以鍵'A'為例。當鍵'A'被釋放時,鍵盤將發送F0H給計算機,報告有鍵被釋放,隨后再發送1CH,說明被釋放的鍵是'A',即,鍵'A'釋放時鍵盤發送給計算機的掃描碼是F0H 1CH。
1.2系統掃描碼
在我們通常所使用的pc機上,系統(BIOS,linux內核)處理的并不是鍵盤掃描碼,而是系統掃描碼。而鍵盤掃描碼到系統掃描碼的轉換通常都是由硬件(如PC鍵盤接口模塊8042)完成。系統掃描碼與鍵盤掃描碼除了每個鍵的代碼不同外,最大的差別是把鍵盤放下時產生的兩個鍵盤掃描碼(共兩字節)轉換為1個字節的系統掃描碼表示。如‘A’被鍵釋放時,發送鍵盤掃描碼為:F0H,1CH,相應的系統掃描碼為9E。
1.3 鍵碼
內核中為了方便鍵盤按鍵的處理,把系統掃描碼對應成鍵碼(keycode)。鍵碼在1-128之間(一般的鍵盤為104鍵),這樣鍵碼就可用7位來表示鍵盤上某個鍵(內核中用鍵碼字節的高位表示此鍵是按下還是松開)。
硬件上已經實現了串轉并的功能,發送過來的是一個完整的鍵盤掃描碼,軟件上只要處理這些掃描碼即可。
2. 鍵盤按鍵值的獲取
PC機的PS2鍵盤按鍵太多,若是采用輪詢方式將浪費CPU時間。因此采用的是中斷方式。通用的鍵值獲取流程如下:
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- YamPAD機械小鍵盤開源分享
- LED驅動控制/8*3位鍵盤掃描專用電路AiP1638
- 帶鍵盤掃描電路接口的LED驅動控制專用電路AIP650資料 7次下載
- 單片機課程設計例題8-獨立式小鍵盤輸入
- 帶鍵盤掃描接口的LED驅動控制專用芯片TM1639 11次下載
- 基于DSP的LED照明驅動控制系統設計方案 17次下載
- 數碼管驅動及鍵盤控制芯片CH450數據手冊 10次下載
- PCB設計:藍牙小鍵盤資料下載
- BLE實驗詳解之藍牙鍵盤設計方案 58次下載
- PS2鍵盤模塊的驅動和時序及行為實驗的資料說明
- 使用筆記本進行PROTEL99 PCB制圖不能使用小鍵盤換層按鍵如何解決 0次下載
- 智能鍵盤和LED驅動接口芯片的設計 14次下載
- qt編寫的觸摸小鍵盤 7次下載
- 8255掃描鍵盤、顯示實驗
- 帶鍵盤掃描和LED/LCD驅動顯示板設計及源程序
- 電路驅動混合類型和數量的LED 436次閱讀
- 按鍵驅動的實驗 644次閱讀
- PIC單片機驅動LCD段驅動器的設計 1302次閱讀
- 沁恒股份16位數碼管驅動及鍵盤控制芯片:CH453概述 2863次閱讀
- 沁恒股份數碼管驅動及鍵盤控制芯片: CH455概述 3571次閱讀
- 沁恒股份16位數碼管驅動及鍵盤控制芯片:CH456介紹 3980次閱讀
- 沁恒股份16段數碼管驅動及鍵盤控制芯片CH454概述 3393次閱讀
- PIC18F8490單片機可用于連接LCD段驅動器的設計 1253次閱讀
- 各種LED驅動技術 7783次閱讀
- 如何用嵌入式Linux系統編寫鍵盤驅動 1312次閱讀
- 基于MC34063A的LED用恒流驅動電路的設計 1.8w次閱讀
- LED驅動電路的工作原理和LED驅動保護 1.4w次閱讀
- 基于ARM的矩陣鍵盤設計及其linux驅動實現 3057次閱讀
- 淺談更好的led驅動電源設計方法 1660次閱讀
- 基于ARM9的多行列鍵盤設計及其驅動實現 1985次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多