如何做到两个设备在RS485总线上,无同步信号,LED闪烁同步?

2020-01-25 15:27发布

如果设备1和设备2收到广播信号开始后,

在定时器控制下,
LED灯同时亮1秒,再同时灭1秒。

过7,8分钟后,发现两台设备灯亮灭时间
完全失步,比如原来是同步亮灭的,后来出现,设备1号的灯跟设备2号的灯,变成一亮一灭了。

要怎么做到同步?

个人认为是由于单片机时钟晶振误差累积造成的。

第1种方式,可以把1号机做成主机,2号机做成从机。
主机发送同步信号给从机,这样2号机会跟1号机完全同步。

第2种方式,可以由主机定时发送广播同步信号给设备1和设备2.

但现在问题是,这两种方式都不能用。
设备1号和设备2号,只能接收总线上的数据。而且没有同步信号。
那要如何做到同步?请教
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
32条回答
adongliu
1楼-- · 2020-01-29 02:28
每秒或每分钟广播一次作为心跳报文。
fiddly
2楼-- · 2020-01-29 06:01
1,串口接收中断的优先级放高,保证最小命令相应时间差,不过,目前看这个不是主要问题。
2,看起来不是很繁杂的系统,重复广播吧,每秒一次,10秒一次,自己看了。
wenking99
3楼-- · 2020-01-29 08:19
在只能用做从机,要做到任何时候同步,在没有同步信号下,只有引入交流同步信号才可以了。
wangyy@dianzi
4楼-- · 2020-01-29 14:13
 精彩回答 2  元偷偷看……
wenking99
5楼-- · 2020-01-29 14:49
现在问题是,主机不会给你一个同步信号。
主机就是上位机软件,有可能过几个小时,主机没有人去管它。

主机会不停的发送相同的一串数据,也就是说没有同步信号给你情况下,如何做到同步?

adongliu
6楼-- · 2020-01-29 18:10
主机不停的发送相同的一串数据?如果间隔是一定的,可以作为同步帧的!

一周热门 更多>