当前位置: 代码迷 >> 单片机 >> PC机与下位机单片机实现USB通信有关问题
  详细解决方案

PC机与下位机单片机实现USB通信有关问题

热度:94   发布时间:2016-04-28 14:56:28.0
PC机与下位机单片机实现USB通信问题
项目需要,需要通过usb接口,使得PC机与下位机Smart210开发板相连接,然后互相收发数据测试,只要实现收发如“123”文字内容即可。现在遇到几个问题
1、系统结构如何设置?应该usb host接口设备想要通信的话,需要有host及device,pc作为host,下位机在usb通信中应作为何种设备类型?
2、PC端有没有直接可用的USB收发测试软件?还是需要自己编程调用windows api 来实现数据读取?


------解决方案--------------------
1 单片机实现 USB 设备,常见的有 Mass Storage,HID,CCID 和 CDC。

* Mass Storage 可以实现 U 盘,CD-ROM 或者这种传输协议的 USB Key。 速度快。
* HID 也常用,鼠标、键盘或自定义的设备。速度慢。
* CCID 就是读卡器。速度较慢。
* CDC 子类繁多,最常见的是 USB 虚拟串口或 USB 转串口。这个主机端不需要实现 USB 访问,还用串口应用就行了。如果是 USB 虚拟串口,速度比真正串口要快。

2 有些网上可以下载到:
* Mass Storage 不太常见有可下载的测试界面。不过用 Bushound 软件的发送功能可以实现一部分通讯。
* HID 的测试界面可以下载,不过未必好用。
* CCID 由于标准严谨,随便下载一个读卡器应用端,一般都能用。
* CDC  的用串口精灵之类的软件即可。

当然,自己用 API 写是最好用了。不过,除 CDC 不用写以外,其他三种协议不同,API 接口也不同。你先确定做哪一种,再专门学习。
------解决方案--------------------
1 PC操作系统,是windows还是linux, 决定你的编程工作,有现成的测试usb软件
2PC肯定作为host,至于设备做成啥设备,看你需要,有磁盘的 有通讯的,模拟串口的。。。检测到 注册上了,pc端应该就能认出来。
------解决方案--------------------
引用:
Quote: 引用:

1 单片机实现 USB 设备,常见的有 Mass Storage,HID,CCID 和 CDC。

* Mass Storage 可以实现 U 盘,CD-ROM 或者这种传输协议的 USB Key。 速度快。
* HID 也常用,鼠标、键盘或自定义的设备。速度慢。
* CCID 就是读卡器。速度较慢。
* CDC 子类繁多,最常见的是 USB 虚拟串口或 USB 转串口。这个主机端不需要实现 USB 访问,还用串口应用就行了。如果是 USB 虚拟串口,速度比真正串口要快。

2 有些网上可以下载到:
* Mass Storage 不太常见有可下载的测试界面。不过用 Bushound 软件的发送功能可以实现一部分通讯。
* HID 的测试界面可以下载,不过未必好用。
* CCID 由于标准严谨,随便下载一个读卡器应用端,一般都能用。
* CDC  的用串口精灵之类的软件即可。

当然,自己用 API 写是最好用了。不过,除 CDC 不用写以外,其他三种协议不同,API 接口也不同。你先确定做哪一种,再专门学习。


如果作为Mass Storage,下位机向pc通信数据可以实现么?
如果说用CDC,感觉还是串口通信了,usb接口只是用来扩展串口的接口罢了。
有没有示例可以参考


之前有做过cdc类的,就是虚拟串口。据我发现除了虚拟串口外,还没有直接对USB发送数据的。
  相关解决方案