有没有高手明白这个问题:USB仿真串口时的主机CPU占用率

[复制链接]
3525|10
 楼主| mxh0506 发表于 2007-3-19 16:42 | 显示全部楼层 |阅读模式
刚做了一个USB仿真RS-232的程序,连上PC机端的程序后发现,PC的CPU占用率非常高.而同一个PC机程序在使用物理串口时CPU占用率是很低的,这是为什么呢?
平常人 发表于 2007-3-19 20:54 | 显示全部楼层

肯定是你的驱动有问题,哪来的驱动?

 楼主| mxh0506 发表于 2007-3-20 12:35 | 显示全部楼层

驱动是微软的

据我所知,所有USB转串口线都是这个驱动
平常人 发表于 2007-3-20 21:16 | 显示全部楼层

如果是这样的话,估计是你的设备在乱发数据

PC机的CPU忙于处理你的数据了。
 楼主| mxh0506 发表于 2007-3-21 12:30 | 显示全部楼层

不是的,用USB monitor看不到不相干的数据

而且用WinArm里带的那个串口监视程序测试CPU占用率一点都不高

我想可能和PC机程序里操作串口的方式有关
平常人 发表于 2007-3-22 16:33 | 显示全部楼层

如果你的设备发一个错误的数据包,在USB monitor里当然看不到

 楼主| mxh0506 发表于 2007-3-23 12:36 | 显示全部楼层

不会吧?

我认为USB monitor监视的是各个end-point上的数据流,它怎么会知道是否是错的呢?
stycx 发表于 2007-3-23 20:04 | 显示全部楼层

USB转串口线的驱动很重要,装错的话也可以用,但很不稳定

平常人 发表于 2007-3-23 21:13 | 显示全部楼层

Endpoint处于LLC层,下面还有MAC层和物理层

而且USB monitor只能监视正确的数据流,错误的根本到不了这一层。
simon21ic 发表于 2007-3-27 02:30 | 显示全部楼层

要用USB逻辑分析仪来看

USB Monitor不是万能的
 楼主| mxh0506 发表于 2007-3-27 12:49 | 显示全部楼层

但是我只是在用人家做好的USB控制器啊

数据提交到end point之后由硬件交给SIE和USB transceiver,底层对我来说是不可控的,怎么会出错呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

85

主题

1601

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部