打印

使用单片机USBH时遇到的问题

[复制链接]
1218|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cj泓|  楼主 | 2016-8-15 17:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
LOVE_ELEC| | 2016-8-16 09:40 | 只看该作者
建议把问题描述的更清楚一些,这样提问只有了解你所使用的程序,才可能给予你比较准确的回复,否则就只能靠猜!

使用特权

评论回复
板凳
cj泓|  楼主 | 2016-8-16 09:53 | 只看该作者
LOVE_ELEC 发表于 2016-8-16 09:40
建议把问题描述的更清楚一些,这样提问只有了解你所使用的程序,才可能给予你比较准确的回复,否则就只能靠 ...

我用的是新唐官网给的USBH_HID_MultiDevice例程,现在公司项目需要使用扫码枪(插上电脑之后显示的是键盘的协议),然后我现在遇到的情况是使用USB键盘能读到数据(但应该也不是正确的,因为键盘上的灯没亮,但是按下每一个按键都能有数据回传),但是扫码枪就一直不能用,扫码枪上的灯一直闪(厂家说是枚举有问题)

使用特权

评论回复
地板
LOVE_ELEC| | 2016-8-16 10:06 | 只看该作者
这是两个设备:键盘和扫码枪?还是就是扫码枪?

使用特权

评论回复
5
cj泓|  楼主 | 2016-8-16 10:51 | 只看该作者
LOVE_ELEC 发表于 2016-8-16 10:06
这是两个设备:键盘和扫码枪?还是就是扫码枪?

是要用扫码枪,键盘是用来测试的,但是这两个东西连上电脑显示的设备是一样的

使用特权

评论回复
6
LOVE_ELEC| | 2016-8-16 11:01 | 只看该作者
扫码枪在电脑上也显示为 USB HID设备可能是因为厂商就是用的 HID Class。
问题细化下:
1> 键盘和扫码枪是不是独立的设备?即二者之间没有硬件上的关联
2> 若是独立的,键盘和扫码枪单独使用是否正常?
3> 若独立使用正常,那不正常的情况发生在什么条件下?如两者同时插入时或者其他

使用特权

评论回复
7
cj泓|  楼主 | 2016-8-16 11:09 | 只看该作者
LOVE_ELEC 发表于 2016-8-16 11:01
扫码枪在电脑上也显示为 USB HID设备可能是因为厂商就是用的 HID Class。
问题细化下:
1> 键盘和扫码枪是 ...

1、是独立设备,而且项目仅用扫码枪(我的设备上仅有一个USB接口),键盘只是我个人用来测试的。
2、单独使用其实都是不正常的,扫码枪厂家说是我的程序枚举有问题。我用的是新唐单片机例程

使用特权

评论回复
8
LOVE_ELEC| | 2016-8-16 11:25 | 只看该作者
本帖最后由 LOVE_ELEC 于 2016-8-16 11:26 编辑

1> 你说的设备都不正常,是指和电脑连接不能正常使用,还是和你自己做的Host连接不能正常工作?
2> 若是和你的设备连接不正常,那你做的程序应该是Host而不应该是HID Device3> 若是和电脑连接不能正常工作,那可能就是USB的驱动没有装好!


使用特权

评论回复
9
cj泓|  楼主 | 2016-8-16 13:22 | 只看该作者
LOVE_ELEC 发表于 2016-8-16 11:25
1> 你说的设备都不正常,是指和电脑连接不能正常使用,还是和你自己做的Host连接不能正常工作?
2> 若是和 ...

和电脑是可以的   和我的设备不行,,我用的是新唐直接给出的USBH例程,还是不行

使用特权

评论回复
10
LOVE_ELEC| | 2016-8-16 14:24 | 只看该作者
本帖最后由 LOVE_ELEC 于 2016-8-16 14:27 编辑
cj泓 发表于 2016-8-16 13:22
和电脑是可以的   和我的设备不行,,我用的是新唐直接给出的USBH例程,还是不行 ...

1> 因为没用过新唐的USB库,所以不知道具体是哪里的问题。但是官方提供的Demo应该可以实现检测到鼠标   的,可以看看官方的库的状态机运行到哪里了这样方便查找问题?先检查下MCU是否工作在Host模式下,ID线接地。
2> 扫码枪功耗比较大尤其是在上电瞬间,建议检查下是不是供电能力不够?

使用特权

评论回复
11
Simon21ic| | 2016-8-16 15:06 | 只看该作者
我们用过他们的芯片,不过USBH层和协议栈我们完全自己重写了
没有碰到你说的问题

使用特权

评论回复
12
icecut| | 2016-8-16 16:01 | 只看该作者
用 bushound 抓一下枚举过程.看看你们哪个消息操作错了.
如果是基于 linux 就不是驱动问题

使用特权

评论回复
13
cj泓|  楼主 | 2016-8-16 20:53 | 只看该作者
icecut 发表于 2016-8-16 16:01
用 bushound 抓一下枚举过程.看看你们哪个消息操作错了.
如果是基于 linux 就不是驱动问题 ...

抓了,,我发现我用新唐的BSP的时候,第一个设备描述符都没有发上来

使用特权

评论回复
14
cj泓|  楼主 | 2016-8-16 20:54 | 只看该作者
Simon21ic 发表于 2016-8-16 15:06
我们用过他们的芯片,不过USBH层和协议栈我们完全自己重写了
没有碰到你说的问题 ...

主要是USB这一块刚接触,,全部重写工程量感觉有点大啊

使用特权

评论回复
15
icecut| | 2016-8-17 10:02 | 只看该作者
pid,vid 是读上来的么

使用特权

评论回复
16
cj泓|  楼主 | 2016-8-17 19:54 | 只看该作者
icecut 发表于 2016-8-17 10:02
pid,vid 是读上来的么

是读上来的

使用特权

评论回复
17
icecut| | 2016-8-17 20:14 | 只看该作者

那硬件就没问题

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

19

帖子

1

粉丝