本帖最后由 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
程序运行时,串口打印信息详见下图。
本程序可以使用的开发板如下图所示:
|