打印
[DemoCode下载]

不用检测ID引脚,在M451上实现USB的Device和Host功能

[复制链接]
3986|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Harry-Nu|  楼主 | 2015-7-17 15:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Harry-Nu 于 2015-7-17 15:28 编辑

前段时间发一个帖子:基于M451编写的OTG例子  bbs.21ic.com/icview-967928-1-1.html
但该方法使用MCU的Host功能读取U盘时,ID脚必须为低电平才可以,专用的OTG线内部已经将ID脚接地,故使用普通USB线时,就不能读取U盘里的信息了。
于是对代码进行了修改,1秒钟执行Device功能,1秒钟执行Host功能,如此循环去检测USB接口。如果是U盘接入了进来,就会一直保持Host功能,实现读取一次U盘里的信息,直到和U盘断开连接;如果是接入到PC端,就会一直保持Device功能(HID设备),直到断开连接。
感兴趣的工程师可以在如下链接中下载:yunpan.cn/ccqn2z5uPEzvt  访问密码 fbf8

程序运行时,串口打印信息详见下图。


本程序可以使用的开发板如下图所示:





沙发
Mancherstun| | 2015-7-18 21:36 | 只看该作者
楼主,这个板子是开发板吧?

使用特权

评论回复
板凳
C洛达尔多| | 2015-7-18 22:00 | 只看该作者
这个具体是如何实现的,我自己来看看

使用特权

评论回复
地板
Harry-Nu|  楼主 | 2015-7-20 10:02 | 只看该作者
Mancherstun 发表于 2015-7-18 21:36
楼主,这个板子是开发板吧?

是芯唐的官方开发板。

使用特权

评论回复
5
Harry-Nu|  楼主 | 2015-7-20 10:05 | 只看该作者
C洛达尔多 发表于 2015-7-18 22:00
这个具体是如何实现的,我自己来看看

主要是用Timer定时器来对Device和Host状态进行查询,一旦发现相应的设备连接上后,就会保持当前状态,直到设备断开连接。

使用特权

评论回复
6
侣行天下| | 2015-7-20 20:44 | 只看该作者
谢谢楼主的分享,看看,有程序吗

使用特权

评论回复
7
Harry-Nu|  楼主 | 2015-7-21 13:23 | 只看该作者
侣行天下 发表于 2015-7-20 20:44
谢谢楼主的分享,看看,有程序吗

帖子中有下载链接。

使用特权

评论回复
8
598330983| | 2015-7-21 22:43 | 只看该作者
两个板子都可以用吗?

使用特权

评论回复
9
734774645| | 2015-7-21 23:13 | 只看该作者
DOS命令不错啊,不知道是什么软件,如何实现的。

使用特权

评论回复
10
yiyigirl2014| | 2015-7-21 23:29 | 只看该作者
1秒钟执行Device功能,1秒钟执行Host功能,如此循环去检测USB接口。红的和蓝的一样吗

使用特权

评论回复
11
Harry-Nu|  楼主 | 2015-7-22 11:34 | 只看该作者
734774645 发表于 2015-7-21 23:13
DOS命令不错啊,不知道是什么软件,如何实现的。

:L 那个不是DOS命令,只是串口打印出来的一些信息罢了。

使用特权

评论回复
12
Harry-Nu|  楼主 | 2015-7-22 11:35 | 只看该作者
yiyigirl2014 发表于 2015-7-21 23:29
1秒钟执行Device功能,1秒钟执行Host功能,如此循环去检测USB接口。红的和蓝的一样吗 ...

将程序烧录到任一一个板子上,都是可以看到相同的效果的。

使用特权

评论回复
13
Harry-Nu|  楼主 | 2015-7-22 11:36 | 只看该作者
598330983 发表于 2015-7-21 22:43
两个板子都可以用吗?

是的,两个板子都可以烧录同一个bin文件,实现相同的功能。

使用特权

评论回复
14
643757107| | 2015-7-22 18:55 | 只看该作者
这个东西真不错,下载看看咋回事

使用特权

评论回复
15
734774645| | 2015-7-24 08:47 | 只看该作者
昨天按照楼主的想法做 了一遍,挺好玩的。

使用特权

评论回复
16
Mancherstun| | 2015-7-30 16:55 | 只看该作者
挺漂亮的啊

使用特权

评论回复
17
yiyigirl2014| | 2015-7-31 20:04 | 只看该作者
知道是什么软件,如何实现的。

使用特权

评论回复
18
cj泓| | 2016-8-16 10:55 | 只看该作者
楼主,您有M452使用USB扫码枪(走的好像是键盘的HID协议)的经验吗?

使用特权

评论回复
19
huangcunxiake| | 2016-8-16 15:57 | 只看该作者
做成USB烧录的功能也是很好用等

使用特权

评论回复
20
gejigeji521| | 2016-8-18 22:47 | 只看该作者
蓝色板子可以更好地再利用上面的编程器。

使用特权

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

本版积分规则

8

主题

56

帖子

2

粉丝