用于借助同步串行接口进行异步串行数据传输的方法

文档序号:7857263阅读:891来源:国知局
专利名称:用于借助同步串行接口进行异步串行数据传输的方法
技术领域
本发明涉及一种根据权利要求1的前序部分用于单向异步串行数据传输的方法。
背景技术
在微型计算机之间或在微型计算机与外设设备之间的通信或数据传输或者并行或者串行地进行,在并行的情况下,数据按每个数据单元分别被并行地接收和发送。在串行数据传输的情况下,在同步串行方法与异步串行方法之间是不同的,在同步串行方法中用于发送侧和接收侧之间同步的时间过程或时间控制借助于由发送侧提供的时钟信号实现,在异步串行方法中数据传输无时钟信号地发生。串行数据传输-例如根据SPI (Serial Peripheral Interface)协议-通过
三根导线进行,亦即通过发送导线(M0SI)、接收导线(MISO)以及时钟导线(SCLK)。除这三根导线外,对于每个从设备还需要一根被称为从选择(SS)亦或片选择(CS)的导线,发送单元作为主设备通过该导线选择从设备用于当前通信。异步串行数据格式表示一种面向字符的数据格式,其中每个数据字在传输之前设有如起始位、停止位和/或奇偶校验位的控制和安全标记,并且被添加到相同的字符帧。两个相继的字符帧之间的时间间隔可以是任意的,因为每个这样添加的数据字自成一体并且每个新的字符帧都进行格式化(同步)。对于根据这样的异步串行数据格式一一例如根据UART (通用异步接收/发送器)标准——传输数据字,为待传输的数据字在开始处添加一个起始位而在末尾处添加一个停止位作为控制符。该起始位指示,接收器应该传输一个数据字并且接收器可以针对该数据传输进行同步。对于一个数据字节而言,根据该UART标准传输一个起始位、8个数据位以及I到2个停止位。如果发送器比接收器略快,第二个停止位根据UART接口的实施是需要的。UART标准的最重要的应用是如RS232或RS485的接口。例如,使用UART标准的数据传输也在压力或液位测量技术的应用领域中的各设备之间或内部应用,例如在传感器、执行器、现场设备、测量设备、分析设备、通信设备或操作设备中。为了执行异步串行数据传输——例如通过RS232接口,目前需要将与UART接口连接的微处理器安装到设备中或者使用包含具有UART能力的串行接口的微控制器。此时,待传输的D个数据位作为数据字写入发送寄存器中,然后由硬件单元自动为其添加F个帧划分位(framing-bits)并且以确定的时间顺序一起作为N位经由移位寄存器发送。如果不存在UART接口,可选地可以利用软件逐位地执行异步串行数据传输,也就是说在通过异步硬件协议确定的时间点对具有待发送的N个位状态的输出导线进行控制,也称为“位拆裂”。具有“位拆裂”的软件解决方案的缺点在于在提高对可靠性的要求的情况下的额外的程序存储需求、额外需要的处理器计算功率以及额外的软件错误源。

发明内容
本发明的任务在于,提供一种开始所述方式的用于单向异步串行数据传输的方法,其不需要具有UART接口的数据发送设备并且只需要有限的软件耗费用于其实现。该任务通过具有权利要求1的特征的方法解决。这样一种用于在数据发送设备的发送接口与带有具有异步串行数据输入端的串行接收接口的数据接收设备之间以带有F个帧划分位的异步数据格式进行单向异步串行数据传输的方法,其特征在于,发送接口构造为具有至少一个数据导线的同步串行接口,其中数据导线与接收接口的异步串行数据输入端连接,此外为待由数据发送设备传送的具有D个数据位的数据字添加F个帧划分位用于生成符合异步数据格式的格式,并且随后将添加有帧划分位的数据字存储到发送寄存器中用于传输到数据接收设备。利用这种根据本发明的方法对于数据发送设备——例如微型计算机——的发送能力来说省去了设置具有异步串行数据传输的硬件接口,如果取而代之地存在具有同步串行数据传输的硬件接口。因此存在使用微型计算机或微控制器作为数据发送设备的可能性——其不具有异步串行发送接口、例如UART接口并因而成本更低或具有其他不可缺少的特性,而不必借助软件(“位拆裂”)沿发送方向进行异步串行数据传输。在这种根据本发明的方法中,由同步串行接口生成的时钟信号不被需要因而可用于替代的任务。因此,这种根据本发明的方法以更小的复杂性需要更少地软件耗费,从而产生了更少的错误源,因此测试这种更简单的软件(SIL,安全完整性等级)也更便宜。因此,实施该根据本发明的方法也具有计算功率更小和程序存储需求更小的优点。最后,应用这种根据本发明的方法可以使得利用微型计算机或微控制器进行任务设置是可执行的,否则微型计算机或微控制器由于其有限的硬件资源而不能胜任这些任务。在本发明的一种有利的设计方案中设定,在以异步数据格式传输数据字之后在数据导线上维持对应于该数据字的最后一位的逻辑电平直到下一个数据字以异步数据格式被传输,以便确保明确和可靠地针对数据接收设备的数据传输进行同步。根据本发明的一种改进特别有利的是,如果同步串行接口可以与该接口的发送时钟同步地传输具有N位、例如N= 10 (I字节)的串行数据传输,从而为了以数据发送设备的异步的数据格式——例如具有D = 8个数据位和F个帧划分位——传输数据字产生N个待传输的位。有利地,F = 2时在待传送的数据字的开始处设置一个起始位并且在待传送的数据字的末尾处设置一个停止位作为帧划分位。根据改进,F = 3时该待传送的数据字除了起始位和停止位之外还可以额外地添加一个奇偶校验位,这样为此需要具有D = 11的同步串行接口的串行数据传输能力。根据改进,适于将同步串行接口构成为SPI (串行外设接口)接口,因为其应用广泛。如果在此根据UART标准——其从最低位(LSB)开始数据传输——构造该同步串行接口用于异步串行数据传输,那么可以放弃对待传输的数据字根据软件进行反映(Spiegeln),因为根据UART标准数据传输一直从最低位(LSB)开始。


