串行通信中的时间同步的制作方法

文档序号:7638406阅读:324来源:国知局
专利名称:串行通信中的时间同步的制作方法
技术领域
本发明涉及包括中央处理单元和串行通信电路的设备的时间同步,尤其是 微控制器的时间同步。 发明背景中央处理单元斷氐的价格、减小的尺寸以及增长的处理能力已经弓l起配备 有数据通信特征禾鹏收集的信息传送到各种不同应用程序的能力的设备数量的不断增长。例如,低层设备,如保护继电器或其他智能电子设备(Intelligent Electronic Device ED)旨辦将收集到的保护、观糧、控制或其他娜传超'J高 层设备(如远程控制系统)。当收集到数据时,与这样的 相关联的必要因素 是时间。设备还能够被编程为在指定的一个或多个时间执行某个任务或多个任 务。时间同步因此而变得更加重要,这是由于包含在设备中的实时时钟提供的 时间是不能与应用禾辦所要求的精度相互比较的,如一毫秒的精度。出于时间同步的目的,典型地,向设备^供用于同步的包含时间的信号。 在4OT微控制器的电子设备中(小计穀几),用于时间同步的信号通常由在FPGA (现场可编程门阵列)电路上编程的状态机接收或者M31轮询(poll)鹏制器 上的单个I/O (输A/lr出)管脚(pin)来接收。仅仅出于时间同步的目的而在 设备中加上FPGA^^增加制造成本。另一方面,轮询(指的是定期地读取1/0 管脚)会增加微控制器的处理单元的负荷,降低了性能。本发明的目的在于为了在不因轮询而加重,器的负荷情况下获得足够 精度的时间同步,而开发出了一种方法和实现该方法的设备。本发明的目的将 通过由独立权禾腰求表征的方法、串4预信电路、连接驢和设备来实现。从 属权利要求描述本发明 的实施例。本发明基于旨在用于设备间通信的串行通信电路,例如以接收时间信号为 目的的UART (UniversalAsynchronous Receiver&Transmitter)通用异步收发器。本发明的优点是与轮询相比,^bS器的负劇每降低到十分之一或甚至更低,并且在大部分瞎况中,设备内的现有电路能够被用于时间同步。这消除了增加用于时间同步的单独电路的需要,并且可以实!W包括在设备中的未fOT的串fi^信电路的禾,。接下来,将参考附图结合 实施例; 本发明]*[亍更详细±也描述,其中

