一种基于串口的一对多通信方法及系统技术方案

技术编号:28373380 阅读:19 留言:0更新日期:2021-05-08 00:00
本发明专利技术涉及一种基于串口的一对多通信方法及系统,系统包括主机和若干个从机以及收发线路;所述收发线路包括连接主机串口输出接口的输出线和连接主机串口输入接口的输入线;从机串口的输入接口连接所述输出线,从机串口的输出接口连接所述输入线;所述主机和从机通过如下串口通信方法实现主机对若干个从机的通信:所述主机通过收发线路间隔轮询各个从机状态,从机响应主机轮询的回复时间小于主机轮询的间隔时间。本发明专利技术提出了一种实现控制端单串口、多个受控端的串行通信方法,有效解决了一对多通信的成本问题,避免了一对多串口通信轮询进行状态更新中存在的通信冲突、通信阻塞问题。

【技术实现步骤摘要】
一种基于串口的一对多通信方法及系统
本专利技术涉及一种基于串口的一对多通信方法及系统,属于串口通信

技术介绍
通常多设备通信方式有:串口通信,例如RS-232口、串口、异步口或一个COM(通信)口;或者485通信。RS232接口的特点:只能点对点通信,不支持多点通信;RS485通信特点:具有多站通信能力,可以利用单一的RS485接口方便地建立起设备网络。在具体的应用领域,如何通过串口通信实现一个控制端、多个受控端的通信需求,是一需要解决的技术问题。例如授权公告号为CN206441155U的中国技术专利,公开了一种能够实现RS232一对多通信的控制电路,具体包括,RXD接收数据端包括接口驱动电路(SN75174的接口驱动芯片)和数据选择电路(CD4051开关电路);TXD发送数据端包括接收主控设备数据信息的接口缓冲器(SN75175的集成芯片)和数据分配器(74HCT245集成芯片);采用时分复用的方式,提高波特率,将多个受控端的RXD数据整合到一个RXD上送至控制端,再通过一个逆过程解出各个RXD数据信息,完成在多个控制端和多个受控端的情况下的RS232接口传输。例如在智能家居领域,如何通过串口满足一个控制端、多个受控端的通信需求,也是亟需解决的技术问题。比如集成控制的多联面板(面板集成了开关、场景、窗帘、温控器等不同功能的控制器86单元,是一种最终以多功能控制、组合呈现的智能家居面板产品),其主控电路通常使用单片机作为主控芯片来控制,那么则需要设置多个串口分别与不同类型的控制器模块(开关、场景、温控器等86单元)通信,实现一个主控电路通过多个串口或者485芯片分别控制多个设备的通信方式。而在实际情况下,如果采用485通信方式满足一对多控制,会造成造价高,因为集成面板采用的单片机上无485通信,需要新增485芯片;如果采用串口通信,由于单片机上的串口有限,如果一个设备与多个设备通信,则需要采用串口数量多的单片机,成本也增加。此外,在智能家居领域,上述集成控制的多联面板设计中,还存在以下问题:不同场合使用的多联面板相应的定制需求差异较大,差异方面涉及:每个多联面板所包含的86单元类型不同(如开关、场景、插座、窗帘、温控器等)、86单元的排序不同、每个86单元的负载路数不同(如单开/双开/三开/四开)。硬件上不同设备(86单元)不能随意组合,每次增加新的86单元组合需要重新设计软件和硬件,耗费人力,增加成本且周期较长。
技术实现思路
本专利技术的目的是提供一种基于串口的一对多通信方法及系统,用以解决现有一个控制端对多个受控端中实现一对多通信成本高的问题。为实现上述目的,本专利技术的方案包括:本专利技术的一种基于串口的一对多通信系统,包括主机和若干个从机以及收发线路;所述收发线路包括连接主机串口输出接口的输出线和连接主机串口输入接口的输入线;从机串口的输入接口连接所述输出线,从机串口的输出接口连接所述输入线;所述主机和从机通过如下串口通信方法实现主机对若干个从机的通信:所述主机通过收发线路间隔轮询各个从机状态,从机响应主机轮询的回复时间小于主机轮询的间隔时间。本专利技术提出了一种实现控制端单串口、多个受控端的串行通信方法,有效解决了一对多通信的成本问题,避免了一对多串口通信轮询进行状态更新中存在的通信冲突、通信阻塞问题。进一步的,所述主机轮询各个从机状态的方法为,通过输出线发出轮询指令,所述轮询指令中包括当前被轮询从机的地址。进一步的,所述从机响应主机轮询的方法为,从机解析轮询指令,当轮询指令中的地址与本机地址不符合,则不响应;若符合,则上报本机状态。主机轮询过程中,通过指令群发,接收端判断指令目标的方式,实现串行通信资源的分时复用。谁作为指令目标,谁当前占用串行线路上报状态,且占用时间不得超过轮询间隔时间,防止干扰下个从机的状态查询。且通信过程高效快速,无需主机额外进行通信资源的预分配,或者额外设立通信优先级机制。进一步的,串口通信方法还包括:所述主机通过收发线路下发控制指令,所述控制指令中包括控制内容和需响应该控制的从机的地址。进一步的,所述从机解析控制指令,当控制指令中的地址与本机地址不符合,则不响应;若符合,则响应控制内容。主机控制指令下发过程中,通过指令群发,接收端判断指令目标的方式,实现串行通信资源的分时复用。谁作为指令目标,谁响应控制命令。通信过程高效快速,无需主机额外进行通信资源的预分配,或者额外设立通信优先级机制。进一步的,串口通信方法还包括:从机不向外发送数据时,该从机串口的输出接口配置为浮空模式。不进行通信的从机输出接口置于浮空状态,防止拉底主机输出接口电平,干扰主机和其他从机的通信。进一步的,串口通信方法还包括:串口通信波特率设置为115200。115200为实际实施时最佳的波特率设置,实现了较高的传输效率。进一步的,串口通信方法还包括:从机与从机之间不进行通信,从机不主动与主机通信。从机不主动进行通信,进一步防止通信冲突或者通信阻塞。本专利技术的一种基于串口的一对多通信方法,采用如上所述的基于串口的一对多通信系统中的串口通信方法实现主机对若干个从机的通信。附图说明图1是本专利技术的基于串口的一对多通信系统电路原理图。具体实施方式下面结合附图对本专利技术做进一步详细的说明。系统实施例:串口通常只包括两个常规输入接口RX和输出接口TX,一般串口通信都是主机与从机一对一的,即一对一单向传输通信。若想基于串口实现主机对从机一对多通信的话,与之俱来的问题是一个主机与多个从机之间通信阻塞问题,多个RX信号相互干扰,造成控制端(主机)无法正常接收受控端(从机)的信息。本方案的硬件电路如图1所示,核心板作为主控主机,通过一个串口控制集成的多个作为从机的86单元。各86功能模块与核心板之间采用UART连接,具体的,收发线路包括TX线、RX线和GND线,TX线、RX线和GND线分别连接核心板串口的TX口、RX口和GND口,各个86单元挂接在收发线路上,86单元串口的TX口连接RX线、RX口连接TX线、GND口连接GND线。即用GND线、TX线、RX线及VCC线将所有模块连接,核心板作为主机,各86组合单元作为从机,主机可以和各从机通信,各从机之间彼此不能通信。在智能家居领域,智能家居系统包括智能家居设备和智能家居中控网关,智能家居中控网关是用于集控各个智能家居设备的中控设备;多联控制面板作为一个智能家居设备与智能家居中控网关建立通信连接,多联控制面板的核心板作为本专利技术中的通信主机可以接收智能家居中控网关的控制指令。多联控制面板的核心板(通信主机),基于本专利技术串口一对多通讯方法,将从智能家居中控网关等处接收的控制指令下发到对应的86单元(通信从机),即通过串行通信向对应受控的86功能模块(开关、场景、插座、温控器、窗帘等)下达控制指令,实现相应的功能。从机本身能够实现本地功能,以开关及温控本文档来自技高网
...

