USB鍵盤特殊功能鍵的實(shí)現(xiàn)
發(fā)布時(shí)間:2008/5/27 0:00:00 訪問(wèn)次數(shù):685
    
    
    來(lái)源:電子產(chǎn)品世界 作者:南開(kāi)大學(xué)信息技術(shù)科學(xué)學(xué)院 李國(guó)峰 梁科 郭杰辰 王錦 天津中晶微電子有限公司 馬世亮
    
    摘要: 本文較為詳盡地介紹了在usb多媒體鍵盤系統(tǒng)中,特殊功能鍵的實(shí)現(xiàn)方法。
    
    關(guān)鍵詞: 通用串行總線;系統(tǒng)特殊功能鍵;用戶特殊功能鍵;報(bào)告描述符
    
    引言
    隨著計(jì)算機(jī)接口技術(shù)的日新月異,傳統(tǒng)的ps2鍵盤已不再對(duì)市場(chǎng)形成壟斷,usb鍵盤正在逐漸擴(kuò)大市場(chǎng)占有率。與此同時(shí),usb鍵盤也在不斷完善自身的功能,由于傳統(tǒng)的107鍵結(jié)構(gòu)鍵盤已無(wú)法滿足用戶的需要,所以帶有特殊功能鍵的usb多媒體鍵盤也就應(yīng)運(yùn)而生。
    
    usb
    usb接口具有如下優(yōu)點(diǎn):即插即用(plug and play)的特性,并具有自動(dòng)檢測(cè)的功能;可擴(kuò)充到127個(gè)設(shè)備,支持熱插拔,無(wú)需關(guān)閉系統(tǒng)電源;最高可達(dá)480mbps傳輸速率(usb2.0協(xié)議支持,usb1.1協(xié)議最大支持12mbps),可滿足大多數(shù)設(shè)備的傳輸使用需要。
    usb的數(shù)據(jù)傳輸共有四種類型:(1)控制傳輸;(2)中斷傳輸;(3)批量傳輸;(4)同步傳輸。在usb鍵盤中只用到控制傳輸和中斷傳輸。所有的usb設(shè)備,必須通過(guò)系統(tǒng)列舉才可以正常使用。usb協(xié)議規(guī)定幾種必需的描述符:設(shè)備描述符,配置描述符,接口描述符,端點(diǎn)描述符,hid描述符和報(bào)告描述符,鍵盤設(shè)備列舉的過(guò)程,是設(shè)備根據(jù)自身的具體實(shí)際把描述符按主機(jī)要求的順序和格式,通過(guò)d+和d-兩路差分?jǐn)?shù)據(jù)線,發(fā)送給主機(jī)的根集線器。列舉成功后,設(shè)備管理器中顯示此設(shè)備為人體學(xué)輸入設(shè)備[1]。列舉簡(jiǎn)單流程如圖1所示。
    
    
    
     圖1 設(shè)備列舉流程圖
    
    報(bào)告描述符
    一個(gè)usb多媒體鍵盤,共包含三種按鍵:普通按鍵,系統(tǒng)特殊功能鍵和用戶特殊功能鍵,其中系統(tǒng)特殊功能鍵有sleep、power和wakeup三個(gè),用戶特殊功能鍵較多,常用的有www, mail , my computer等。在usb列舉中,對(duì)鍵盤的特殊功能鍵的描述,主要是通過(guò)鍵盤的報(bào)告描述符(表1,表2)來(lái)實(shí)現(xiàn)的,即按照usb協(xié)議[2]的要求,將給定的報(bào)告描述符發(fā)送給主機(jī),主機(jī)通過(guò)分析接收到的報(bào)告描述符,判斷出鍵盤的按鍵信息,然后實(shí)現(xiàn)對(duì)按鍵的響應(yīng)。下面給出列舉的報(bào)告描述符并詳細(xì)說(shuō)明。
    描述符中0980表示其下的描述符是關(guān)于系統(tǒng)特殊功能鍵,定義頭字節(jié)為02,第二個(gè)字節(jié)表示鍵值信息,報(bào)告數(shù)值為3,表示有三個(gè)不同的健值需要發(fā)送。發(fā)送時(shí),第二字節(jié)每位從低位到高位順序置1,以表示不同鍵值,向主機(jī)發(fā)送的數(shù)據(jù)如下:
    power:
    00000010 00000001 即02 01
    sleep:
    00000010 00000010 即02 02
    wakeup:
    00000010 00000100 即02 04
    當(dāng)按鍵抬起時(shí),向主機(jī)發(fā)送零幀:即02 00
    報(bào)告描述符中050c,0901表示以下是用戶特殊功能鍵,定義字頭是03,報(bào)告長(zhǎng)度為8,需要8位即一個(gè)字節(jié)來(lái)表示所有的鍵值信息。不同的鍵值,是通過(guò)對(duì)字節(jié)從低到高的8位順序置1來(lái)表示,對(duì)于我們的報(bào)告描述符,按鍵play/pause送入主機(jī)的鍵值應(yīng)為: 00000011 00000001 即03 01
    以下列舉三個(gè)常用按鍵按下時(shí)鍵盤向主機(jī)發(fā)送的鍵值:
    www: 報(bào)告描述符中第六個(gè),送入主機(jī)的鍵值應(yīng)把第六位置1,即:
    00000011 00100000 即03 20
    search: 報(bào)告描述符中第五個(gè),送入主機(jī)的鍵值應(yīng)把第五位置1,即:
    00000011 00010000 即03 10
    mail: 報(bào)告描述符中第二個(gè),送入主機(jī)的鍵值應(yīng)把第二位置1,即:
    00000011 00000010 即03 02
    當(dāng)按鍵抬起時(shí),向主機(jī)發(fā)送零幀: 即03 00
    
    系統(tǒng)方案
    我們使用altera公司1k100qc208芯片作為系統(tǒng)的核心芯片,實(shí)現(xiàn)鍵盤掃描,編碼,usb接口以及整體系統(tǒng)控制的功能,配以philips公司的p11a
    
    
    來(lái)源:電子產(chǎn)品世界 作者:南開(kāi)大學(xué)信息技術(shù)科學(xué)學(xué)院 李國(guó)峰 梁科 郭杰辰 王錦 天津中晶微電子有限公司 馬世亮
    
    摘要: 本文較為詳盡地介紹了在usb多媒體鍵盤系統(tǒng)中,特殊功能鍵的實(shí)現(xiàn)方法。
    
    關(guān)鍵詞: 通用串行總線;系統(tǒng)特殊功能鍵;用戶特殊功能鍵;報(bào)告描述符
    
    引言
    隨著計(jì)算機(jī)接口技術(shù)的日新月異,傳統(tǒng)的ps2鍵盤已不再對(duì)市場(chǎng)形成壟斷,usb鍵盤正在逐漸擴(kuò)大市場(chǎng)占有率。與此同時(shí),usb鍵盤也在不斷完善自身的功能,由于傳統(tǒng)的107鍵結(jié)構(gòu)鍵盤已無(wú)法滿足用戶的需要,所以帶有特殊功能鍵的usb多媒體鍵盤也就應(yīng)運(yùn)而生。
    
    usb
    usb接口具有如下優(yōu)點(diǎn):即插即用(plug and play)的特性,并具有自動(dòng)檢測(cè)的功能;可擴(kuò)充到127個(gè)設(shè)備,支持熱插拔,無(wú)需關(guān)閉系統(tǒng)電源;最高可達(dá)480mbps傳輸速率(usb2.0協(xié)議支持,usb1.1協(xié)議最大支持12mbps),可滿足大多數(shù)設(shè)備的傳輸使用需要。
    usb的數(shù)據(jù)傳輸共有四種類型:(1)控制傳輸;(2)中斷傳輸;(3)批量傳輸;(4)同步傳輸。在usb鍵盤中只用到控制傳輸和中斷傳輸。所有的usb設(shè)備,必須通過(guò)系統(tǒng)列舉才可以正常使用。usb協(xié)議規(guī)定幾種必需的描述符:設(shè)備描述符,配置描述符,接口描述符,端點(diǎn)描述符,hid描述符和報(bào)告描述符,鍵盤設(shè)備列舉的過(guò)程,是設(shè)備根據(jù)自身的具體實(shí)際把描述符按主機(jī)要求的順序和格式,通過(guò)d+和d-兩路差分?jǐn)?shù)據(jù)線,發(fā)送給主機(jī)的根集線器。列舉成功后,設(shè)備管理器中顯示此設(shè)備為人體學(xué)輸入設(shè)備[1]。列舉簡(jiǎn)單流程如圖1所示。
    
    
    
     圖1 設(shè)備列舉流程圖
    
    報(bào)告描述符
    一個(gè)usb多媒體鍵盤,共包含三種按鍵:普通按鍵,系統(tǒng)特殊功能鍵和用戶特殊功能鍵,其中系統(tǒng)特殊功能鍵有sleep、power和wakeup三個(gè),用戶特殊功能鍵較多,常用的有www, mail , my computer等。在usb列舉中,對(duì)鍵盤的特殊功能鍵的描述,主要是通過(guò)鍵盤的報(bào)告描述符(表1,表2)來(lái)實(shí)現(xiàn)的,即按照usb協(xié)議[2]的要求,將給定的報(bào)告描述符發(fā)送給主機(jī),主機(jī)通過(guò)分析接收到的報(bào)告描述符,判斷出鍵盤的按鍵信息,然后實(shí)現(xiàn)對(duì)按鍵的響應(yīng)。下面給出列舉的報(bào)告描述符并詳細(xì)說(shuō)明。
    描述符中0980表示其下的描述符是關(guān)于系統(tǒng)特殊功能鍵,定義頭字節(jié)為02,第二個(gè)字節(jié)表示鍵值信息,報(bào)告數(shù)值為3,表示有三個(gè)不同的健值需要發(fā)送。發(fā)送時(shí),第二字節(jié)每位從低位到高位順序置1,以表示不同鍵值,向主機(jī)發(fā)送的數(shù)據(jù)如下:
    power:
    00000010 00000001 即02 01
    sleep:
    00000010 00000010 即02 02
    wakeup:
    00000010 00000100 即02 04
    當(dāng)按鍵抬起時(shí),向主機(jī)發(fā)送零幀:即02 00
    報(bào)告描述符中050c,0901表示以下是用戶特殊功能鍵,定義字頭是03,報(bào)告長(zhǎng)度為8,需要8位即一個(gè)字節(jié)來(lái)表示所有的鍵值信息。不同的鍵值,是通過(guò)對(duì)字節(jié)從低到高的8位順序置1來(lái)表示,對(duì)于我們的報(bào)告描述符,按鍵play/pause送入主機(jī)的鍵值應(yīng)為: 00000011 00000001 即03 01
    以下列舉三個(gè)常用按鍵按下時(shí)鍵盤向主機(jī)發(fā)送的鍵值:
    www: 報(bào)告描述符中第六個(gè),送入主機(jī)的鍵值應(yīng)把第六位置1,即:
    00000011 00100000 即03 20
    search: 報(bào)告描述符中第五個(gè),送入主機(jī)的鍵值應(yīng)把第五位置1,即:
    00000011 00010000 即03 10
    mail: 報(bào)告描述符中第二個(gè),送入主機(jī)的鍵值應(yīng)把第二位置1,即:
    00000011 00000010 即03 02
    當(dāng)按鍵抬起時(shí),向主機(jī)發(fā)送零幀: 即03 00
    
    系統(tǒng)方案
    我們使用altera公司1k100qc208芯片作為系統(tǒng)的核心芯片,實(shí)現(xiàn)鍵盤掃描,編碼,usb接口以及整體系統(tǒng)控制的功能,配以philips公司的p11a
熱門點(diǎn)擊
- 功率驅(qū)動(dòng)器件與MCU/DSC的接口電路設(shè)計(jì)技
- USB端口的EMC解決方案
- TMS320F2812擴(kuò)展正交解碼脈沖接口的
- HD7279A的原理與應(yīng)用
- 基于AVR單片機(jī)SPI的串行ADC接口設(shè)計(jì)
- NRZ-HDB3碼制轉(zhuǎn)換器設(shè)計(jì)
- 基于USB接口的同步視頻輸出系統(tǒng)設(shè)計(jì)
- SDH接口芯片PM5342及其應(yīng)用
- X25054/45 E2 PROM及其與51
- CF卡在數(shù)字音頻系統(tǒng)中的應(yīng)用
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開(kāi)
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究