基于C51单片机多机通讯的实现

来源 :信息周刊 | 被引量 : 0次 | 上传用户:UserReg
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】单片机作为智能单元越来越多地应用到复杂系统中的低层部分,进而对各个单元之间的多机通讯提出更高的要求。本文给出依靠单片机串口、利用CAN控制器构成CAN总线以及采用双端口RAM等三种方法来实现单片机之间的多机通讯,并给出了三种多机通讯的特点和实现过程,对于组建多机通讯的智能系统具有一定的参考价值。
  【关键词】多机通讯、串口通讯、CAN总线、双端口RAM
  【Abstact】 microcontroller as an intelligent unit is widely applied to the lower part of complex system, and then put forward the higher requirements for multi-machine communication between each unit. In this paper, three methods such as serial port, CAN bus using CAN controller and dual-port RAM is given to realize multi-machine communication between the microcontrollers. It gives the characteristics of the three multi-machine communication and implementation process. It has a certain reference value for the formation of intelligent multi-machine communication system.
  【Keywords】: multi-machine communication; serial communication; CAN bus; dual-port RAM.
  中图分类号:TP317 文章标识码:A
  0.引言
  目前,智能控制已成为一种趋势并深入到我们生活的各个层面,在我们生活的各种场合都有智能控制的影子。智能控制的深入也对其要求在不断地提高,可视化、灵活、稳定可靠、操作方便等都成为考核和验证一个系统能否占领市场的性能指标。无论是家用电器、智能楼宇还是工业类产品都要求具有人性化操作的功能,显示屏、键盘等用户界面和实时可靠的控制已成为产品不可或缺的部分。要保证系统各部分可靠运行、又要保障给用户提供良好的操作界面,将显示、各个关键控制部分等分别由不同的控制单元来完成,而各个控制单元之间则通过总线的通讯方式完成数据和信息的交换已成为构建系统的一种方式。本文针对控制单元之间如何通讯进行了探讨,对几种通讯方式进行对比并给出其实现的途径。
  1.单片机的串口实现多机通讯
  通过设置单片机的串口可以方便实现三个或三个以上单片机之间的多机通讯,构成主从式多机通讯系统。串口通讯的电器特性、逻辑电平和各种信息都由其自身的特点。下面以C51系列单片机为例介绍串口多机通讯的实现过程,其它单片机的配置和应用也类似。
  C51系列单片机之间通过多机通讯进行数据交换时,需要将串口设置为工作方式2或者3,数据的接收受到SM2的控制。多机通讯涉及下面几个过程。
  1.1主机广播查询设置。主机发送的信息有地址和数据两类。当主机设置TB=1时,表示发送的为地址,TB=0时表示要发送的为数据。当主机的TB=1,各从机均设置成SM2=1时,从机监听主机发来的广播信号。
  1.2各从机确认。各从机通信息的第9位(RB8)来区分收到的是地址还是数据。当RB8=1时,表示从机收到的信息是地址,从机将其和自身设备的地址进行比较。如果两者相同,该从机将复位SM2=0,置位RI=1,并给上位机发送确认信息设置成点对点的通讯。该从机将收到的地址当作和主机的握手信号进入接收信息状态。其它从机由于地址不匹配而处于等待状态直到总线被释放。
  1.3点对点通讯。主机收到从机的确认信息后,置TB8=0进入数据发送状态,即随后发送的每个数据的第九位都是0。虽然所有的从机都能接收到数据帧,但是只有SM2=0的从机才会将数据送入SBUF,与主机进行一对一的通信。地址不匹配的从机则保持SM2=1和RB8=0,并将主机发送的数据丢弃。当从机给主机发送数据帧时,需要将TB8置为0,表示传送的为数据。
  1.4总线占有权的释放。从机处于接收状态时SM=0,并将接收的数据存入指定的内存中,接收完毕后置位SM=1,交出总线占有权。
  串行多机通讯中各从机的地址不同,地址匹配时只会有一个从机被选中。因此在任意时刻,只能由主机与某台从机进行数据传输,各个从机之间的通信必须通过主机来中转。例如从机1先将数据传给主机,再由主机传送给从机2完成从机1和2之间的通讯。利用单片机串口构成的多级通讯的软件流程图如图1所示。
  单片机的TTL电平与RS-232C标准的电器特性不同,如果单片机的串口要和标准的RS-232C建立串口通讯必须进行电平转换。单片机的串口通过RS-232C电平转换芯片MAX232可构成232串口通讯,通过光电隔离的方法可构成RS-422通讯,通过MAX483芯片可构成RS-485通讯等。通过这些通讯方式就可以组成相应的多机通讯系统。利用单片机的串行口组成的多机通讯系统电路结构简单、成本低、软件也较易实现,正是基于这样的优点,使得其得到广泛的应用。但是单片机的串口通讯也存在如下的缺点:
  (1)接口的电平值较高,接口电路的芯片易损坏,且需要电平转换电路来完成与TTL电路的连接;
  (2)传输速率较低;
  (3)接口的信号线和信号返回线之间容易产生共模干扰,抗噪声干扰能力差。   (4)传输距离有限,实际的最大传输距离仅在50米左右。
  2.CAN总线实现多机通讯
  CAN通讯是德国Bosch公司20世纪80年代初为解决现代汽车中众多的控制与测试系统之间的数据交换而开发的一种通讯协议。
  由于其高性能、高可靠性及独特的设计,目前它已成为国内外最普及和实时性最高的通讯方式。CAN通讯的特征如下:
  (1)数据信号采用差分电压传输,仅有CAN_H和CAN_L两条数据线;
  (2)介质可用双绞线、同轴电缆或光纤,抗干扰能力强;
  (3)可以多主方式工作,网络上任意一个节点均可以在任意时刻主动的向其它节点发送信息而不分主从,通讯方式灵活;
  (4)可点对对、点对多传送数据,而且接到信息可分成不同的优先级用于满足不同的实时要求;
  (5)采用短帧结构,校错能力强,保证了极低的出错率,被公认为是目前最有发展前途的通讯方式之一。
  目前广泛使用的C51系列,AVR等单片机都可以通过独立的CAN控制器如82C200、SJA1000、Intel82536/82527等构成CAN总线。
  多机通讯系统中的各个功能单元和这些CAN控制器组成的CAN接口结构图如图2所示。
  8051单片机和PHILIPS半导体公司推出的SJA1000组成的电路如图3所示,SJA1000可工作在PeliCAN工作模式,支持CAN2.0B协议。
  在图3中,SJA1000是一个CAN总线接口芯片,通过它完成8051和CAN总线上其它CAN模块之间的数据交换;8051是CAN总线接口电路的核心,承担CAN控制器的初始化、CAN的收发控制等任务。
  不具备在片CAN的微控制器之间通过图3的连接就可以组成CAN总线网络,通过CAN通讯完成不同功能单元之间的数据交换,实现多机通讯。CAN总线是一种有效支持分布式控制或实时控制的通讯,在单片机或现场系统多控制单元之间实现数据通讯具有广泛的前景。
  3.双端口RAM实现多机通讯
  数据获取及交换是多CPU系统的重要组成部分。数据交换的通讯速率要求10k左右或者100k以上的系统中,传统的并行接口和串行接口设计在通信速率和可靠性方面都不易满足要求,用双端口RAM或四端口RAM来实现CPU之间高速的数据交换则是一个很好的实现方案。
  目前市场上由多种专用双端口RAM芯片,如IDT7132/7142、DS1609等。双端口存储器具有两套地址线、数据线和读写控制线,因而可使两个CPU分时独立访问其内部RAM资源,完成数据的交换和共享。
  双端口RAM内一般都有一个总线抢答占优先级比较器。只要双CPU不同时访问同一存储单元,那么较先送出地址的CPU将拥有该单元的本次访问优先权,而另一个CPU的地址与读写信号将被屏蔽掉,同时通过“busy”引脚告知该CPU以使之根据需要对该单元重新访问或撤销本次访问。
  专用双端口RAM的优点是通讯速率高,实时性强,接口比较简单,两边CPU都可以主动进行数据传输,在通讯实时性要求高的场合得到很好地应用。双图4双端口RAM接口电路图
  端口RAM的接口电路图如图4所示,利用双端口或者四端口RAM可以实现多CPU之间的数据交换。这种方式的缺点是成本高,需要克服竞争现象。
  4.多机通讯实现方法的对比
  单片机串口构成的串行多机通讯系统中,主机和各从机都运行着各自的程序,并依靠串行通讯进行联系,各从机能按主机的要求协调各种工作,构成一个相对完美的主从式实时多级系统。
  该系统因设计成本低得到广泛的应用,当从机数过多时主机需要不停地查询或响应从机的中断,并要在一定的时间内等待和接收数据,主机的负荷会增大许多,此时软件设计也相对复杂,这是该系统的缺陷。
  CAN通讯是一种有效支持分布式控制或实时控制的串行通讯,它在可靠性和实用性方面远远优于RS-485等工业总线,而且设计成本也不高,是目前国内外最普及和实时性最高的现场总线,采用这种方式实现多机通讯将是一个趋势。
  双端口或四端口RAM集成电路内部具有冲突仲裁电路,接口电路简单,便于操作,可用在数据交换率高、实时性强的场合,在实际中一些关键的参与控制的量可通过双端口RAM传递给需要的CPU控制器进来相应的控制。
  5.结论
  单片机作为智能单元越来越多地应用到复杂系统中的低层部分,进而对各个单元之间的多机通讯提出更要的要求。在设计单片机多机通讯时,需要从设计成本、数据交换量的大小、传输速度、抗干扰能力、软件实现的难易程度等方面综合考虑来选择合适的通讯方式,合理设计通讯的硬件和软件以获得高可靠性、强干扰能力和容错能力的系统。
  本文提出依靠单片机串口、利用CAN控制器构成CAN总线以及采用双端口RAM等三种方法来实现单片机控制单元之间的多机通讯,在实际中都有应用,在不同的场合效果都比较理想!
  参考文献:
  俞国亮MCS-51单片机原理与应用.北京:清华大学出版社,2008
  邬宽明.CAN总线原理和应用系统设计.北京:北京航空航天大学出版社,1996
