单片机波特率不准,通讯不稳定,耗费12个小时得出的经验。

2020-01-25 15:32发布

给我姐家里搞智能家居(485总线的),用STC的单片机做的控制节点。刷了20个节点的程序,结果有一个节点的通讯非常不稳定。
因为是极个别节点的问题,用示波器测量了485波形和转换后的TTL波形,无果。
查找程序问题,依然无果。
最后想到,会不会是下载线的问题?按理说这应该与下载线没有关系,但是这个单片机是用RC振荡器的。振荡器的校准依赖于串口脉冲宽度。也许问题就出在USB转串上。
果断拿出古董MAX232,找台式机刷,通讯问题解决,非常稳定。
有类似问题的朋友,希望此贴能帮到你。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
20条回答
hefq
1楼-- · 2020-01-27 04:58
我用的10系列的,号称可以从4M漂到8M
zhuisuoji
2楼-- · 2020-01-27 05:25
hefq 发表于 2013-9-14 23:20
测脉宽会不会有堵塞,我是超时后进入校准,方法是直接在一个范围内改定时器初值 ,发一请求,正确收到一个应答 ...

看来hefq的方法还是值得一试的,是不是可以叫波特率自动校准?
WM_CH
3楼-- · 2020-01-27 07:40
 精彩回答 2  元偷偷看……
lzscan
4楼-- · 2020-01-27 12:51
学习了
maxwelllls
5楼-- · 2020-01-27 15:04
因为15l104的振荡器是“高精度RC振荡器” 温漂比较低 用来做通讯勉强也是可以的
xou822
6楼-- · 2020-01-27 20:43
原因是什么呢    USB转串口的问题?

可是程序下载以后就和usb转串口没有关系了哦

一周热门 更多>