STM32 HAL库 USB HID 接收数据效率好低啊,超级低。

2019-12-30 19:28发布

HAL库
端点的发送和接收间隔设置为20ms。
发送数据还是ok的。 一秒可以发送50次64个字节数组。
接收就烂了,一秒顶多接收到16次数据。修改端点时间也没有效果。

以前用ST库还是可以达到数据值的。看来要绕开他的封装直接调用接收中断函数。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
redroof
1楼-- · 2020-01-01 00:20
dwiller_ARM 发表于 2017-3-2 21:17
Bit,位  一般都是用位表示的

弱弱表示。。。 不管是PC还是单片机,USB通信人接触到的都是数据包,直接可算字节速度,12M/480M也直接能口算折成字节估算,怎么又折腾回位单位了
huangqi412
2楼-- · 2020-01-01 04:49
huangqi412 发表于 2017-3-3 09:35
弱弱表示。。。 不管是PC还是单片机,USB通信人接触到的都是数据包,直接可算字节速度,12M/480M也直接能 ...

为什么叫串行传输,包括USB USART,因为实际是按位传输的,所以都用BIT来表示速度
dwiller_ARM
3楼-- · 2020-01-01 07:39
dwiller_ARM 发表于 2017-3-3 10:05
为什么叫串行传输,包括USB USART,因为实际是按位传输的,所以都用BIT来表示速度 ...

USB跟串口不同,串口是字节传输的,  USB对人来说已经是数据包传输,对写芯片的人才是位传输。
huangqi412
4楼-- · 2020-01-01 11:50
HAL库写程序是方便,但是抛开性能要求只谈方便就是耍流氓。就HAL库对中断的处理,全部flag一个一个判定下来,还callback调用来调用去的,效率不会高的。

一周热门 更多>