其他文献
【摘 要】随着我国经济的发展和科学技术的不断提高,人们的生活水平越来越高,对自身居住环境也有了更高的追求,同时对城市地下管线的认识也不断的提高。我国最近几年积极的推进城市的地下管线的信息化建设,本文浅析城市地下管线探测与管理技术的发展与应用。  【关键词】城市地下管线;管线探测;管理技术;  一、前言  我国的城市地下管线探测技术已经由早期的摸黑进行,到了现在的利用国内外先进的仪器设备进行探测;人
期刊
【摘 要】高压输电线路中绝缘故障引起的断电次数较多,而输电线路的绝缘子是高压网络中绝缘的薄弱环节。绝缘子长期暴露在空气中,并长期工作在骤冷骤热、强电场、风吹雨打、潮湿、污秽物(酸、臭氧、灰尘等)的恶劣环境中,易出现绝缘强度降低、内部裂纹和污闪等故障。据统计,国内110kV以上的线路大多数都发生了不明原因的闪络,造成了输电线路绝缘性能下降,导致了重合闸动作失效,其所占电力系统故障的比例高达22%,对
期刊
【摘 要】作为桥梁工程施工中的一种重要技术,预应力技术具有显著的优势,在预应力混凝土结构施工作业过程中,要结合桥梁施工的实际情况,综合考虑多种因素,把握好预应力混凝土结构的施工工艺要点,加强对各个工序的控制力度,选取科学、合理的施工方法,这样才能使预应力的施工质量得到保障,提高桥梁工程质量。  【关键词】公路桥梁;预应力;施工技术  引言  近年来,我国对公路桥梁投资力度相继增大,预应力技术由于具
期刊
【摘 要】通过对LNG加气站工艺流程的对比,工艺设备的选型分析以及对工艺管道的保冷方式的论述,并结合杭州地区已建的某LNG加气站(下文简称“杭州LNG加气站”)相关工艺设计,对国内LNG加气站的工艺设计现状进行探讨分析,为LNG加气站工艺设计提出合理化方案。  【关键词】LNG;加气站;工艺设计;设备选型  一、引言  LNG 即液化天然气,是由天然气在常压下深冷至-162℃,由气态相变为液态的产
期刊
【摘 要】锅炉设备对人们的生活有十分积极的作用。但这种设备危险性高,假如安装操作不正确和检修不到位,易造成设备的故障,甚至发生爆炸。本文从锅炉安装的基本顺序分析,再对检修技术及过程进行研究和讨论。  【关键词】锅炉;安装;检修;技术  一、前言  对锅炉设备而言,安装和检修能有效实现工作目标。加强对设备的安装技术,探讨不同的检修策要,提高检修质量意识和整体的管理水平,才能使锅炉真正发挥其效用。  
期刊
【摘 要】低压配电系统中的接地故障一直都是核电站电气系统经常发生的问题。接地故障可能会造成电气火灾或是人身电击事故。因此,必须加强重视电气系统的保护。本文主要对电气低压配电系统中零序保护进行简要的分析概述。  【关键词】低压配电;系统;接地故障;零序保护  前言:  低压配电系统是核电站配电系统中很重要的组成部分,同时其负荷的数量及类型众多,而现阶段电气设计以及施工中往往存在着接地形式混乱、接地做
期刊
【摘 要】随着我国社会经济和煤炭工业的快速发展,煤矿井下运输系统也随之发生了巨大的变化,尤其是最近几年矿井井型正在向着大型化方向发展,皮带运输机运行状况的好坏,在生产环节中占有至关重要的地位。本文对煤矿皮带运输机实际运行中的常见的问题进行分析,并在此基础上提出一些处理措施,以供参考。  【关键词】煤矿;皮带运输机;故障;措施  一、前沿  皮带运输机作为煤矿生产中的一个重要作业设备,在煤矿生产过程
期刊
【摘 要】本文介绍了不锈钢塔盘焊接过程中,防止塔盘变形的一种方法,可供相关专业技术人员参考。  【关键词】不锈钢塔盘;焊接变形;水冷。  1、前言  当前化工行业蓬勃发展,各类石化设备产品的需求量也逐年增大。塔类设备中的塔盘塔在制作过程中,塔盘的安装质量是衡量装置达产率高低的一个前期评判的重要指标。在塔盘安装过程中,初始除了检查塔盘本身的水平度、孔隙边缘的毛刺、以及要求特别要的还要求塔盘表面的粗糙
期刊
【摘 要】小型农田水利工程建设是现代农业发展中最为基础的条件,也是实现农业可持续发展的关键性环节。本文分析其建设管理问题,探讨其控制对策。  【关键词】小型农田水利工程:建设;管理  引言  小型农田水利工程建设与管理已成为了我国农业经济发展的关键内容,属于农业发展的核心,在提升粮食产量、提高劳动人民生活水平、推动农业经济可持续发展等方面具有举足轻重的作用与意义。  1.小型农田水利工程建设的作用
期刊
【摘 要】电子器件在工作过程中故障时有发生,进行故障检测要采用科学的方法,检查、分析、判断和确定故障的具体部位及原因。因此,如何准确而有效的检测元器件的相关参数,排除电路中的故障就极为重要。  【关键词】电子元器件检测;问题;解决方法  引言  电子元器件的选择和应用方面的问题正在影响着元器件的性能继而影响整机的可靠性,这不仅仅是关系到国家国防相关的尖端科学研究和军事电子器件的可靠性问题,更是关系
期刊