<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于HID協(xié)議的USB人機交互設備的接口設計

基于HID協(xié)議的USB人機交互設備的接口設計

作者: 時(shí)間:2010-09-15 來(lái)源:網(wǎng)絡(luò ) 收藏

  定義了11種請求命令,通過(guò)這些請求來(lái)獲得設備的信息及對設備進(jìn)行設置。類(lèi)設備除了要支持這11種標準的請求外,還要實(shí)現以下6種特定請求:

本文引用地址:http://dyxdggzs.com/article/202511.htm

 ?、?Get_Report——主機用控制傳輸從設備接收數據,所有類(lèi)設備都要支持這個(gè)請求;

 ?、?Set_Report——設備用控制傳輸接收主機的數據,設備可以不支持此請求;

 ?、?Get_Idle——主機讀取設備當前的空閑速率,設備可以不支持此請求;

 ?、?Set_Idle——設置閑置狀態(tài),設備可不支持此請求;

 ?、?Get_Protocol——主機獲得設備的當前活動(dòng)是引導還是報告;

 ?、?Set_Protocol——在引導協(xié)議和報告協(xié)議間切換,設備如果支持系統引導(如鍵盤(pán)和鼠標),就必須支持Get_Protocol和Set_Protocol請求。

  2 接口固件設計與實(shí)現

  該設備采用C8051F120微控制器和PDID12芯片來(lái)實(shí)現,如圖3所示。


圖3 HID系統結構框圖

  因為PDID12的主端點(diǎn)(Endpoint2)具有64字節的雙緩沖,能夠提供比較高的速度,所以在端點(diǎn)描述符里把它配置為中斷傳輸方式,而Endpoint1沒(méi)有使用。PDIUSBD12通過(guò)中斷觸發(fā)CPU來(lái)響應主機的各種請求。

  此系統采用的USB協(xié)議版本是1.1,所以能夠支持中斷輸出傳輸。為了讓主機把設備識別為HID類(lèi)別,定義設備接口描述符時(shí)類(lèi)別這一字段的值必須設置為0x03(HID類(lèi)別),這樣主機就會(huì )繼續請求獲得設備的HID描述符和報告描述符。在主機Get_Descriptor請求中,當值字段的高位字節為0x21時(shí),表示主機要求獲得HID描述符;當值字段高字節為0x22時(shí),就是主機要求獲得報告描述符。對于報告描述符,可以參考HID Usage Tables規范。HID Descriptor Tool工具可以幫助建立和測試編寫(xiě)的報告描述符。這里定義了一個(gè)輸入和輸出64字節數據的報告描述符。

  code unsigned char szReport[] = {

  0x06,0xA0,0xFF,//用法頁(yè)(FFA0h, vendor defined)

  0x09, 0x01,//用法(vendor defined)

  0xA1, 0x01,//集合(ApplicaTION)

  0x09, 0x02 ,//用法(vendor defined)

  0xA1, 0x00,//集合(Physical)

  0x06,0xA1,0xFF,//用法頁(yè)(vendor defined)

  //輸入報告

  0x09, 0x03 ,//用法(vendor defined)

  0x09, 0x04,//用法(vendor defined)

  0x15, 0x80,//邏輯最小值(0x80 or -128)

  0x25, 0x7F,//邏輯最大值(0x7F or 127)

  0x35, 0x00,//物理最小值(0)

  0x45,0xFF,//物理最大值(255)

  0x75, 0x08,//報告長(cháng)度Report size (8位)

  0x95, 0x40,//報告數值(64 fields)

  0x81, 0x02,//輸入(data, variable, absolute)

  //輸出報告



關(guān)鍵詞: HID USB 協(xié)議 人機交互

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>