【技术保护点】
1.一种基于串口的一对多通信系统,其特征在于,包括主机和若干个从机以及收发线路;所述收发线路包括连接主机串口输出接口的输出线和连接主机串口输入接口的输入线;从机串口的输入接口连接所述输出线,从机串口的输出接口连接所述输入线;/n所述主机和从机通过如下串口通信方法实现主机对若干个从机的通信:/n所述主机通过收发线路间隔轮询各个从机状态,从机响应主机轮询的回复时间小于主机轮询的间隔时间。/n

【技术特征摘要】
1.一种基于串口的一对多通信系统,其特征在于,包括主机和若干个从机以及收发线路;所述收发线路包括连接主机串口输出接口的输出线和连接主机串口输入接口的输入线;从机串口的输入接口连接所述输出线,从机串口的输出接口连接所述输入线;
所述主机和从机通过如下串口通信方法实现主机对若干个从机的通信:
所述主机通过收发线路间隔轮询各个从机状态,从机响应主机轮询的回复时间小于主机轮询的间隔时间。


2.根据权利要求1所述的基于串口的一对多通信系统,其特征在于,所述主机轮询各个从机状态的方法为,通过输出线发出轮询指令,所述轮询指令中包括当前被轮询从机的地址。


3.根据权利要求2所述的基于串口的一对多通信系统,其特征在于,所述从机响应主机轮询的方法为,从机解析轮询指令,当轮询指令中的地址与本机地址不符合,则不响应;若符合,则上报本机状态。


4.根据权利要求1所述的基于串口的一对多通信系统,其特征在于,串口通信方法还包括:所述...

【专利技术属性】
技术研发人员:郭艳伟叶龙马涛姜红梅田涵朴朱广峰
申请(专利权)人:超级智慧家上海物联网科技有限公司河南紫联物联网技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1