专利名称:具有多个接收器/发送器的串行通信模块的利记博彩app
技术领域:
本文描述的实施例大体上涉及串行通信,并且更具体地涉及通过多端口通信模块 发送的串行通信。
背景技术:
至少一些已知的通信网络使用9位串行通信协议以便于通过使用每个字节的第 九位作为指示符位而最小化在从模块(slave module)上的负荷。例如,在一些已知的通信 网络中对于命令字节将第九位设置成一,并且对于数据字节将其设置成零。然而,一些主模 块包括不支持9位通信协议而要求使用8位通信协议的接收器/发送器。因此,至少一些已知的通信网络使用8位串行通信协议,其中主模块使用单个接 收器/发送器以与从模块通信。对要发送给从模块的每个字节,至少一些已知的主模块设 置奇偶校验位以指示字节是数据字节还是命令字节。在至少一些已知的主模块中,这样的 配置需要多个命令以配置和/或重新配置该单个接收器/发送器。
发明内容
在一个方面,提供用于实现通信网络中的主模块和至少一个从模块之间的串行 通信的方法。该方法包括将主模块的第一接收器/发送器初始化为空奇偶校验(space parity),将主模块的第二接收器/发送器初始化为标记奇偶校验(mark parity),并且确 定消息的第一字节是命令字节还是数据字节。如果该第一字节是数据字节,该第一字节使 用该第一接收器/发送器发送到该至少一个从模块。如果该第一字节是命令字节,该第一 字节使用该第二接收器/发送器发送到该至少一个从模块。在另一个方面,提供串行通信系统。该串行通信系统包括多个从模块和主模块。该 主模块包括第一端口和第二端口,其中该第一和第二端口中的每个耦合于该从模块中的每 个。该主模块配置成将该第一端口初始化为空奇偶校验,将该第二端口初始化为标记奇偶 校验,通过该第一端口发送至少一个数据字节到该从模块中的至少一个,并且通过该第二 端口发送至少一个命令字节到该从模块中的至少一个。在另一个方面,主装置提供用于与串行通信系统一起使用。该主装置包括多端口 通信模块和微处理器。该多端口通信模块包括通过网络耦合于多个从模块的第一通用异步 接收器/发送器(UART),通过网络耦合于该从模块的第二 UART。该微处理器通过总线耦合 于该第一和第二 UART,并且配置成将该第一 UART初始化为空奇偶校验,将该第二 UART初始 化为标记奇偶校验,通过该第一 UART发送消息内的至少一个数据字节到该从模块中的至 少一个,并且通过该第二 UART发送该消息内的至少一个命令字节到该从模块中的至少一 个。
本文描述的实施例可通过结合附图参考下列说明更好地理解。
图1是串行通信系统的示意框图。图2是图示实现在图1中示出的串行通信系统内的串行通信的示范性方法的流程 图。
具体实施例方式在一些实施例中,术语“微处理器” 一般指任何可编程系统,包括系统和微控制器、 精简指令集电路(RISC)、专用集成电路(ASIC)、可编程逻辑电路(PLC)和能够执行本文描 述的功能的任何其他电路或处理器。上文的示例仅是示范性的,并且从而不意在采用任何 方式限制术语处理器的定义和/或含义。在一些实施例中,术语“模块”一般指通过网络实现串行通信的任何装置。示范性 装置包括计算机、微控制器、传感器等。上文的示例仅是示范性的,并且从而不意在采用任 何方式限制术语模块的定义和/或含义。此外,应该理解术语“模块”可与术语“节点”可 交换地使用。在一些实施例中,术语“网络” 一般指包括至少一个主设备和一个或多个从设备 (slave device)的任何多点网络。示范性多点网络包括但不限于仅包括RS-485网络和 RS-232网络。然而,在本文描述的实施例中可使用任何适合的网络。在一些实施例中,术语“端口,,一般指通信端口,例如发送和/或接收数据的串行 端口等。示范性通信端口包括但不限于仅包括通用异步接收器/发送器(UART)和通用同 步接收器/发送器(USART)。然而,在本文描述的实施例中可使用任何适合的通信端口。本文详细描述的是便于使用多端口通信模块的两个端口以使用8位UART在9位 网络上发送数据的方法、系统和设备的示范性实施例。使用两个端口便于减小每个字节从 主设备传送到从设备之间的延迟。减小这样的延迟便于使用多端口通信模块减小在多点网 络内消息的总传送时间。本文描述的实施例的示范性技术效果包括下列中的至少一个(a)确定期望的从 模块的网络地址;(b)发送该网络地址到通过网络耦合于主模块的多个从模块;(C)将第一 主模块UART初始化为空奇偶校验;(d)将第二主模块UART初始化为标记奇偶校验;(e)确 定消息是否已经存储用于发送到该期望的从模块;(f)如果消息没有存储,周期性地重复 确定消息是否已经存储用于发送,或如果消息存储了,确定在该消息中的第一字节是数据 字节还是命令字节;(g)如果该第一字节是数据字节,通过该第一 UART发送该第一字节到 该从模块,或如果该第一字节是命令字节,通过该第二 UART发送该第一字节到该从模块; (h)确定该消息是否包括另外的字节;并且(i)如果该消息确实包括另外的字节,确定随后 的字节是数据字节还是命令字节,或如果该消息不包括另外的字节,确定随后的消息是否 已经存储用于发送到相同的期望从模块或到不同的期望从模块。图1是串行通信系统100的示意框图,其可使用在例如高速通信网络中以便于减 少通信时间并且最小化消息超时错误的可能性。在该示范性实施例中,系统100包括多个 每个包括通信端口 104的从模块102。示范性从模块102包括例如温度和/或压力传感器 等传感器,尽管任何适合的装置可用作包括通信端口 104的从模块102。在该示范性实施例 中,端口 104是通用异步接收器/发送器(UART),例如8位UART等。系统100还包括主模 块106。示范性主模块106包括计算机和自动控制器。然而,任何适合的装置可用作主模块106。在示范性实施例中,主模块106包括微处理器108和通过总线112耦合于微处理 器108的存储器110。在一些实施例中,主模块106可包括多个微处理器108和/或多个存 储器110。在示范性实施例中,主模块106还包括多端口通信模块114,其至少包括第一通 信端口 116和第二通信端口 118。在示范性实施例中,第一通信端口 116和第二通信端口 118是UART,例如8位UART等。此外,在示范性实施例中,系统100包括耦合(例如通信或操作地耦合)主模块 106和每个从模块102的网络120。更具体地,网络120将主模块106的第一通信端口 116 和第二通信端口 118耦合于每个从模块102的端口 104。示范性网络120包括RS-485网 络。然而,任何适合的多点网络可用作网络120。图2是图示实现在例如串行通信系统100(在图1中示出)等系统内的串行通信 的示范性方法的流程图200。参照图1,并且在该示范性实施例中,主模块106确定202期 望的从模块102的网络地址。更具体地,微处理器108在存储器110中确定该期望的从模 块102的网络地址。例如,在一些实施例中,存储器110包括查找表,其列出每个从模块102 的标识符和网络地址。在示范性实施例中,主模块106通过网络120发送204地址字节到每个从模块 102,其中该地址字节包括与期望的从模块102关联的该网络地址字节。主模块106可使用 第一通信端口 116或第二通信端口 118发送该地址字节。每个从模块102接收该地址字节 并且确定包括在该地址字节内的网络地址是否匹配它自己的网络地址。具有不匹配网络 地址的从模块102忽略任何将来的消息或字节直到另一个地址字节由主模块106通过网络 120发送。期望的从模块102等待包括命令或数据的另外字节。在示范性实施例中,主模块106将第一通信端口 116初始化206为空奇偶校验,并 且将第二通信端口 118初始化208为标记奇偶校验。具体地,微处理器108初始化第一通 信端口 116使得奇偶校验位设置成零,并且初始化第二通信端口 118使得奇偶校验位设置 成一。一旦第一通信端口 116和第二通信端口 118各自初始化为它的相应奇偶校验,主模 块106确定210是否存在要发送到期望的从装置102的消息。在一些实施例中,消息基于 例如指派给每个消息和/或消息类型的优先级而在存储器110中排队。因此,微处理器108 确定存储器110当前是否存储要通过网络120发送到期望的从模块102的消息。如果没有 消息存储用于发送到期望的从模块102,微处理器108周期性地重新确定是否已经存储消 肩、ο当消息存储用于发送时,主模块106确定212消息的第一字节是命令字节或数据 字节。具体地,微处理器108检测第一字节的最后位是零还是一。如果该最后位是零,微处 理器108检测该第一字节是数据字节。如果该最后位是一,微处理器108检测该第一字节 是命令字节。不同通信协议的使用实现不同的奇偶校验设置。因此,在备选实施例中,每个 数据字节具有具有值1的最后位,并且每个命令字节具有具有零值的最后位。此外,在另一 个备选实施例中,主模块106配置成使用任何适合的9位协议通过第一通信端口 116或第 二通信端口 118发送任何适合的8位消息。例如,第一通信端口 116可通过根据指派给第 一通信端口 116的奇偶校验(例如空奇偶校验等)添加第九位给消息而发送任何适合的8 位消息。相似地,第二通信端口 118可通过根据指派给第二通信端口 118的奇偶校验(例如标记奇偶校验等)添加第九位给消息而发送任何适合的8位消息。在示范性实施例中,并且当第一字节确定为数据字节时,主模块106通过第一通 信端口 116和网络120发送214第一字节到期望的从模块102。具体地,微处理器108从 存储器110检索第一字节并且通过第一通信端口 116和网络120发送第一字节到从模块端 口 104。当第一字节确定为命令字节时,主模块106通过第二通信端口 118和网络120发送 216第一字节到期望的从模块102。具体地,微处理器108从存储器110检索第一字节并且 通过第二通信端口 118和网络120发送第一字节到从模块端口 104。在系统110中剩余的 从模块102忽略第一字节。在发送第一字节后,主模块106确定218消息是否结束。具体地,微处理器108确 定存储器110当前是否存储与要发送到期望的从模块102的消息关联的另外的字节。如果 没有另外的字节存储用于发送到期望的从模块102,微处理器108重新确定210消息是否已 经存储在存储器110中。在备选实施例中,微处理器108重新确定202不同的期望从模块 102的网络地址。如果存储器110确实具有存储用于发送到期望的从模块102的另外的字 节,微处理器108重新确定212下一个字节是数据字节还是命令字节。用于在串行通信系统中使用的方法、系统和设备的示范性实施例在上文详细描 述。该方法、系统和设备不限于本文描述的具体实施例,而相反,方法的操作和/或系统或 设备的部件可独立于并与本文描述的其他操作和/或部件分开使用。此外,描述的操作和/ 或部件也可在其他系统、方法和/或设备中限定,或与其结合使用,并且不限于仅用如本文 描述的方法、系统和存储介质实践。尽管实施例连同示范性串行通信环境描述,实施例与许多其他通用或专用串行通 信环境或配置是可操作的。该串行通信环境不意在提出关于本文描述的实施例的任何方面 的使用范围或功能性的限制。此外,该串行通信环境不应该解释为具有关于在该示范性操 作环境中说明的部件中任一个或组合的任何依赖性或要求。可适合与本文描述的实施例一 起使用的众所周知的串行通信系统、环境和/或配置的示例包括但不限于个人计算机、服 务器计算机、手持或膝上型装置、多处理器系统、基于微处理器的系统、机顶盒、可编程消费 电子、移动电话、网络PC、小型计算机、大型计算机、包括上文的系统或装置中的任何系统或 装置的分布式计算环境等。在本文图示和描述的实施例中的执行顺序或操作表现不是必不可少的,除非另外 规定。即,操作可采用任何顺序进行,除非另外规定,并且实施例可包括另外的或比本文公 开的那些更少的操作。例如,考虑了在另一个操作之前、与其同时或在其之后执行或进行特 定操作包含在描述的实施例的范围内。当介绍本发明的方面或其实施例的元件时,冠词“一”、“该”和“所述”意在表示存 在一个或多个该元件。术语“包括”、“包括”和“具有”意在为包括性的并且表示可存在除 列出的元件外的附加元件。该书面说明使用示例以公开本发明,其包括最佳模式,并且还使本领域内技术人 员能够实践本发明,包括制作和使用任何装置或系统和执行任何包含的方法。本发明的专 利范围由权利要求限定,并且可包括本领域内技术人员想到的其他示例。这样的其他示例 如果它们具有不与权利要求的书面语言不同的结构元件,或者如果它们包括与权利要求的 书面语言无实质区别的等同结构元件则规定在权利要求的范围内。
6
部件列表
权利要求
1.一种串行通信系统(100),其包括 多个从模块(102);和主模块(106),其包括第一端口(116)和第二端口(118),所述第一端口和所述第二端 口中的每个耦合于所述多个从模块中的每个,所述主模块配置成 将所述第一端口初始化为空奇偶校验; 将所述第二端口初始化为标记奇偶校验;通过所述第一端口发送至少一个数据字节到所述多个从模块中的至少一个;以及 通过所述第二端口发送至少一个命令字节到所述多个从模块中的至少一个。
2.如权利要求1所述的串行通信系统(100),其中所述主模块(106)进一步包括配置 成存储与每个从模块(10 关联的地址的存储器(110)。
3.如权利要求2所述的串行通信系统(100),其中所述主模块(106)进一步配置成确 定与所述多个从模块中的指定从模块(10 关联的地址。
4.如权利要求3所述的串行通信系统(100),其中所述主模块(106)进一步配置成发 送地址字节到所述多个从模块(102),所述地址字节包括所述指定从模块的地址。
5.如权利要求1所述的串行通信系统(100),其中所述主模块(106)进一步配置成基 于每个字节的最后一位确定消息内的字节类型。
6.如权利要求1所述的串行通信系统(100),其中所述主模块(106)进一步配置成 通过所述第一端口(116)和所述第二端口(118)中的一个发送消息的首字节到所述多个从模块的指定从模块(102);以及确定所述消息是否包括要发送到所述指定的从模块的另外的字节。
7.一种用于与通信网络(120) —起使用的主装置,所述主装置包括 多端口通信模块(114),其包括通过网络耦合于多个从模块(102)的第一通用异步接收器/发送器(UART); 通过所述网络耦合于所述多个从模块的第二 UART ;以及微处理器(118),其通过总线(11 耦合于所述第一 UART和所述第二 UART,所述微处 理器配置成将所述第一 UART初始化为空奇偶校验; 将所述第二 UART初始化为标记奇偶校验;通过所述第一 UART发送消息内的至少一个数据字节到所述多个从模块中的至少一 个;以及通过所述第二 UART发送所述消息内的至少一个命令字节到所述多个从模块中的至少一个。
8.如权利要求7所述的主装置,进一步包括配置成存储与每个从模块(10 关联的地 址的存储器(110)。
9.如权利要求8所述的主装置,其中所述微处理器(108)进一步配置成确定与所述多 个从模块中的指定从模块(10 关联的地址。
10.如权利要求9所述的主装置,其中所述微处理器(108)进一步配置成发送地址字节 到所述多个从模块(102),所述地址字节包括所述指定从模块的地址。
全文摘要
一种串行通信系统(100)包括多个从模块(102)和主模块(106),其包括第一端口(116)和第二端口(118),该第一端口和该第二端口中的每个耦合于多个从模块中的每个。该主模块配置成将该第一端口初始化为空奇偶校验,将该第二端口初始化为标记奇偶校验,通过该第一端口发送至少一个数据字节到多个从模块中的至少一个,以及通过该第二端口发送至少一个命令字节到多个从模块中的至少一个。
文档编号H04L1/00GK102118223SQ201010616058
公开日2011年7月6日 申请日期2010年12月16日 优先权日2009年12月16日
发明者W·H·吕肯巴赫 申请人:通用电气智能平台有限公司