以下根据实施例参照附图详细地描述本发明。其中:图1示出了用于根据本发明的方法异步串行数据传输的发送器一接收器装置的示意图;图2示出了用于生成符合UART标准的数据字的流程图的示意图;图3示出了根据UART标准的待传输数据字的时间一电平图以及相应的时钟信号。
具体实施例方式数据发送设备10构造为微型计算机并且具有SPI接口 11作为串行接口,其在主设备模式下经由数据导线12与作为数据接收设备20的另一台微型计算机连接用于根据UART标准进行数据传输。该微型计算机20具有带有数据输入端22的UART接口 21作为接□。在最简单的情况下,SPI接口 11包括至少一个移位寄存器Ila作为发送寄存器并且具有与数据导线12连接的数据输出端MOSI (也称为SD0),其中未示出通常为第二数据导线设置的数据输入端MIS0。此外示出了该SPI接口 11的两个控制导线13和14,其对应于时钟导线CLK和从选择(SS)—也称为片选择(CS)。这两个控制导线13和14不与数据接收设备20的UART接口 21连接。该SPI接口 11允许伴随其发送时钟CLK进行至少N = 10个数据位的同步串行数据传输。接下来结合图2阐述经由数据导线12将根据UART标准的异步数据格式的数据字传输到微型计算机20的UART接口 21。在SPI接口 11的软件模块S中,由具有D = 8个数据字X (O)、".Χ (D_l)的待传输数据字X生成以异步UA RT数据格式的二进制数据字。根据图2在软件模块S中示出两个通道PFl和PF2。因为在UART标准中数据传输总是从最低位(LSB)开始,必要时必须将数据字X根据通道PFl反映为具有8个数据位Yl
(O)、…Yl (D-1)的数据字Y1。如果数据字X已经以正确的顺序存在,那么其作为具有8个数据位Y (O)、-Y (D-1)的数据字Y被接受。在接着的步骤中,在两个通道PFl和PF2中添加分别具有作为新的最后一位的值为O的位O (BitO)的数据字Yl或Y,这对应于数据字Yl或Y与2相乘:Z1 = 2*Y1或Z =2*Υ。这个过程对应于在移位寄存器中将数据字Yl或Y左移。随后,这两个数据字Zl和Z通过与具有两个帧划分位一一个起始位SO和一个停止位Pl——的位掩码M结合而被补充,从而待传输的数据字El或E以异步串行UART数据格式存在,其中起始位SO的位值总是数值O而停止位Pl的位值总是数值I。该数据字El或E被移到移位寄存器Ila中,从其中作为SPI接口 11的发送寄存器读出该数据字以便经由数据导线12串行地以SPI接口的发送时钟传送到微型计算机20的UART接口 21。以2400Hz的发送时钟实现2400波特的比特率。该发送时钟也可以如此选择,使得产生1200或4800的波特率。如此构成SPI接口 11,使得在数据导线12上的电平在传输数据字El或E之后维持在最后传输的位的电平上、亦即具有位值I的停止位上,也就是只有随着下一个数据字的传输才切换到具有位值O的起始位的电平值上。作为替换地,这也可以利用微控制器10实现,其方法是微控制器经由数据导线12接受控制,从而在一次数据传输后直到下一次数据传输保持对应于电平值I的静止状态。图3示出了具有数据位d0、…d7的根据UART标准添加有一个起始位SO和一个停止位Pl的数据字E或El在数据导线12上的示例性电平曲线TXD以及相应的时钟信号CLK,从而数据传输从最低位(LSB)开始。特别地从该图可看到,在静止状态下数据导线12上的电平位于对应于停止位Pl的电平值I上。在上面阐述的实施例中为了生成异步数据格式只将一个起始位和一个停止位添加到待传输的数据字。相应地也可以将一个奇偶校验位添加给待传输的数据字,该奇偶校验位被添加在停止位之前。在这种情况下,为了添加F = 3个帧划分位必须如此设计用于传输具有D = 8个数据位的数据字的SPI接口 11,使得能够无中断地串行发送N = 11个位。如果硬件为此被设置,那么用于另外的数据导线MISO (SDI)和控制导线CLK和SS(从选择,也称为CS:片选择)的、在根据UART标准异步串行数据传输中不需要的接口可以用于备选的任务。附图标记:10 数据发送设备、微型计算机11 发送接口、SPI 接口Ila 移位寄存器、发送接口 11的发送寄存器12 数据导线13 控制导线、时钟导线13a 时钟输出端`14 控制导线、从选择导线20 数据接收设备、微型计算机21 接收接口、UART 接口22接收接口 21的数据输入端M位掩码E数据字El数据字X数据字Y数据字Yl数据字Z数据字Zl数据字
权利要求
1.一种用于在数据发送设备(10)的发送接口(11)与带有具有异步串行数据输入端的串行接收接口(21)的数据接收设备(20)之间以带有F (F e N)个帧划分位的异步数据格式进行单向异步串行数据传输的方法,其特征在于, 发送接口构造为具有至少一个数据导线(12)的同步串行接口(11),其中数据导线(12)与所述接收接口(21)的异步串行数据输入端连接, 为待由数据发送设备(10)传送的具有D (D e N)个数据位的数据字添加F个帧划分位用于生成符合异步数据格式的格式,并且 将添加有帧划分位的数据字存储到发送寄存器(Ila)中用于传输到数据接收设备(20)。
2.根据权利要求1的方法,其特征在于,在以异步数据格式传输数据字之后在数据导线(12)上维持对应于该数据字的最后一位的逻辑电平直到以异步数据格式传输下一个数据字。
3.根据权利要求1或2的方法,其特征在于,构造同步串行接口(11 ),与该接口( 11)的发送时钟同步地传输N位的串行数据传输,其中为了以D个数据位和F个帧划分位的异步数据格式传输数据字产生N个待传输的位。
4.根据权利要求3的方法,其特征在于,在待传送的数据字的开始处设置一个起始位并且在待传送的数据字的末尾处设置一个或多个停止位作为帧划分位。
5.根据权利要求4的方法,其特征在于,除了起始位和一个或多个停止位之外,待传送的数据字还添加有一个奇偶校验位 。
6.根据上述权利要求之一的方法,其特征在于,所述同步串行接口构造为SPI(串行外设接口)接口(11)。
7.根据上述权利要求之一的方法,其特征在于,构造所述同步串行接口(11),使得数据传输从最低位(LSB)开始。
8.根据权利要求1至6之一的方法,其特征在于,编排待传送的数据字,使得数据传输从最低位(LSB)开始。
9.根据上述权利要求之一的方法,其特征在于,异步数据格式符合UART(通用异步接收/发送器)标准。
10.根据上述权利要求之一的方法,其特征在于,所述方法应用在传感器或执行器或现场设备或测量设备或分析设备或操作设备或通信设备中。
全文摘要
本发明涉及一种用于在数据发送设备(10)的发送接口(11)与带有具有异步串行数据输入端的串行接收接口(21)的数据接收设备(20)之间以带有F(F∈N)个帧划分位的异步数据格式进行单向异步串行数据传输的方法;根据本发明设定,发送接口构造为具有至少一个数据导线(12)的同步串行接口(11),其中数据导线(12)与接收接口(21)的异步串行数据输入端相连接,为待由数据发送设备(10)传送的具有D(D∈N)个数据位的数据字添加F个帧划分位用于生成符合异步数据格式的格式,并且将添加有帧划分位的数据字存储到发送寄存器(11a)中用于传输到数据接收设备(20)。
文档编号H04L1/00GK103116562SQ20121027267
公开日2013年5月22日 申请日期2012年8月2日 优先权日2011年9月14日
发明者M·科普 申请人:Vega格里沙贝两合公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1