简单串口转usb的问题

我的串口想与pc机以80kbps的速率通讯,波特率115200, 直接用pc上的串口时,正确工作几秒后就会出错,估计速率太快。

我想用转换芯片将串口转换为usb口, 我的串口采用最简单的三线方式,只有TX,RX,GND。

请问最简单的解决方案是什么?采用ch341是不是最方便的?

谢谢各位不吝赐教!

用CH341就可以了.


哦,谢谢啦 :)


单片机串口以波特率115200bps与pc上的串口通讯 不会出错,也不是速率太快的原因。 如果找不到问题所在,换成串口转usb也会同样.


是要确信问题所在. 但CH341能够支持50bps到2Mbps内的标准的和一些非标准的波特率,你可以试试.详细说明可以下载ch341ser.zip内\INSTALL\readme.txt文档.


xujinchen兄说的对啊:“如果找不到问题所在,换成串口转usb也会同样.”

现在也没找到问题所在,只是看到了一个现象,我的波特率为115200,但数据速率为80kbps, 我用串口调试助手接收时会丢失数据,但用labview就不会丢失数据了,到现在还不知道到底是为什么, 不知道是不是串口调试助手内的设置的缓存太小了啊


串口调试助手应该没什么问题,你看你对串口调试输出的对不对


波特率误差大于5%就会不准确了好象


2.5%


首先,对于115200bps串行数据通讯,我在单片机和PC间作过产品,通讯没有问题。 在调试时最好使用windows的超级终端,接收数据时令其保存数据到文件以便核对, 因为显示屏上的显示数据在高速率、大数量的情况下有时会丢数据。

至于其他的“串口助手”等软件,用于一般的小数据量调试是可以的,高速大量传输时 性能比windows的超级终端差,速度明显变慢并丢失数据。


xujunchen兄说的“显示屏上的显示数据在高速率、大数量的情况下有时会丢数据”,我觉得这便是问题所在, 因为我用labview软件绘制波形,而不是像“串口调试助手”那样全部显示成文本,数据就不会丢失。 另外还有一个现象也能说明是显示数据引起的问题,那就是“串口调试助手”显示出错时如果暂停显示(但并不关闭串口,只是不显示出来)一会儿,再继续显示,刚开始数据不丢失,但几秒过后又会丢失。。。。


估计是因为显示太耗cpu,故在显示时会造成接收缓冲区满,而cpu来不及读取,最终造成数据丢失。 但这只是我猜测而已,不知道各位对上述现象还有什么高见?


我同意9楼的,我们早先就遇到过,我是边收边点清除显示才能测试大数据块的 顺便说一下,根据WINDOWS 2000/XP实测结果,标准串口比USB串口更耗CPU时间,因为USB是块传输,情况稍好些,而普通串口以字节传输为主,FIFO输出是用到,输入好象未用到,每收一个字节就产生一个CPU硬件中断,115200bps时1字节是100us左右,CPU每100us中断一次,要保存状态恢复状态,CPU当然忙了


嗯,楼上的讲的不错,估计就是这个机制引起的,我用labview是一次读256个字节,所以没出错。

谢谢各位大侠的指点,嘿嘿 :)


只有登录才能回复,可以选择微信账号登录