打印

求助单片机如何与PC机实现串口高速通讯?

[复制链接]
3674|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
acone|  楼主 | 2013-3-15 08:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机是STC12c5a60s2,晶振11.0592MHz,USB转串口。日前分别作了一个单片机和PC机的串口通讯程序,设置的是8比特无校验,在115200波特率以下能够长时间连续通讯无差错,但是设置到128000以上时就不能正常通讯了,如果发送英文字母,接收的都是乱码。请问一下是什么原因?
我需要400K以上的通讯速度,请问应该怎么做?
说明一下:单片机是1个时钟的,128000、256000波特率时设置误差都为0,我计算了一下,单片机的串口速率最高可设置成691200.

相关帖子

沙发
airwill| | 2013-3-15 09:04 | 只看该作者
请验证波特率.
有些不标准的波特率, 未必能够使用. 因为设备上未必能够设置到准确的所要求的波特率 (虽然你的软件是设置了这个波特率).

使用特权

评论回复
板凳
南宫云明| | 2013-3-15 09:17 | 只看该作者
你的PC还能用128000波特率?我的电脑都用不了。。。

使用特权

评论回复
地板
acone|  楼主 | 2013-3-15 09:28 | 只看该作者
回 南宫云明:单片机的晶振如果换成24M的,可以用128000连续长时间通讯无差错。

使用特权

评论回复
5
acone|  楼主 | 2013-3-15 09:30 | 只看该作者
回 airwill:电脑上难道用USB转串口的也不行?USB可是2.0的,速度很高呀。

使用特权

评论回复
6
refee| | 2013-3-15 09:44 | 只看该作者
问题是你的PC串口支持128K或256K的波特率么?看了一下俺的PC是不支持的……

使用特权

评论回复
7
acone|  楼主 | 2013-3-15 11:04 | 只看该作者
问题有望得到解决,感谢以上各位同志!
我查了一下USB转串口芯片PL2303的datasheet,原来此芯片不支持128K和256K的速率,我设置成了230400已正常通讯,无奈在11M的晶振下这已是最高的了。抽空我买个22M的晶振换上去试一试460800的看行不行,如果可以的话就达到我的要求了。

使用特权

评论回复
8
南宫云明| | 2013-3-15 11:15 | 只看该作者
一般115200就够了。。。又不是搞视频处理,图像处理什么的。。。那么快干嘛。。

使用特权

评论回复
9
bd7qwmcu| | 2013-3-16 09:15 | 只看该作者
速率是必须的,但字节间的时间也要处理好,即快又不能识别错

使用特权

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

本版积分规则

13

主题

45

帖子

1

粉丝