当前位置:首页 > 单片机 > 单片机
[导读]引 言 由于指令的速度不断加快,单片机在各个方面的性能大为提高,比如多个单片机之间的时钟同步。Silicon Labs公司的C8051F系列单片机的执行速度最高可以达到100MIPS,这使得更高精度的时钟同步成为可能。时


引 言
    由于指令的速度不断加快,单片机在各个方面的性能大为提高,比如多个单片机之间的时钟同步。Silicon Labs公司的C8051F系列单片机的执行速度最高可以达到100MIPS,这使得更高精度的时钟同步成为可能。时钟同步是一个在多单片机相互配合时经常遇到的问题,主要有两种同步方式——绝对同步和相对同步。绝对同步是指各个控制器和一个标准的时间进行同步,比如北京时间、华盛顿时间等等;而相对时钟同步是指各个单片机和一个相对稳定的时钟进行同步,与外界的时间没有联系。本文主要针对RS422总线组成的网络的高精度时钟同步问题,提出了一种相对时钟同步解决方案。


1 整体框架结构
    RS422网络中,多个单片机的连接如图1所示。这是一个典型的“一主多从”式结构:主单片机通过向从单片机发送命令,实现管理功能;从单片机主要执行具体的功能,比如数据采集、D/A转换输出等。为了使多个单片机能够同步工作,需要一种同步方式,所以从单片机不但要实现各自的具体功能,而且还要能够进行多个单片机的时钟同步。本方案设计了从单片机的几种工作状态。R和T分别表示R+、R-和T+、T-。

2 从单片机的状态机
    本文重点介绍系统时钟同步功能的实现,但是在实际应用过程中,该系统必定要实现其他的功能,比如数据采集、模拟量输出等。主单片机的作用是控制从单片机工作,所以要使从单片机具有不同的工作状态。本文设计了3种工作状态:准备态、时钟同步态、工作态。3种工作状态之间的相互转换过程如图2所示。图中,①代表主单片机向从单片机发送“工作”命令;②代表主单片机向从单片机发送“时钟同步”命令;③代表主单片机向从单片机发送“工作态向时钟同步态转换”命令;④代表主单片机向从单片机发送“时钟同步态向工作态转换”命令。

    准备态是从单片机上电后的工作状态,当主单片机向某一从单片机发送“是否准备好”命令后,若从单片机回复“准备好”,则说明从设备已经处于准备好的状态,可以向时钟同步态和工作态进行转换。如果从单片机处于工作态,主单片机发送“工作态向时钟同步态转换”命令,则从时钟进入时钟同步态;如果从单片机处于时钟同步态,主单片机发送“时钟同步态向工作态转换”命令,则从单片机由时钟同步态转换到工作态。


3 时钟同步设计的基本原理
    本方案采用多个C8051F120单片机组成RS422网络。C8051F120单片机具有高达100MIPS的执行速度,也就是1μs可以执行100条单周期指令,所以定时器定时1μs可以达到1%的精度。而RS4.22总线组成的网络是“一主多从”式结构,网络中每个设备都有自己的时钟,时钟采用定时器实现,1μs触发一次。主设备和从设备的时钟偏差产生有两个原因;一是某些随机因素产生的误差;二是由于晶振的运行速度不同引起的误差,此误差的产生主要受温度的影响,而温度又是由工作环境来决定的。本文采用相对时钟同步的方法来减小这种误差的影响。
    该方法分为2步:
    ①主设备每2 s进行一次时钟同步。主设备首先发送报文master_a(该报文本身不含发送时间),之后再发送一帧带有该报文发送时间信息的报文master_b。这样,从设备可以分析出主设备的同步报文的发送时间T1和接收时间T2(如无特殊标注,文中所涉及的时间变量都是以μs为单位的)。从设备再发送一个报文slave_c,并记下这个报文的发送时间T3,主设备接到该报文后记下接收时间T4,并把T4发给从设备,从设备就有了T1、T2、T3、T4的值。由于主设备和从设备都采用同一波特率进行串行通信,所以只要保证主设备的报文和从设备的报文发送的字节数相同,就可以看成主设备和从设备的发送时间和接收时间是相同的,即图3中的T1、T2、T3、T4四点构成的是等腰梯形。所以主设备和从设备之间的时间偏差:
   

    从设备的时间T_Slave减去从设备和主设备之间的偏差△,即校正后的时间。但此时校正后的结果只是改变从设备的时钟误差,并没有改变从时钟的时钟频率。随着时间的增长,这个误差就又会出现,因此想要减小这个误差必须采用进一步的方法。
    ②进行时钟频率的校正。C8051F120单片机的指令速度很快(可达100MIPS),这就为单片机应用内部定时器实现频率可调时钟创造了有利条件。本文多次测量从设备和主设备之间的时间误差来求取平均值,作为主从时钟在规定时间内的从设备和主设备之间的误差,通过这个误差来修正从设备的时钟频率。具体做法为:测量5次从设备和主设备之间的偏差△1~△5,采用平均值滤波法得到的结果△z作为2 s的时间偏差。
   
    其中,t代表1μs内时钟的偏差量,单位是0.01 μs。只须修改定时器的相应寄存器,就可以达到调整时钟频率的目的。


