USB鍵盤(pán)特殊功能鍵的實(shí)現
摘要: 本文較為詳盡地介紹了在USB多媒體鍵盤(pán)系統中,特殊功能鍵的實(shí)現方法。
關(guān)鍵詞: 通用串行總線(xiàn);系統特殊功能鍵;用戶(hù)特殊功能鍵;報告描述符
引言
隨著(zhù)計算機接口技術(shù)的日新月異,傳統的PS2鍵盤(pán)已不再對市場(chǎng)形成壟斷,USB鍵盤(pán)正在逐漸擴大市場(chǎng)占有率。與此同時(shí),USB鍵盤(pán)也在不斷完善自身的功能,由于傳統的107鍵結構鍵盤(pán)已無(wú)法滿(mǎn)足用戶(hù)的需要,所以帶有特殊功能鍵的USB多媒體鍵盤(pán)也就應運而生。
USB
USB接口具有如下優(yōu)點(diǎn):即插即用(Plug and Play)的特性,并具有自動(dòng)檢測的功能;可擴充到127個(gè)設備,支持熱插拔,無(wú)需關(guān)閉系統電源;最高可達480Mbps傳輸速率(USB2.0協(xié)議支持,USB1.1協(xié)議最大支持12Mbps),可滿(mǎn)足大多數設備的傳輸使用需要。
USB的數據傳輸共有四種類(lèi)型:(1)控制傳輸;(2)中斷傳輸;(3)批量傳輸;(4)同步傳輸。在USB鍵盤(pán)中只用到控制傳輸和中斷傳輸。所有的USB設備,必須通過(guò)系統列舉才可以正常使用。USB協(xié)議規定幾種必需的描述符:設備描述符,配置描述符,接口描述符,端點(diǎn)描述符,HID描述符和報告描述符,鍵盤(pán)設備列舉的過(guò)程,是設備根據自身的具體實(shí)際把描述符按主機要求的順序和格式,通過(guò)D+和D-兩路差分數據線(xiàn),發(fā)送給主機的根集線(xiàn)器。列舉成功后,設備管理器中顯示此設備為人體學(xué)輸入設備[1]。列舉簡(jiǎn)單流程如圖1所示。
圖1 設備列舉流程圖
報告描述符
一個(gè)USB多媒體鍵盤(pán),共包含三種按鍵:普通按鍵,系統特殊功能鍵和用戶(hù)特殊功能鍵,其中系統特殊功能鍵有Sleep、Power和Wakeup三個(gè),用戶(hù)特殊功能鍵較多,常用的有www, Mail , My Computer等。在USB列舉中,對鍵盤(pán)的特殊功能鍵的描述,主要是通過(guò)鍵盤(pán)的報告描述符(表1,表2)來(lái)實(shí)現的,即按照USB協(xié)議[2]的要求,將給定的報告描述符發(fā)送給主機,主機通過(guò)分析接收到的報告描述符,判斷出鍵盤(pán)的按鍵信息,然后實(shí)現對按鍵的響應。下面給出列舉的報告描述符并詳細說(shuō)明。
描述符中0980表示其下的描述符是關(guān)于系統特殊功能鍵,定義頭字節為02,第二個(gè)字節表示鍵值信息,報告數值為3,表示有三個(gè)不同的健值需要發(fā)送。發(fā)送時(shí),第二字節每位從低位到高位順序置1,以表示不同鍵值,向主機發(fā)送的數據如下:
POWER:
00000010 00000001 即02 01
SLEEP:
00000010 00000010 即02 02
WAKEUP:
00000010 00000100 即02 04
當按鍵抬起時(shí),向主機發(fā)送零幀:即02 00
報告描述符中050c,0901表示以下是用戶(hù)特殊功能鍵,定義字頭是03,報告長(cháng)度為8,需要8位即一個(gè)字節來(lái)表示所有的鍵值信息。不同的鍵值,是通過(guò)對字節從低到高的8位順序置1來(lái)表示,對于我們的報告描述符,按鍵PLAY/PAUSE送入主機的鍵值應為: 00000011 00000001 即03 01
以下列舉三個(gè)常用按鍵按下時(shí)鍵盤(pán)向主機發(fā)送的鍵值:
WWW: 報告描述符中第六個(gè),送入主機的鍵值應把第六位置1,即:
00000011 00100000 即03 20
SEARCH: 報告描述符中第五個(gè),送入主機的鍵值應把第五位置1,即:
00000011 00010000 即03 10
MAIL: 報告描述符中第二個(gè),送入主機的鍵值應把第二位置1,即:
00000011 00000010 即03 02
當按鍵抬起時(shí),向主機發(fā)送零幀: 即03 00
系統方案
我們使用Altera公司1K100QC208芯片作為系統的核心芯片,實(shí)現鍵盤(pán)掃描,編碼,USB接口以及整體系統控制的功能,配以Philips公司的P11A芯片,作為USB設備的和主機之間的 transceiver,外加一個(gè)改裝后的帶特殊功能鍵的鍵盤(pán),組成USB帶特殊功能鍵的鍵盤(pán)系統(圖2)。
圖2 系統實(shí)現
結語(yǔ)
通過(guò)以上方案,我們按照USB協(xié)議規定和主機通信,實(shí)現了USB多媒體鍵盤(pán)特殊功能鍵部分的功能。
參考文獻:
1. “Universal Serial Bus Specification Revision 1.1”,1998
2. “Device Class Definition for Human Interface Devices(HID)”,2001
評論