单片机多机通信协议的设计探讨
来源:用户上传
作者:
【摘要】随着互联网技术的发展,网络通信技术已经应用到人们工作和生活的各个里领域,通信与人们的生活息息相关,通信功能的完善至关重要。本文简要探讨了单片机多机通信系统的网络拓扑设计和多機通信协议,以实现客户机与服务机以及客户机之间的通信。
【关键词】单片机;多机通信;协议;设计
1系统网络拓扑设计
服务机是整个单片机多机通信网络系统中的主体,其能够实现网络资源的有效分配。在单片机网络协议中,服务端能够根据不同客户机的具体需要向每一个客户端发送相关数据。单片机多机通信网络系统一般采用总线型的网络拓扑结构,基于总线型网络拓扑结构,单片机多机通信都是以基带的形式进行信息的传递和传输,在拓扑结构中的每一个节点都能够进行信息的接收和发送,具体来说,接收器的主要功能是接收信息并将信息以基带的形式传送给服务机,发送器的主要功能是根据服务机指令向拓扑网络结构中的极端发送数据。基于这个特点,总线型的拓扑结构所使用电缆长度较小,但其中的总线负载能力较强,这就对总线的长度以及其连接节点的数量提出了要求[1]。
服务机在进行数据传输发送的时候要询问客户机,之后按照设计的网络协议进入到整个拓扑结构电路中,当第一个客户机接收到数据时,服务机会进行询问,客户机选择“是”,则此客户机需要数据接收,如果此客户机选择“否”,则服务机依此进行下一台客户机的询问,从而保证数据最终被接受并使用。为了保证数据的接受和使用,在网络拓扑结构中客户机发送的数据对于其他机器来说都是可见的,以此来保证信号的可靠性。
2通信协议设计
网络通信协议的设计是实现单片机多机通信的基础,通信协议即是在计算机网络中,单片机之间进行数据交换的规则,为了实现正常通信,每一个终端都要对各自字符集中的字符进行变换,变为标准字符之后才能够进入到网络中,进而进行传输和传送,在传送到目的终端之后,在将标准字符转换为目的终端字符集中的字符。对于单片机多机通信来说,其主要是多台通信机来公用一台服务机,TCP/IP是互联网的基础协议,互联网中的操作都离不开TCP/IP协议,单片多机通信的系统服务对象是多个用户,因此,为了实现单片机多机通信,就要对网络协议的中的IP地质、子网掩码、DNS服务器等参数进行详细的设置。这样通信系统的服务端就能够根据用户数据内容进行判断,并根据协议进行数据的发送,接收端会根据TCP/IP网络协议进行数据的接受,这样一来则服务端与接收端的通信完成。服务端在进行数据发送的时候会询问客户端,客户端需要根据通信协议进行回复,如果如果没有回复则进行二次询问,如果第一次询问无应答,则会绕过此客户端,将数据发送到下一个客户端,通过依此根据通信协议的询问,最终实现客户端接收数据,如果没有一个客户端符合通信协议,那么数据则会显示发送失败,进而原路返回,回到服务端。
在通信协议的设计中,每一个询问数据包都会请求客户机的确认,如果客户机没有对询问数据包进行确认,则进行重发,超过两次询问数据包发送客户机没有确认则认为发送失败或对方不可送达。被询问的客户机在数据发送的过程中,如果结构中总线空闲,服务机可以将时间片进行分配使用,如果在时间片内客户机没有发送完成相关数据,则服务机进行强行回收总线使用和时间片,如果客户机发送成功,客户机要发送结束数据包,并将总线的使用权归还。
3电路设计
3.1网络接口电路功能
网络接口电路的功能主要有以下几个方面:①实现各个端口之间的同构,实现对交叉线的使用;②能够为网络通信提供网络状态的相关信号;③能够接收相关数据元,并将所接收到的数据元提交或将数据元转发到其他的端口上去;④网络接口电路采用的是多端口机制,这样多个端口之间就能够实现信息及数据的相互转发。
3.2网络接口电路设计
网络接口电路是单片机多机通信系统中的重要组成部分,其是客户机与服务机实现通信的桥梁,是通信协议产生作用的桥梁。单片机的多机通信中,网络接口电路中的数据接发工作主要有多片芯片工程来完成,其中每一个芯片都与一个客户机端口互相对应,一旦电路中出现信号,则芯片则会进行信号的接收和发送工作,实现信号向单片机的传递,而芯片在没有进行工作的时候,单片机多机通信系统中的第一号电路会与第二号电路相互连接,从而实现在芯片不工作的情况下的数据传输,而网络接口电路中信号增强则代表着数据的接收成功。在单片机多机通信中,客户机与服务机之间的网络接口电路的稳定性与通信的连续性息息相关,单片机多机通信系统中的客户机往往不需要对网络接口电路进行控制,只需要依照网络通信协议所发送的相关IP地址进行选择即可,而对于服务机来说,服务机也不需要根据网络结构对电路进行选择,这就大大减少了多机通信系统的通信负担,提升了通信效率[2]。
3.3客户机与服务机电路设计
单片机多机通信中,共有两种客户机和服务机电路,将服务机电路与客户机电路整合到同一个电路板中,就能够共同表现两种电路。客户端不需要对电路进行控制,但要获取电路地址,并进行编址。对于服务机来说,不需要对电路进行编址,其地址同一固定,因此不需要获取电路。但服务机承担着多机通信网络的监管和轮询功能。
参考文献
[1]沈一凡.一种单片机多机通信系统的设计[J]. 硅谷,2014,22:28+32.
[2]朱小超,徐雪春.基于Modbus协议的上位机与单片机通信的实现与仿真[J].仪表技术与传感器,2011,06:65-68.
转载注明来源:https://www.xzbu.com/1/view-14707151.htm