usb的cdc通信和hid通信

2019-12-21 12:10发布

用usb把从can总线收到的数据传到PC,系统对速度要求不是很苛刻。下位机我把cdc虚拟串口和hid通信都调通了。现在问题是选用哪种通信方式?在调试cdc虚拟串口时,调试助手会因为系统复位而死机,所以用cdc通信,若调试助手(上位机俺不懂,要招人来编)自己编写是否能解决串口死机?用hid也要自己编写上位机,不过它能完全实现即插即用,只要上位机不关掉,对系统断电再上电上位机都能恢复通信。在全速系统,hid和cdc每包都是64字节,速率hid最快也能到64K,够我们系统用,老板觉得cdc是通信类,应该用cdc通信比较合适,但虚拟成串口用,串口号不一定每次都一样,所以他让我看看cdc类是否可以不虚拟成串口而与下位机通信的例子?当然上位机界面我们会自己编写。哪位高手帮忙分析一下?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
54条回答
NemoGu
1楼-- · 2019-12-23 03:04
chengying 发表于 2012-6-12 14:38
还有虚拟串口是不是抗干扰没hid强?

不知道你这个结论是如何得到的?
chengying
2楼-- · 2019-12-23 03:22
 精彩回答 2  元偷偷看……
NemoGu
3楼-- · 2019-12-23 06:40
调试助手会因为USB device断电而死掉 说明这个串口调试助手比较烂
上位机的出错处理不好 只是针对了232串口 没有考虑USB/USART这种类型的串口

最简单的方法就是在上位机软件中增加PnP功能
NemoGu
4楼-- · 2019-12-23 11:23
chengying 发表于 2012-6-12 15:24
CDC 下位机我还是倾向用st提供的虚拟串口改改好了。上位机对hid和cdc都不难? ...

利用LibUsb-win32 很容易编写上位机软件 根本不管USB device是CDC HID还是MSC
bbs2009
5楼-- · 2019-12-23 16:02
NemoGu 发表于 2012-6-12 15:27
调试助手会因为USB device断电而死掉 说明这个串口调试助手比较烂
上位机的出错处理不好 只是针对了232串口 ...

那就是cdc虚拟串口通信时,mcu复位导致串口死机问题完全可以靠上位机软件解决?
chengying
6楼-- · 2019-12-23 19:21
本帖最后由 chengying 于 2012-6-12 16:30 编辑
NemoGu 发表于 2012-6-12 15:23
不知道你这个结论是如何得到的?


我也是看论坛上一个帖子说的http://bbs.21ic.com/viewthread.php?tid=313696&highlight=hid,具体我也不是很清楚,应该同一系统usb抗干扰是一致的,不过鼠标比较少死机,虚拟串口死掉概率还是比鼠标大,从而得出hid比cdc抗干扰好?

一周热门 更多>