打印

发现usb转串口的一个致命bug

[复制链接]
2340|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
aweyfan|  楼主 | 2008-12-11 17:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
做了一个stk500 isp下载器 ,用pdiusbd12 做的cdc类,比pl2303之类要稳定的多
下载avr芯片速度很快,几秒搞定
但下载s5x时,发现写入时间够喝一壶了,读速度正常

监视avrstudio 通讯协议,发现编程s5X时是字节写入,而读倒是用页方式,avr 读写全是用页方式 看来s5x是后娘养的

即使用字节写,s5x也不应该这么慢,谁是幕后黑手呢

google发现了这个
帧:时间概念,在USB中,一帧就是1MS,它是一个独立的单元,包含了一系列总线动作,USB将1帧分为好几份,每一份中是一个USB的传输动作

也就是说在这些采用应答机制串口软件,每一次通讯应答不管传多少数据至少要2ms,avrstudio写1字节就要2ms,8k的s52写完至少要10几秒

对那些用usb转串口,抱怨速度慢的像蜗牛的,没有什么好的解决办法,只能指望应用程序的作者,修改通讯协议,每次多传点数据了

ps:usb转串口 实际可以做到几Mbps 

相关帖子

沙发
xwj| | 2008-12-11 18:03 | 只看该作者

告诉你一个概念:微帧

USB2.0中规定一个微帧可是125us哦
每个微帧最多可以传输13个512字节的高速数据包

使用特权

评论回复
板凳
simon21ic| | 2008-12-11 20:55 | 只看该作者

这个是bug?

完全是STK500的协议问题

使用特权

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

本版积分规则

36

主题

368

帖子

0

粉丝