打印

BUS Hound与虚拟串口的区别?

[复制链接]
3969|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
putron09|  楼主 | 2010-8-21 16:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在调试虚拟串口的例子,用串口调试工具从PC发送64个字节数据时 STM收到了128个数据   但是用BUS Hound发送同样的64个数据  STM收到的是64字节,正常。     用串口调试工具发送一个文件,大小为2048     STM收到2048+64个数据    用BUS Hound发送  ,STM收到2048,正常。
哪位说说为什么。。。香主和vigia都说了虚拟串口发送64字节(最大包)时,会随即发送一个0字节的结束包 ,但是还是不明白!
比如你发送2048字节时,是分32个   64字节的数据包,为什么中间发送64字节不出问题,到了最后发送的时候还是64字节的时候,会多一个64字节
沙发
McuPlayer| | 2010-8-21 17:06 | 只看该作者
我一直用Microsoft的CDC驱动,产品出货也很多了,好像没你这样诡异

使用特权

评论回复
板凳
lxyppc| | 2010-8-21 18:00 | 只看该作者
USB的Bulk通讯协议就是这样规定的,和CDC驱动的实现有关

使用特权

评论回复
地板
vigia| | 2010-8-21 19:12 | 只看该作者
多64字節肯定不正常,你用的什麽串口調試工具?

使用特权

评论回复
5
putron09|  楼主 | 2010-8-23 09:09 | 只看该作者
我用的是 SSCOM3.2(作者:聂小猛(丁丁))

使用特权

评论回复
6
歪 歪| | 2010-8-23 09:16 | 只看该作者
用这个工具抓包看看你到底发送了什么,也许是你多发了却没注意到。
分别测试BUS Hound和SSCOM3.2的发送内容。

注意:一定按照下面详细使用方法里说明的顺序操作。

see link below:

下载地址:
http://download.cnet.com/ComTrac ... 6892.html?tag=mncol

感觉好别忘了给个review(评论),谢谢!

FAQ
How to use it?
1.Run ComTrace
2.Select serial port name(e.g. COM1)
3.Run serial port application program that you want to debug(e.g. Windows HyperTerminal)
4.debug......(e.g. press any key in Windows HyperTerminal, then watch the data that is captured.)
5.Close application program(e.g. Windows HyperTerminal)
6.Close ComTrace

Notice: You must operate by the order, only support Win2000 and WinXp(32 bit) system!

使用特权

评论回复
7
putron09|  楼主 | 2010-8-23 10:02 | 只看该作者
谢谢楼上的,用这个观察还是一样的,用SSCOM3.2发送64字节,接收的数据是128.用BUS Hound发送时接收的数据是64,那这个是串口调试工具的问题还是驱动的问题?

使用特权

评论回复
8
McuPlayer| | 2010-8-23 14:31 | 只看该作者
CDC的驱动经历过千锤百炼测试的

你用的串口调试Utility可能有问题

使用特权

评论回复
9
PXJ_520| | 2010-9-8 14:24 | 只看该作者
哈哈,楼主的问题我也遇到过!
主要是下面驱动将最后一个 数据为0的包当做是数据包了。你多收的64个数据应该和你发送的数据最后64个字节一致吧?
听说最新的USB固件解决了这个问题,不过我没试过,楼主可以试试,然后给我说一下效果!~

使用特权

评论回复
10
putron09|  楼主 | 2010-11-4 16:52 | 只看该作者
一样的会有这个问题

使用特权

评论回复
11
allenroy97| | 2013-6-21 17:35 | 只看该作者
你别发64的整数倍试试看就知道了

使用特权

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

本版积分规则

12

主题

172

帖子

2

粉丝