Usb Device Hid速度优化

您所在的位置:网站首页 Usb理论速度 Usb Device Hid速度优化

Usb Device Hid速度优化

2024-03-16 11:39| 来源: 网络整理| 查看: 265

项目中需要使用usb hid设备,通过pc端上位机下发数据到小机端。但测试速度并不理想,记录下优化过程,后续如果有大神能指点一二甚是感激。

Host端下发数据到device端:

1:hid设备使用中断端点传输数据,且受协议限制,每次只能发送report_length长度的数据。

2:根据抓包数据来看,每次host端发送数据开始到device端回复ack时间为9us;和bulk传输时ack响应时间一致,故此处没有优化点。

3:1)当将所有端点描述中的bInterval为0xff时每两次out数据包间隔时间为4ms;每次发送512Byte理论速度只能达到125Kbye/S(但此处4ms时间和设置的0xff*125us的时间并不一致))

        

 

      2)当将out端点描述中的bInterval为1,in端点中bInterval为0xff,时每两次out数据包间隔时间为750us,每次发送512Byte理论速度只能达到666Kbye/S和实际测量相符合。

                

    3)当将所有端点描述中的bInterval为1时每两次out数据包间隔时间为750us,每次发送512Byte理论速度只能达到666Kbye/S和实际测量相符合。(但此处750us时间和设置的0x1*125us的时间并不一致)。

                

4:根据hid spec来看:Hid仅仅使用中断和控制端点,并不能使用bulk端点传输数据(有人说能设置out端点为bulk类型)。实际测试过程中将out端点设置为bulk时,host并不通过out端点下发数据,是通过端点0的set_report发送数据,和spec中的描述一致。(但ep0大小仅为64Byte故使用ep0来传输数据肯定要比使用专门中断端点传输要慢,故不再做ep0传送host数据优化)

                        

当前pc端测试out端点结果 仍然为666KB/s暂时没能找到进一步优化的方向。有大神是否能指点一二,感激不尽..............

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3