4 系统的硬件连接
    各个单片机采用RS422总线进行互联,形成一个“一主多从”的结构。RS422接口电路如图4所示。接口芯片采用Maxim公司的MAX489,其中DI、RO连接在C8051F120单片机的串口上,用端子J将各个RS422的各路信号引出。

5 时钟同步软件设计
    时钟同步部分的软件设计包括主、从单片机的工作过程,以及频率可调时钟部分和时钟校准部分的实现,但不包括状态转换功能的实现。
    编者注:主从机程序略。


结 语
    时钟同步问题是多单片机同步工作面临的一个重要问题。本文针对RS422网络的时钟同步工作问题,提出了一种相对时钟同步解决方案;并应用单片机片内定时器设计了一个频率可调时钟,在没有增加硬件成本的前提下,明显地减小了不同单片机之间的时钟偏差。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

摘要:研究了北斗授时功能在电力终端时钟同步上的应用,利用卫星高精度时钟系统研制了低成本、小体积、兼容各种终端的授时器,目的在于给电力终端提供高精度的同步时间,为需要高精度的时间应用提供基础。首先对北斗授时在电力终端时钟上...

关键字: 北斗授时 时钟同步 RS483

同步技术与其它数字通信系统一样,OFDM系统需要可靠的同步技术,包括定时同步、频率同步和相位同步,其中频率同步对系统的影响最大。移动无线信道存在时变性,在传输过程中会出现无线信号的频率偏移,这会使OFDM系统子载波间的正...

关键字: OFDM 频率同步 同步技术

峰值平均功率由于OFDM信号在时域上为N个正交子载波信号的叠加,当这N个信号恰好都以峰值出现并将相加时,OFDM信号也产生最大峰值,该峰值功率是平均功率的N倍。

关键字: 正交复用技术 同步技术 信道编码

摘 要 :海洋传感器网络已被广泛应用于海洋环境监测、海洋污染监控、海洋资源勘测、水下目标探测、跟踪和定位等领域,时钟同步是传感器网络的关键支撑技术。论文在介绍海洋传感网络系统及其时间同步技术研究基础上,设计了海洋传感网络...

关键字: 海洋传感器 网络时钟 物联网 智能终端 时钟同步 子节点架构

★前言★随着大数据、云计算和物联网时代的到来,通信系统从集中式系统向分布式系统发展,在集中式系统中,所有进程或模块都从系统唯一的全局时钟中获取时间,系统内任何两个事件都有着明确的先后关系。在分布式系统中,系统无法为彼此间...

关键字: 时钟同步 同步技术 大数据

★前言★随着大数据、云计算和物联网时代的到来,通信系统从集中式系统向分布式系统发展,在集中式系统中,所有进程或模块都从系统唯一的全局时钟中获取时间,系统内任何两个事件都有着明确的先后关系。在分布式系统中,系统无法为彼此间...

关键字: 时钟同步 同步技术 大数据

摘要:分析了一个基于C8051单片机的生产用环境参数自动监测系统软件的设计原理和实现过程,同时给出了系统的结构、工作原理以及上、中、下位机软件的详细设计方法。

关键字: 环境参数 自动检测 C8051 软件设计

在单片机开发中,UART、I2C、RS485等普遍在用,对它们的认识可能模棱两可,本文把它们整理了一下。温馨提示:本文较长,建议收藏起来慢慢看。UART通用异步收发器UART口指的是一种物理接口形式(硬件)。UART是异...

关键字: RS422 RS485 总线

    时钟同步是分组传送网(PTN)需要考虑的重要问题之一。可以采用同步以太网、IEEE 1588v2、网络时间协议(NTP)等多种技术实现时钟同步。同步以太网标准的同步状态

关键字: ptn 时钟同步

大家都知道G-Sync是好东西,不过由于需要授权费用以及专用芯片,导致硬件支持G-Sync技术的显示器售价都偏贵。反观对面的AMD,市面上已有超过千款的显示器支持Freesync,而且售价也非常

关键字: NVIDIA 显示器 显示屏 同步技术
关闭
关闭