GD32F407 USB主机hid类,IN最大接收64字节

[复制链接]
1024|8
 楼主| 荔枝火桃 发表于 2023-2-16 09:41 来自手机 | 显示全部楼层 |阅读模式
移植的是GD32F407的USB主机hid类,设备不是标准的hid设备,设备无hid描述符和报表描述符,在IN接收时,最大接收64字节,想问下啥原因,如何可以接收长数据?
 楼主| 荔枝火桃 发表于 2023-2-16 09:42 来自手机 | 显示全部楼层
求大佬指点
AnkerSong 发表于 2023-2-16 14:10 | 显示全部楼层
FS最大负载是64没错,你要加长就分包,没别的办法,都这么用的
 楼主| 荔枝火桃 发表于 2023-2-16 16:04 来自手机 | 显示全部楼层
AnkerSong 发表于 2023-2-16 14:10
FS最大负载是64没错,你要加长就分包,没别的办法,都这么用的

主机端代码进行多次接收也不行吗?
 楼主| 荔枝火桃 发表于 2023-2-16 16:11 来自手机 | 显示全部楼层
AnkerSong 发表于 2023-2-16 14:10
FS最大负载是64没错,你要加长就分包,没别的办法,都这么用的

设备描述符显示的类是0xFF,我把pipe改为批量传输可以收到长数据,但只能收到一次,后面通道一直报NAK,重新使能也没用,不知道啥原因
icecut 发表于 2023-2-17 09:47 | 显示全部楼层
荔枝火桃 发表于 2023-2-16 16:11
设备描述符显示的类是0xFF,我把pipe改为批量传输可以收到长数据,但只能收到一次,后面通道一直报NAK, ...

nak不是设备的原因么?
 楼主| 荔枝火桃 发表于 2023-2-17 12:18 来自手机 | 显示全部楼层
icecut 发表于 2023-2-17 09:47
nak不是设备的原因么?

设备端发送数据过长之后,就会Nak,后面不管主机发啥命令,设备端都不响应,也不知道啥问题
icecut 发表于 2023-2-17 13:48 | 显示全部楼层
荔枝火桃 发表于 2023-2-17 12:18
设备端发送数据过长之后,就会Nak,后面不管主机发啥命令,设备端都不响应,也不知道啥问题 ...

你看fifo是不是只支持64. 超了会报错. 如果是dma,你设置多长都没事
 楼主| 荔枝火桃 发表于 2023-2-17 16:13 来自手机 | 显示全部楼层
icecut 发表于 2023-2-17 13:48
你看fifo是不是只支持64. 超了会报错. 如果是dma,你设置多长都没事

接收fifo是128字,发送fifo都是96字
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部