WinCE 5.0下鼠標鍵盤驅動完全解析(上)
出處:互聯(lián)網(wǎng) 發(fā)布于:2011-09-04 11:14:01
本文通過對WinCE 5.0下的鼠標鍵盤驅動分析,對WinCE驅動程序設計進行了分析。歡迎大家對不對的地方指出。
硬件
寫一個驅動程序的件事就是讀硬件的規(guī)范文檔。所以首先必須了解硬件才能寫好驅動。鼠標和鍵盤現(xiàn)在已經(jīng)成為現(xiàn)代PC機上不可缺少的組成部分了。有興趣可以看下他們的發(fā)展歷史:
1968年12月9日,世界上的個鼠標誕生于美國史丹福大學。它的發(fā)明者是Douglas Englebart博士。
1981年,只商業(yè)化鼠標誕生
1983年,羅技公司發(fā)明了只光學機械式鼠標。
1980年代初,還出現(xiàn)了代光電鼠標,這類光電鼠標具有比機械鼠標更高的度。但是它必須工作在特殊的印有細微格柵的光電鼠標板上。這種鼠標過高的成本限制了其使用范圍
1999年,安捷倫公司(Aeilent, 后改組為安華高, Avago)發(fā)布了IntelliEye光學引擎,繼而市場上出現(xiàn)了不需要專用鼠標板的光電鼠標,光電鼠標的普及由此開始。
2003年,羅技與微軟分別推出以藍牙微通訊協(xié)定的藍牙鼠標
2005年,羅技與安華高合作推出款激光鼠標(無線, 可充電, Logitech MX1000)
2006年,只克服玻璃障礙的有線雷射鼠標問世(DEXIN, ML45)
2006年,藍牙雷射鼠標問世(Acrox)
硬件之鍵盤
目前現(xiàn)在大概有下面3類鍵盤:
l USB keyboard 被Macintosh 和IBM兼容機所支持的鍵盤。在WinCE下,這種設備(鍵盤和鼠標)屬于HID設備(Human Interface Device)。由于涉及到USB驅動,所以在本文暫時,準備在USB驅動中詳細補充(其中的中斷處理算法和ps/2基本一致,只是接口上發(fā)生變化)。
l IBM/compatible keyboards 現(xiàn)代PC機支持的AT Keyboard 和PS/2 keyboard.。本文重點講解WinCE 5.0下PS/2鍵盤驅動。
l ADB keyboards 老式的蘋果機上使用,本文不關注。
8042和8048
又有歷史來了,一開始,IBM首先使用Intel 8048微控制器作為鍵盤的編碼器,使用Intel 8042微控制器作為鍵盤控制器。所以呢,現(xiàn)在這個標準都被大家所接受了。基本上鍵盤設備的控制器就這2種了。
其中,8048是鍵盤上的編碼器,8042是在主機上的鍵盤控制器(目前,基本上都已經(jīng)被集成到了芯片組里了)。位置就如下圖所示:
8042的工作模式
l 依賴于主板的不同鍵盤控制器可以工作于兩個模式之一AT 兼容模式或PS/2 兼容模式
l 如果主板支持PS/2 鼠標就工作在后一種模式下。在這種情況下8042 的作用是鍵盤控制器和鼠標控制器
l 鍵盤控制器根據(jù)鍵盤端口的連線情況自動檢測它應該工作在何種模式下
PS/2鍵盤
l Scan code, Make Codes, Break Codes, and Typematic Repeat
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://hbjingang.com,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- ARM技術架構與應用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術選型與抗干擾設計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎知識2025/7/14 16:59:04









