微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 两个C51单片机串口通信,是否可以设置非标准波特率

两个C51单片机串口通信,是否可以设置非标准波特率

时间:10-02 整理:3721RD 点击:
一个设计需要多片C51之间通讯,其中一片为主芯片,一切通讯都由它发起,其余都是从芯片,接收到主芯片发来的通讯要求后,核对地址一致则响应,否则忽略。
为了保证处理速度,主时钟用的是32M,因此无法给出标准波特率。现在的问题是,就算我要主芯片发一个字符串给从芯片,要求从芯片做出指定操作,从芯片都不能正确进行。代码我粗看没有大的问题,因此很疑惑:是否波特率必须要按标准来做才能保证串口的正常通讯?


可以自己定义

也就是说不管计算出来的波特率如何的“非主流”,只要通讯的两个芯片使用的都是一样的参数,通讯就可以正常进行对么?
那么为什么我说的那种情况会出现呢?计算出来的波特率也就是83.333K,不是什么非常高的频率,应该不需要考虑布线干扰吧?

我觉得是这个意思

32M是否以属于超频了?如果是出现异常就不奇怪了

不是
片子是STC12LE5A60S2,官方说明可以到35M的

完全可以用特殊波特率

表示没在51上用过32M的晶振,同时表示你的思路是没有问题的。

波特率非标准没问题
建议你先设置低一点的波特率试下。而且先不要用主从方式试下

高频 频率范围3到30MHZ工作频率为13.56MHZ正负7KHZ;
特高频 300MH到Z3GHZ!

只有和电脑通信才要标准的波特率。
多机通信波特率要一致,建议小编用示波器或者逻辑分析仪看看你主发的波形是否正常。
我一般用标准的波特率,这样可以用电脑去监控下面所发的数据。

先用标准波特率试试嘛,设小点300bps,误差应该很小了,测试一下程序有么有问题,然后再查查硬件,没什么难的。

最好用标准波特率,方便用通用工具进行检测.
STC的MCU最好不要用的频率太高,降1/3或降一半用吧.

學習

学这么久了,还没有用过串口通信做东西呢,学习学习.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top