




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第卷第期年月泰山学院学报,基于一总线的单片机多机通讯接口的设计与实现桑胜举”,张华,沈丁,安琦(泰山学院信息科学技术学院,山东泰安;华东理工大学动力学院,上海)摘要】本文阐述了主从式多机通讯的原理,提出了一种基于一串行通信接口的方案和软件设计方法针对计算机与系列单片机串行:的通讯特点,设置计算机中通讯控制寄存器,使计算机满足单片机多机通讯的格式。实现了计算机和单片机的多机通讯该方法已在实际应用中被广泛采用,并可推广应用于其他系统,对其他系统的硬件电路设计及程序设计具有一定的参考价值关键词】单片机;多机通讯;接口;中图分类号】【文献标识码【文章编号()一引言随着计算机技术和通讯技术的发展,在工业
2、过程控制、数据采集等领域,出现了利用计算机和单片机组成的主从式多机系统,以实现集中监控在这些系统中,单片机一般是充当从机(下位机),直接用于对所控制对象进行实时数据的采集、简单计算、判断和处理;而主机(上位机)则多采用微机(如系列),主要负责对各单片机进行综合管理,以实现测控系统的自动检测与控制当从机数过多,主机要不停地查询或响应从机的中断,并要在一定时间内等待和接收数据,因而严重影响到上位机的工作效率因此,如何根据系统的实际工作环境条件,选择恰当的通信接口和协议,合理设计通信硬件和软件,获得高可靠性、强抗干扰和容错能力,成为衡量此类系统好坏的最重要因素主从式多机通讯原理单片机通讯设置寄存器)
3、定时计数器工作方式寄存器为、他的工作方式寄存器,其格式如图所示()图寄存器的定义工作方式选择位定义如表所示)串行口控制寄存器用来控制串行的工作方式和状态,可以位寻址,字节地址为单片机复位时,所有位全为,其格式如图所示(收稿日期一基金项目泰山学院科研资助立项项日();泰安市大学生科技创新计划项目()作者简介桑胜举(一),男山东泰安人,泰山学院信息科学技术学院副教授泰山学院学报表寄存器的工作方式表第卷图的位定义各位的说明如表所示表寄存器的工作方式表单片机通讯功能系列单片机内部有一个功能很强的全双工串行口(),有两个独立的接收、发送缓冲器,可同时发送和接收数据发送缓冲器只能写人数据,不能读出;接收缓
4、冲器只能读出,不能写入,两个缓冲器占有一个地址根据表可知,串行口有种工作方式,其中方式和方式是用于多机通讯的工作方式,由控制,在方式和方式时,作为主、从式多机通讯的控制位,可实现主从通讯)发送发送时,先根据通信协议由软件设置,然后用指令将要发送的数据写入,启动发送器写的指令,除了将位数据送人外,同时还将装入发送移位寄存器的第位,并通知发送控制器进行一次发送一帧信息即从发送,在送完一帧信息后,被自动置,在发送下一帧信息之前,必须由中断服务程序或查询程序清)接收当时,允许串行口接收数据数据由端输入当接收器采样到端的负跳变,并判断起始位有效后,开始接收一帧信息当接收器接收到第位数据后,若同时满足以下
5、两个条件:;或接收到的第位数据为,则接收数据有效,位数据送入,第位送入,并置;若不满足上述两个条件,则信息丢失系列单片机主从式多机通讯原理主从式多机通讯系统是由台主机和多台从机组成的,主机发送信息可被多个从机接收,而从机只能对主机发送信息,从机问不能互相通讯其原理如图所示在通讯之前,先将主机地址发送给各从机,接着发送数据或命令一般可做如下约定:主机要发送地址帧信息时,程序设置;发送数据帧或命令时,使各从机可采用中断方式与主机通讯(应置)在无中断时,从机可进行各自的监控工作,不必随时对通讯线路进行监听,若主机向从机发送地址时,各从机收到的信息帧第位为,就使,执行中断服务程序。判断主机送来的地址是
6、否和本机地址符合,若符合,则置,且把本机地址回发给主机作为应答,之后接收主机的数第期桑胜举等:基于总线的单片机多机通讯接口的设计与实现据或命令;若不符,则保持的状态,不接收主机发送的数据或命令,继续处于监控状态,岭矗岸矗勺,矗彭矗图多机通信连接示意图主机接收到从机发回的应答信息后,比较发送的从机地址与接收的从机地址是否相符,若相符,则复位,开始发送命令信息,并接彬发送数据信息通讯结束后,使从机的,为再次通讯做准备串行口的波特率在串行通信中,通讯的波特率是指串行口发送或接受二进制数的速率在多机通讯中,发送端和接收端的波特率须设置相同,才能保证可靠的通讯单片机的方式的波特率是固定的,方式的波特率可
7、变,由定时器的溢出率决定】)方式设系统采用晶振的振荡频率为,在方式中,波特率取决于中的值,当时,波特率为;当时,波特率为。)方式在方式下,波特率由定时器的溢出率和共同决定即:,波特率溢出率二其中的溢出率取决于单片机定时器的计数速率和定时器的预置值计数速率与寄存器中的位有关,当时,计数速率为。,当时,计数速率为外部输入时钟频率实际上,当定时器做波特率发生器使用时,通常是工作在模式,即自动重装载的位定时器,此时作计数用,自动重装载的值在内设计数的预置值(初始值)为,那么每过一个机器周期,定时器溢出一次为了避免溢出而产生不必要的中断,此时应禁止中断溢出周期为:,溢出周期笋(一)溢出率为溢出周期的倒数
8、,所以系统波特率为:波特率。西瓦蒜下面一段小程序是系统工作在方式下的波特率设置程序:,。若采用的晶振,可知串行通信的波特率为系统的硬件设计由于计算机的串行口大多采用一标准,其电器特性与单片机的电平不同,如要互连,必须进行电平转换这种电平的转换有多种方式,可以采用标准的一电平转换器和泰山学院学报第卷来完成,也可以采用三极管等分立件组成电路进行电平转换,还可以利用集成的接口芯片进行电平转换,如公司的等】综合各种方式,为了增加通信距离,减少通道和电源干扰,可以在通信线路上采用光电隔离的方法,利用一标准进行双机通信,实用的接口电路如图所示缸图一双机异步通信接口电路发送端的数据由串行口端输出,通过反向驱
9、动,经光电耦合器送到驱动芯片的输入端,将输出的信号转换为符合一标准的差动信号输出,经传输线(双铰线)将信号送到接收端,接收芯片将差动信号转换为信号,通过反向后,经光电耦合器到达接收机串行口的接收端每个通道的接收端都有个电阻,为传输线的匹配电阻,取值在一之间,其他两个电阻是为了解决第一个数据的误码而设置的匹配电阻值得注意的是,光电耦合器必须使用两组独立的电源,只有这样才能起到隔离、抗干扰的作用机和单片机最简单的连接是零调制三线经济型这是进行全双工通信所必须的最少线路图给出了采用芯片的机和单片机串行通信接口电路,与机相连采用芯标准插座图机和单片机串行通信接口第期桑胜举等:基于一总线的单片机多机通讯
10、接口的设计与实现软件设计通讯软件设计多机通信的实现,主要依靠主、从机之间正确地设置与判断和发送或接收的第位数据(或)来完成的在编程前,首先要给各从机定义地址编号,如分别为、等在主机想发送一个数据块给某个从机时,它必须先送出一个地址字节,以辨认从机编程实现多机通信的过程如下:)主机发送一帧地址信息,与所需的从机联络主机应置为,表示发送的是地址帧例如:,棚;设串行口为方式,允许接收)所有从机初始化设置,处于准备接收一帧地址信息的状态例如:,;设串行口为方式,允许接收)各从机接收到地址信息,因为,则置中断标志中断后,首先判断主机送过来的地址信息与自己的地址是否相符对于地址相符的从机,置,以接收主机随
11、后发来的所有信息对于地址不相符的从机,保持的状态,对主机随后发来的信息不理睬,直到发送新的一帧地址信息)主机发送控制指令和数据信息给被寻址的从机其中主机置为,表示发送的是数据或控制指令对于没选中的从机,因为,所以不会产生中断,对主机发送的信息不接收检验技术由于数据传输是在强干扰的环境中进行的,而且传输距离又较远,为了保证数据能高速、准确传输,软件编程考虑对大批量数据进行分组传送,同时对每组数据进行校验,检查其准确性在发送端计算发送信息的值,并将它作为信息影帧的一部分传递给接收端;接收端将对接收到的信息进行计算,并与发送过来的进行比较,从而判断接收的信息是否正确口。软件跑飞的处理当串行口以方式或
12、方式工作时,置,此种情况下,仅当串行口接收到的第位数据为时,中断标志位才能激活;否则,不产生中断,信息被丢失但在实际工作中常因某台从机失去接收主机发出的地址数据的机会,或因某台从机不工作而使系统陷入“死循环”程序而不能正常工作就此问题,笔者根据实践经验提出了种有效的方法【¨)软件陷阱的设计当乱飞程序进入非程序区,冗余指令便无法起作用通过软件陷阱,拦截乱飞程序,将其引向指定位置,再进行出错处理软件陷阱是指用来将捕获的乱飞程序引向复位入口地址的指令通常在中非程序区填人以下指令作为软件陷阱:以上程序段的机器码为通常在程序中未使用的空间填最后一条应填入,当乱飞程序落到此区,即可自动入轨在用户
13、程序区各模块之间的空余单元也可填入陷阱指令当使用的中断因干扰而开放时,在对应的中断服务程序中设置软件陷阱,能及时捕获错误的中断考虑到程序存贮器的容量,软件陷阱一般空间有个就可以进行有效拦截)软件“看门狗”技术泰山学院学报 第30卷 "看门狗"技术可由硬件实现,也可由软件实现.在工业应用中,严重的干扰有时会破坏中断方式控 制字,关闭中断.则系统无法定时"喂狗",硬件看门狗电路失效.而软件看门狗可有效地解决这类问题. 5 结束语 近年来,随着单片机作为智能单元越来越多地应用到复杂系统中的低层部分,进而对多机通信提出 更高的要求,该RS一422工业总线开发模式
14、和扩展串行口的方法将成为读者的一种参考.该方法在电 力调度自动化模拟显示系统中都已得到应用,运行实践证明,具有稳定性好,抗干扰强,结构简单,编程 容易的优点. 【参考文献 1官波,容太平.A1189c5l的扩展串口与Pc机问的通讯J.国外电子元器件.2001(3:61-63. 2李华.MCS一51系列单片机实用接口技术M.北京:北京航空航天大学出版社,1993. 3何立民.单片机高级教程M.北京:北京航空航天大学出版社,2000. 4余国卫,陈俊生,张丽平,等.单片机串行通讯技术在数据采集系统中的应用J.微处理机,2005,8(4:94-96. 【s桑胜举,栾云才,徐萍.CRC检错码在CDT远
15、动规约中的研究及实现J.科技信息,2007,241(29:5-6. 6桑胜举,朱莉莉,沈丁.基于查表法的CRC检错码在CDT远动规约中的研究及实现J.泰山学院学报,2007,29(6:73-78 7桑胜举,王军.电力调度自动化系统中的单片机抗干扰技术J.科技资讯,2007,11(32:77-78. The Design and Realization of Multicomputer Communication between ,PC and SC:M Based SANG on RS一422 Bus Shengjul一,ZHANG Science Hual,SHEN Din91,AN Qi2
16、 (1.College of Information and Technology,Taishan University,Taian,271021; 2.School of Power Engineering,East China University of Science and Technology,Shanghai,200237,China Abstract:This paper describes the principle of muhicomputer communication,and also the hardware and software implementation m
17、ethod based cation format in accord with according to on RS一422 bus is given.To make Chip PC(Personal Computercommuni· PCg communication control register SCM(Single Microprocessor,we set the characteristic of PC and 805 1 series SCM communication interface.So we realize the multi computer commu
18、nication between PC and SCM.'11le approach introduced here has worked smoothly in practi cal application and is valuable for the designs of both hardware and software. Key words:SCM;multicomputer communication;RS一422 bus;805 1 万方数据 基于RS-422总线的单片机多机通讯接口的设计与实现 作者: 作者单位: 桑胜举, 张华, 沈丁, 安琦, SANG Sheng
19、-ju, ZHANG Hua, SHEN Ding, AN Qi 桑胜举,SANG Sheng-ju(泰山学院 信息科学技术学院,山东 泰安 271021;华东理工大学 动 力学院,上海 200237, 张华,沈丁,ZHANG Hua,SHEN Ding(泰山学院 信息科学技术学院,山 东 泰安,271021, 安琦,AN Qi(华东理工大学 动力学院,上海,200237 泰山学院学报 JOURNAL OF TAISHAN UNIVERSITY 2008,30(6 0次 刊名: 英文刊名: 年,卷(期: 引用次数: 参考文献(7条 1.官波.容太平 AT89C51的扩展串口与PC机间的通讯期刊
20、论文-国外电子元器件 2001(3 2.李华 MCS-51系列单片机实用接口技术 1993 3.何立民 单片机高级教程 2000 4.余国卫.陈俊生.张丽平.王向磊 单片机串行通讯技术在数据采集系统中的应用期刊论文-微处理机 2005(4 5.桑胜举.栾云才.徐萍 CRC检错码在CDT远动规约中的研究及实现期刊论文-科技信息(科学教研 2007(29 6.桑胜举.朱莉莉.沈丁 基于查表法的CRC检错码在CDT远动规约中的研究及实现期刊论文-泰山学院学报 2007(6 7.桑胜举.王军 电力调度自动化系统中的单片机抗干扰技术期刊论文-科技资讯 2007(32 相似文献(10条 1.期刊论文 王士
21、辰 51系列单片机多机通讯中"死循环"的产生和解决办法 -中州大学学报2002(2 本文分析了51系列单片机多机通讯产生"死循环"程序的原因,并给出了解决办法. 2.期刊论文 张惠群.卢学英.徐芳兰 IBMPC系列微机与8089单片机的多机通讯 -实验技术与管理2000,17(5 本文介绍了计算机多机通讯方法,讨论了实现该系统的组成及实现方法. 3.期刊论文 李大伟.李天博.刘昕 集散式数据采集系统多机通讯的设计与实现 -吉林大学学报(信息科学版 2003,21(3 提出了集散式数据采集系统多机通讯的实现方案.阐述了多机通讯原理及实现方法,硬件设计及软件
22、设计.其中的硬件是针对应用最广泛的MCS-51系 列中的8031单片机设计的.利用8031单片机串行口的多机通讯模式,构成集散式数据采集系统.从单片机进行数据采集及初级处理,而主单片机则汇总数据 并完成综合处理,同时还能根据情况随时向各个从单片机发出操作命令.采用RS-422A标准串行接口代替常用的RS-232C标准串行接口;采用差动接收,差动 发送的工作方式,提高了通讯可靠性.在软件上,把通讯数据分为数据帧和命令帧,分别传送.这有利于程序的模块化设计.该方法可以推广应用于其他系统 ,对其他系统的硬件电路设计及程序设计具有一定的参考价值. 4.期刊论文 谢敏.陆桂明.XIE Min.LU Gu
23、i-ming WINDOWS下PC机与单片机多机通讯的方法 -华北水利水电学院学报 2000,21(3 针对自行设计的集散型控制系统,介绍了在单片机中实现通讯的方法,以及如何在PC机和多台单片机之间利用可视化编程语言C+Builder,实现多机通 讯,并给出相应的程序. 5.期刊论文 杨家强.邓善熙.冯晓升.欧阳劲松 利用MSComm控件实现PC机与单片机的多机通讯 -仪器仪表标准化与 计量2002(4 目前,在通信领域里,一对一的通信方式已经远远不能满足人们设计的需要,多机通信已经成为通信控制领域的主流通信形式.多机通讯的实现方式有 许多种,本文提供了一种利用VB中MSComm控件强大的通信功能实现PC机与单片机之间进行多机通讯的解决方案. 6.期刊论文 宋晖 基于并行打印口的多机通讯 -兵工自动化2004,23(6 PC并行打印口与多台下位单片机的通讯,将接口分成数据,状态,控制三组,由其寄存器分别控制.用C语言函数outportb和inpo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 管线施工应急措施
- DB36T-颠茄规范化种植技术规程
- 老年皮肤课件
- 黑龙江省哈尔滨市第六十九中学校2024-2025学年七年级下学期3月考试语文试题(含答案)
- 继续教育粘贴发票
- 2025至2030年中国气动升降台市场分析及竞争策略研究报告
- 2025至2030年中国毛毛球行业发展研究报告
- 2025至2030年中国次高分子标准蛋白市场分析及竞争策略研究报告
- 2025至2030年中国横幅数据监测研究报告001
- 2025至2030年中国楔形弹力线夹数据监测研究报告
- 第二章田径15米折返跑教学设计人教版初中体育与健康八年级全一册
- 人教版小学数学六下第六单元《统计与概率》单元集体备课整体教学设计
- 《第3单元 角的度量:角的度量》课件
- 浙江省宁波市鄞州区2023 学年第二学期八年级科学期中考试试卷
- 手术前呼吸功能评估
- 户口未婚改已婚委托书
- 中华民族共同体概论课件专家版2第二讲 树立正确的中华民族历史观
- 2024年中国物流招聘笔试参考题库附带答案详解
- 2024年中国饰品行业发展状况与消费行为洞察报告-艾媒咨询
- 二甲双胍恩格列净片(Ⅲ)-临床用药解读
- 2024带病体保险创新研究报告
评论
0/150
提交评论