图1图示了系统的简化框亂图2图示了根据本发明的操〒乍的流程图;图3A和3B图示了雌实施例的示意图;图4是高层软件、繊通信和命令的图示;图5图示了开始反相的(inverted)时间帧的字符;图6、 7和8以流程图的方^E详细ite出本发明实施例的操作;以及图9是另一个实施例的高层软件、数据通信和命令的图示。一些实施例的详细描述本发明可应用于须经时间同步并且除了中央,单元还包括或肯,配备串 行通信电路的任何设备。串行通信电路能够是单独的电路,或者它能够被集成 在诸如微控制器之类的部件内。接下来将使用不限定本发明范围的示例性系统和设备来描述本发明。设备、 编程技术、中央处理单元、串行通信电路和发送用于时间同步的时间的^S在 不断地发展着。这样的发展可能需要对本发明进行另外的改变。因此,所有的 语句和自应当被宽泛地解释,并且旨自本发明进行描述而不是限制其范围。图1图示了系统100的简化框图,所述系统100包括须经受时间同步的设 备l,用于接收时间同步所要求的时间的设备2和连接它们的总线3。系统的详 细结构对于本发明并不是必需的,因此在此不需要对其进行更详细的描述;对 本领 术人员来说很明显的是该系统还可以包括其他设备、功能和结构。图1的例子中,须经时间同步的设备1是包括具有微控制器101和总线驱 动器103的集成电路的正D。微控制器101至少包括串4fM信电路11 (UART)、 存储器12 (MEM)、中央M单元13 (CPU)、计时器14 (TIMER)和须经时 间同步的实时时钟15 (RTC)。实时时钟能够被实现为存储器中的滚动(rolling) 计数器。在根据本发明的设备中, <顿串行通信电路11以如下更详细地描述的 方式来接收用于时间同步的时间信号。串行通信电路11的衝 求在于它必须可旨識程或以其他方式将数据传输速率(至少接收数据的传输il率)设置为 适于接收到的具有足够精度的时间信号的速率,如下更详细的描述。在这个例子中,假设串《预信电路包括总线逻辑和izo (输A/lr出)系统,fflil它们,该设备与设备2通信(例如,M总线驱动器103)。所有需要的繊都被存储在 设备1的存储器中。存储器12可包擬呈序存储器、工作存储器和/或只读存储器。 存储器或其任何部分會,是外部存储器或被集成到微控制器中。该设备的详细 结构对于本发明并不是必需的,因此不需要在ltl^t其进行更详细的描述。对本 领域技术人员来说很明显的是该设备还可以包括其他功能和结构。该设备能够 是包括串行通信电路和中央处理单元的任何设备。本发明可以被应用到的设备 的例子包括包含微控制器的设备,例如保护继电器和类似的正D、 PDA (个人数字助理)、掌上计^m、常规计穀几等。图1的例子中,用于接收时间同步所需的时间的设备2 (GPSRx,,定 位系统接收器)接收包括来自GPS卫星的时间的GPS信号,将该信号解调为包 括该时间的时间信号并将解调的时间信号传送到fflil总线3与之相连的设备1。 4腿地,该接收设备2将闰秒加至抱含在与解调相关的GPS信号中的时间。这 样修改的时间会与协同世界时间(Coordinated Universal Time UTC) —致,这是 由于GPS时间与UTC时间的不同在于UTC时间被加上了闰秒。总线3例如育,是RS232或RS485电缆或光纤,并且与现有技术不同,它 fflil总线驱动器^纤接收器连接到串行通信电路11。总线3还會,是无线总 线,例如〗顿红外线或蓝牙的无线总线。图2图示出根据本发明的,须经时间同步的设备内的操作原理。图2中, 假设串行通信电路的设置 地被更新,以使帧长度与时间信号中一个字符的 长度相对应,并且如果采样率能够被配置,则它就被设置为足以提供同步时间 所需精度的速率。当在步骤201,须经时间同步的设备检测到时间帧的开始时, 它就在步骤202从计时器获取时间戳(time stamp) tl,并且在步骤203存储时 间戳tl。之后,在步骤204接收时间帧。当在步骤205检测到时间帧的结束时, 在步骤206转换在该时间帧中接收到的时间,在步骤207从计时器获得时间戳 t2,在步骤208使用时间戳tl和t2执行对所接收的时间的时间校正。然后,在 步骤209,使用接收到的经时间校正的时间对设备的时钟进行同步。{,地,*接收到的时间帧的开始将触发,功能。^t^也,时间帧指的是时间信号的一部分,时间信号包括时间M和帧参考标记。图3A和3B图示了根据基預鹏微控制器中并适于接收IRIG-B时间信 号的通用异步收发器(UART)的实施例的、适于RS485接口的连接装置的示 意图。串^ffi信电路的适配和用于时间同步的IRIG-B串行时间代码(是由美国 耙场仪器组(Inter-Range Instrumentation Group)开发的串行时间代码的主要类 型中的一种)接下来将被更详细地描述。连接装置包括两个M线DA和DB,串行连接到工作电压VCC和地的三 个电阻器R1、 R2、 R3,总线驱动器U1,反相器U3和微控制器U2。差动RS485娜总线是双向半虹总线,需要两根线。在根据本发明的解 决方案中,它被用来接收时间信号。 总线包括两个扭绞的导线;A和B导 线连接到相应输入DA和DB。电阻器皮用于将输入设置为特定状态,,为逻 辑1状态。例如,电阻器Rl和R3的电阻为680a电阻器R2的电阻为120Q, 工作电压典型为5V。接收到的时间信号被连接到总线驱动器U1, Ul把时间信 号转换为TTL (晶体管-晶体l^辑)电平。鹏制器通常{顿5V或3.3V的 TTL电平。总线驱动器Ul被连接,以使发送被禁止,而接收总是驗的,从 而确保时间信号总能被接收到。总线驱动器U1向反相器U3提供TTL电平的 时间信号。反相器U3被连接到实际串行通信电路上的数据输入管脚,例如 PD0/RXD管脚,该数据输入管脚是在例如AT90S8515微控制器上的管脚10。 反相器U3把时间信号反相,以使包括时间i^的信号的上升沿作为下降沿i4A 串4 ffl信电路,该串行通信电路把下降涵军释为开始位。二极管和/或齐纳(zener) 二极管肯,用于代替总线驱动器U1来获得TTL 电平(使负电压和过高的电压截止)。图3B中的示意图与图3A的不同之处在于前往DA和DB连接器的导线交 X3^接,消除了对单独反相器的需要。该交X^接把IFIG-B时间信号反相。在 所有其他方面中,连接装置与图3A相似。根据图3A的示意图包括适合与RS232接口一起4顿的反相器(如果分压 器电阻器装置被除去并且总线驱动被RS232缓剤戈替的话)。换言之,把进入的 Rx信号线(和信号地)直接连接到总线驱动对RS232接口来说是足够的。在本发明的其他一些实施例中,接收的时间信号可以被调制,在这样的情 况下,须经同步的设备包括用于接收时间信号的解调器。图4是根据本发明的实施例的用于微控制器的高层软件、数据通信和命令图。图4中的圆圈^^用于时间同步的CPU禾MW暇,相互接近的平4豫标 数据存储器,矩形表示单元。虚线表示^^令,而实线表示数据通信。用于时间 同步的程,'i程、UART中断 器131和同步任务132优^t也在没有任何单 独的程序设备的情况下被编写到印刷电路板上的微控制器中。编程语言能够使 用例如Visual Basic、 C、 Cw或Java的语法。但是,实现禾Mi^例程的^g和语 言以及编写包括程序例程的微控制器或CPU的^g对考虑本发明是无关紧要 的。例如,嵌入式系 常{顿实时操作系统,该系统能够实现不同任务(如 同步任务)基本上同时的执行。在图4例子中,时间信号4-1在串1fffi信电路(UART) 11中接收到。时 间信号前沿的极性必须与串行通信电路检测至啲前沿的极性相同。因此,如果 有必要,在串行通信电路接收到时间信号之前,使该时间信号反相。每当串行 通信电路接收新的字符时,它都4OT命令4-2来启动中断处理器131,中断处理 器131从串4fil信电路读取44接收到的时间字符,把串^ffi信电路的状态读入 存储器。中断处理器育辦在特定字符的开始( 地,按时(on-time)字符的 开始)从计时器14获取4-3时间戳,舰时间t^储4-5至瞎储器122中。一 旦已经接收到同步所需的字符,中断处理器131鍋維收的时间消息存储4-6 到存储器121,并启动(4-7)同步任务132。启动旨,通过使用由操作系统提供的命令信号或通舰同步任务所期望i體的存储器中的位进行设置来实现。同 步任务132执行实际的时间同步。同步任务获取4-8时间戳122。此外,同步任 务获取4-9时间消息121,并从计时器14取得4-10新的时间戳。同步任务會, 使用该时间戳以及由中断处理器取得的时间戳来补偿在发送时间字符上所花费 的时间。。同步任务还同步4-ll实时时钟。在下面,本发明的实施例在图5、 6、 7和8的帮助下,j顿接收IRIG-B时 间信号的例子而被更详细地描述,该IRIG-B时间信号的接收^iM f顿图3A 或3B的连接體,包括8位异步串4fffi信电路(例如AT90S8515)的'鹏制器 来实现的,所述电鹏括关于图4示出的装置。另外,为了清楚起见,假设图 中接收到的时间信号是,错的。IRIG-B帧的持续时间是一秒,并且它旨的多以相位调制的形式在DC电平或 在1000 Hz载波上调制发送。该帧以参考标记开始,参考标记包括两个连续的位置标记,前者称为帧参考标记,后者是参考位,参考*斜己后紧跟着实际时间,该时间是从BCD (二-"Ha制码)符号表示法中的年的开始来计算的。该帧包括 100个脉冲,其前沿以10ms的间隔开始。因此帧的脉冲间隔是10ms。由于每 个脉冲对应于一个字符一即, 一个IRIG-B位,所以时间信号的繊传输速率是 100比特每秒。隨标记的f教卖时间为8ms, IliS制O ("0")的^^卖时间是2ms 而二进制l ("1")的J转卖时间为5 ms。每个元素或IRIG-B位以上升沿幵始, 后跟着2、 5或8毫秒间隔的下降沿。实际时间是由最初的50个元素(包括开 始帧的参考标记)一即,0.5秒内传送的。按时点(指的是在帧中所传送的时间 点)是开始所述帧的第二位置标记的前沿。时间是使用以下字段秒、十秒、 小时、十小时、天、十天和百彌旨定的。所有的字段被二进制0 ("0")分隔 开。ltW卜,每一第十个元素是位置标记(以100ms的间隔重复)。因为IRIG-B 时间帧的结构对本领域技术人员来说是公知的,所以在此不再详细描述。UART串4fffi信电路fOT异步通信,其中字符以开始位开始并且以停止位 结束。UART iffil接收信号的下降沿来检测开始位。在8位串^fffi信电路中, 其间有8个翻位。因此,根据该例子串行通信电路的帧长为10位。帧的擀卖 时间必须与时间信号中的脉冲间隔基本上相同-即,10ms,从而接收解调的时间 信号的串碎TM信电路的i^传输速率必须被设置为每秒1000比特。换言之,串 行通信电路被配置为接收时间信号以便串行通信电路的数据传输速率im地被 设置为时间信号的数据传输速率乘以串行通信电路的^帧中的位的数目。这 使得一个IRIG-B位育,作为一个8位字符被读入UART。 UART将在下个下降 沿对其本身与位序列进行再同步,即使繊传输速率没有确切地是1000也是如 此。因此繊传输速率设置不需要完全精确;例如,在有2%的體盼瞎况下将 成功接收(即,速率为每秒980到1020比特)。图5图示了开始由串行通信电,收至啲反相的IRIG-B时间信号的两个位 置标记(每个都具有10 ms的持续时间);和4娘列5-2,所述{娘列5-2是由串 fi^信电路fflil^它们进行采样而获得的;在辦列中,S表示开始位,T表示 停止位,并且0到7的数字表示相应的数据位。因为信号电平对于甚至最长 IRIG-B脉冲的最后2 ms将会题辑0,所以位7和T在所有反相的IRIG-B字 符中具有值l。这允许UART检测接收到的,列中的错误。每个IRIG-B位都 能够作为单独的字符来接收;在图中所示的例子中,最低有效位(LSB)最先到达。图5还图示出当根据本发明的串fi^信电路被安排在第一停止位的中点(本例子中为按时点之前的0.5 ms)启动中断处理器时,中断处理^l皮启动的 时间与按时点之间的关系。图6图示出Jd述实施例中UART串fi通信电路的操作的更多细节。串,fffi 信电路通过通常以数据传输速率的16倍速率对输入线进行采样来接收时间信 号。因此本例子中的采样率为16kHz。在步骤600,串^ffi信电路轮询输入线直到它检测到状被化-gp,下降沿(步骤601)。 一旦检测到状被化(步骤601),串^il信电路就取8个样本。 如果样本指示接收到的翻仍^^辑0状态(步骤603),贝U制fffi信电路就在 步骤604中认为它已经接收到开始位,之后它在步骤605通过以16个时钟周期 的间隔收集随后的8个 位和停止位,IS(^样总是在位的中点进fi1。在旨 位的中点取得三个样本,并且大多数的状态用来解析所接收至啲^I辑1还是 逻辑O。在停止位,接收至啲数据处于逻辑1的状态。 一旦收集至IJ该帧的纖位, 串fi通信电路就在步骤606在停止位的中点发送中断请求到中断M器,并且 响应于停止位(601)之后的状态变化而开始接收新字符或IRIG-B位。如果状 态没有变化,贝U串行通信电路就轮询(步骤600)输入线,直至咜检测到状恭变 化为止。如果接收的繊在状态变化后不再处于逻辑O状态(步骤603),贝ij下降沿 不意赠开始字符,并且串行通信电路继续^i旬输入线(步骤600)。在正常状态下,串行通信电路只接收三种不同类型的字符位置标记、值 为0的IRIG-B位和值为1的IRIG-B位。其他值指示接收错误,如停止位的值 为0。当串4预信电路检测到接收错误时,^艮告帧错误。如果^^够长的时间 内都接收到逻辑l,贝iJ制Tffl信电路在停止位后切换至控闲状态。相应地,如果 在足够长的时间内都接收到逻辑0,则该串行通信电路报告它已接收到断点 (break)信号。参考标记被作为8位字节10000000或十六进制值80H而接收, IRIG-B 0被作为8位11111110或十六进制值FEH而接收,IRIG-B 1被作为8 位字节11110000或十六进制值FOH而接收(最高有效位为先)。在一些其他的实施例中,串朽通信电路还能够计算校验位。图7结合图6的串fi通信电路示出了中断处理器的操作的更多细节。当在步骤700从串ffil信电路接收到中断i青求并且从该电路中读到串fi^信电路所接收到的字符时,操作开始。有10ms的时间读取该字符。在步骤701,中断处 理器响应于中断请求的接收而从芯片上的计时器取得时间戳tl。之后,在步骤 702,中断处理器检查所读取的字符是否是健标记。如果是这样的情况,贝赅 字符是潜在的开始位并且中断处理器切换到在其中它等待另一个位置标记的状 态。随后,步骤703,中断鹏離收下一个中断青求并且读取下一个字符(即, 串4fM信电路所接收到的下一个字符)。如果舰是位置标记(步骤704),贝U该 设备在接收着同步时间,并且在步骤705存储时间戳tl。所存储的时间i^见在 是按时点之前的0.5 ms。如果有必要,可以考虑开始中断处理器所用的时间, 也称为等待时段(latency penod)。如果中断处理器的优先权高,则它的等待时 段在数十微秒的数量级上(在lth^出的例子中,中断青求的时间精度大约为62.5 微秒),因此就该方法的典型精度(i0.5ms龜500微秒),它是无关紧要的。在 步骤706,读取的前ffiM个位置标记被作为时间消息的最初两个字符来存储。时 间消息的其他字符M重复步骤707和步骤708来获得,在步骤707中接收中 断青求并读取字符,在步骤708中存储该字符直至附间帧的第50个字符已经被 接收到(步骤709)。当该时间(本例子中为时间帧的前面的50个字符)已经被 接收到时,同步任务在步骤710被启动,并且中断处理器在步骤711等待中断 请求。时间信号的接下来的50个字符被忽略,新的时间帧的开^fflil两个连续 的位置标记来检测。如果第一字符(步骤702)或第二字符(步骤704)不是位置标记,贝惚略 所读取的一个或多个字符(步骤712),并且中断处理器进行到步骤711,等待 中断青求。在本发明其他某个实施例中,该中断M器可以只在第二 (后项)位置标 记的停止位的中点取得时间戳,在这种情况下时间戳tl的取得晚了9.5ms。如果中断M器检测到错误,则它就挂起(suspend)对时间的接收, 地初始化存储器并等待新的中断请求,返回步骤700。图8通il流程图结合图7中所示的中断 器示出了同步任务的操作。在 步骤800,同步任务等待来自中断处理器的触发信号。 一旦同步任务在步骤801 接收至愤虫发信号,贝咜就在步骤802获取时间消息;在本例子中,时间消息包 括由中断MM储的时间帧的前面的50个字符。之后,该同步任务在步骤803验证所读取的时间消息是否包含错误。如果是这样,则该任务返回到步骤800的等待状态。如果时间消息不包含错误(步骤803 ),贝lj在步骤804将该时间转化为系统 所要求的时间格式。之后在步骤805从计时器取得第二时间戳仏在步骤806 获取第一时间戳tl,在步骤807根据这些时间戳计穀將例禾舒躬胞的客尠卜延 迟,在步骤808减去0.5 ms。执行该减法的原因是第一时间戳的取得早了 0.5ms。 在一个实施例(时间戳tl晚取了9.5ms)中,9.5ms就被加至併Mm列程所弓跑的 额外延迟。这允许考虑时间戳tl的时间点。此外,可考虑到中断处理器的等待 时段,但如上所述,鄉常是无关紧要的并且是可以忽略的。最后,在步骤809, 4顿这样校正的时间来同步实时时钟。在本发明的 实施例中,计时器包括捕获功能。在本实施例中,时间信 号还被分流到时间捕获功能的输入。依赖于计时器设置,捕获功育M过下降沿 或上升沿来歡活,因此,1繊于设置,计时纖收反相的或非反相的时间信号。 在串4预信电路开始接收开始位的同时,由前沿歡活的捕获功能将计时器的计 数器中的时间值存储在捕获寄存器中。换言之,捕获功能在字符的刚开始的时 Ml尤接收精确的时间戳,未受中断处理器等待时间的影响。因此同步任务不需 要考虑当取得时间戳时的时间点,从而消除了图8的例子中的步骤808。
于 该实施例,时间W1中断处理器或同步任务来读取。中断处理器从捕获寄存器读取时间戳的实施例不同于图4中示出的实施 例,以使计时 获功能还接收时间信号4-1;信号前沿的精确时间戳被存储在 捕获寄存器中并且由中断鹏器/AI哩读出。在该实施例中,在下一个字符(位 置标记或IRIG-B位)的前^M发新时间戳的捕获之前,中断处理器有0.5毫秒 的时间读取时间戳。(串行通信电路在停止位的中点或开始接收字符之后9.5 ms 启动中断M器。)在该实施例中,从图7的例子中消除步骤701,并且在步骤 705从捕获寄存器中读取时间戳。图9示出根据实施例的装置,作为高层软件、 通信和命令图,在所述 实施例中,同步任务读取所捕获的时间戳。示例性的體包括与图4相同的元素, 除了计时器14包括捕获功能,所述捕获功能将时间信号的前沿的时间点读入9-l 寄存器作为时间戳。该时间信号9-l还被传送到串行通信电路中。两个时间信号 的极性被如上所述的夷孵适配,以便串4预信电路和捕获功能检测前沿。每次串^il信电路接收新字符,它都^ffl命令9-2启动中断处理器131,所述中断处 理器131从串行通信电路读取94接收的时间字符,把串《fffi信电路的状态读入 存储器。例如,如果字符开始时间帧,贝i仲断鹏器如结合图4所述的那样启 动9-7'同步任务。同步任务从捕获寄存器141获取9-3时间戳并将该时间戳存 储9-5在存储器122中。例如, 一旦同步所要求的字符己经被接收到,中断处理 器131就在存储器121中存储9-6接收到的时间消息并且启动9-7同步任务132, 如结合图4所描述的那样。同步任务132执行实际的时间同步。同步任务获取 9-8时间戳122。此外,同步任务获取9-9时间消息121并且从计时器14取得 9-10新的时间戳。同步任务能够使用该时间戳和更早获取的时间m补偿花费 在时间字符传输上的时间。同步任务还同步9-ll实时时钟。启动同步任务来读 取时间戳所使用的激励(stimulus) 9-7'可以与启动同步任务来同步时钟所{, 的' 9-7是不同的命令。换言之,在图9的例子中,同步任务读取时间戳, 一旦已接收到第一参考 字符,中断处理器就启动同步任务。这意 在图7的例子中的步骤701,时间 戳没有被取得而同步任务被启动。在本实施例中,中断处理器不存储时间戳, 但是步骤705被消除。当在本实施例中同步任务第一次被启动或在同步实时时 钟之后被启动时,同步任务将等待最少0.5ms,雌为2到3ms,以便在从捕 获寄存器读取时间之前,将下一个IRIG-B位的时间戳存储在捕获寄存器中。这 确保捕获寄存器中的时间等于按时点。另一方面,同步任务最大为10毫秒,优 选为7到8 ms,以便在下一个IRIG-B位的前沿使得新的时间值被捕获在捕获寄 存器中之前,将时间戳读入存储器。在读取时间戳后,同步任务等待来自中断 鹏器的触发信号并如上所描述的那样同步时钟。图2、 4、 6、 7和8中所示的步骤并不是完全按时间jl,排列的。它们會詢多以与特定顺序不同的顺)^^行或被同时:t舰行。 一些步骤还能够通过配S/i體 设备而被删除或代替。这样的步骤包括例如,取时间戳tl或把时间转换为系 鄉万要求的时间格式(如果时间已^^用该格式的话)。其他功能能够舒万述步骤之间执行或与它们同Nm行。即使已经结合异步串,fffi信电路对本发明进行了描述,但是对于本领域技 术人员将会很明显的是当把设备同步到从卫星获得的时间时,本发明还能够 与同步电路结合使用,例如USART (通用同步异步收发器)。战实施例是示例性的,就斜虫实施例所描述的特征未必就是相同实施例 的特征。因此,单独特征會滩被若干实施例共享。不同实施例的斜虫特征能够 被组合以产生符合本发明的其他实施例。用于实现根据本发明功能的,制器或设备或,包括4OT3M:串行通信电路接收到的时间来同步实时时钟的装置。更确切地,它包括用于实施至少 一个上述实施例的装置。配备有串行通信电路和中央处理单元的当前微控制器 和其他设备还包括能够就本发明的功能而被使用的存储器。实现本发明所要求 的所有改变和配置都育獬作为增加或更新的软件例程来执行,所述软件例程能 够被存储在任何媒体上,所述媒体能够使用设备来读取,或能够将所述例程从 所述媒体加载到设备。对本领域技术人员来说很明显的是,技术的发展将允许本发明的基本思路 以许多不同方法实现。因此,本发明及其实施例并不限于上述例子,而是可以 在禾又利要求的范围内有所变化。
权利要求
1.一种用于同步实时时钟的方法,所述方法包括根据接收到的时间信号同步(4-11)实时时钟,其特征在于适配(5-2)串行通信电路的数据传输速率,以使时间信号的一个字符能够作为一个字符被读入串行通信电路;以及通过串行通信电路接收(4-1)用于同步的时间信号。
2. 根据权利要求1所述的方法,其特征在于所述方法还包括 接收具有脉冲的上升前沿的时间信号;以及在串^a信电路中接收到时间信号之前,使所述时间信号反相。
3. 根据权利要求1或2所述的方法,其特征在于所述方法还包括 响应于时间帧的开始而取得(202)第一时间戳;存储从时间帧的开始接收到(204)的时间信号作为时间消息,直到g实 际时间的时间帧的脉冲已经被接收到; 转换(206)时间消息中的时间; 取得(207)第二时间戳; 根据时间W^校正(208)转换的时间;以及 4OT校正的时间来同步(209)实时时钟。
4. 一种串行通信电路(11),其特征在于,它被ma成接收时间信号(4-1) 以使串行通信电路的 传输速率被设置为允许时间信号中的一个脉冲间隔被 读入串行通信电路中的一个帧的速率。
5. 根据权利要求4所述的串fi^信电路,其特征在于,它(11)的翻传 输速率基本上等于时间信号的数据传输速率乘以串行通信电路的旨帧中的位 的数目。
6. 根据权利要求4或5所述的串^ ffi信电路,其特征在于,它被隨成响 应于读取一个脉冲间隔的完成而启动(606)用于读取接收到的时间脉冲的例程。
7. 根据禾又利要求4、 5或6所述的串《fffi信电路,其特征在于,它是异步 串^ffi信电路。
8. —种微控制器,包括串4Tffi信电路、存储器、中央鹏器、实时时钟和用于同步实时时钟的第一例程,其特征在于串行通信电路(11)被配置成以允许时间信号中的一个脉冲间隔被读入串 fi^信电路中的一个柳勺速率来接收时间信号;以及微控帝U器包括响应串行通信电路的第二例程(131),用于将串^1信电路 接收到的时间信号读入用于时间同步的时间消息,并且响应于时间消息的完成 而启动第一例程(132)。
9. 一种连接體,包括串行通信电路、存储器、中央鹏器和用于时间 同步的第一例程,其特征在于所^i接装置包括用于将时间信号提供给串行通信电路(11)的装置(Ul、Rl、 R2、 R3、 DA、 DB),和第二例程(131),用于响应串行通信电路并将串 行通信电路接收到的时间信号读入用于时间同步的时间消息,并且响应于所述 时间消息的完成而启动第一例程(132);以及串行通信电路(11)的数据传输速率被设置为允许时间信号中的一个脉冲 间隔被读入串4fffi信电路中的一个帧的速率。
10. 根据丰又利要求9所述的连接装置,其特征在于,它包括反相器(U3),用于使时间信号反相。
11. 根据权利要求9所述的连接驢,其特征在于,它包括用于使时间信 号反相的^Xi^接。
12. —种包括实时时钟和用于接收时间〗言号的装置的设备,其特征在于, 所述设备(1)包括根据权利要求9、 10或11的连接装置,并且适于为实时时 钟的时间同步而使用它。
全文摘要
通过向具有以下数据传输速率的串行通信电路(11)提供时间信号(4-1)来同步电子设备的实时时钟(151),其中数据传输速率被适配成使得时间信号的一个字符能够作为一个字符被读入串行通信电路。串行通信电路(11)启动(4-2)中断处理程序(131),中断处理程序又启动(4-7)同步任务(132)。如果有必要,时间信号(4-1)在被提供给串行通信电路(11)前被反相。这样,时间信号就被叠加在串行数据上。
文档编号H04J3/06GK101228724SQ200680023442
公开日2008年7月23日 申请日期2006年6月29日 优先权日2005年6月29日
发明者H·比约克曼 申请人:Abb有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1