控制室屏柜物联网监护系统解读_第1页
控制室屏柜物联网监护系统解读_第2页
控制室屏柜物联网监护系统解读_第3页
控制室屏柜物联网监护系统解读_第4页
控制室屏柜物联网监护系统解读_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、控制室屏柜物联网监护系统提醒:垃圾文章,请勿抄袭摘要为了提高系统管理的先进性和安全性,在工业自动控制中需要实现控制室屏 柜的远程控制。本文研究通过物联网技术实现对多个屏柜的远程开关控制,并将当前状态反应给控制端。物联网技术是新一代信息技术,是在互联网技术基础上的延伸和扩展的一种 网络技术,其用户端延伸和扩展到了任何物品和物品之间, 进行信息交换和通讯 以实现智能化识别、定位、追踪、监控和管理。本文通过多台51单片机实现物联网技术,由一台作管理用的上位主计算机 (主机)和多台直接参与控制检测的下位从计算机(从机)构成的主从式多机系 统,利用单片机间串口通信实现主机与从机间通信。 同时设计了从机对

2、屏柜的门 控电路,从而实现在主机端即可控制多个屏柜。关键词:物联网,单片机,串行通信,控制室屏柜,门控系统iiiabstract4目录摘要iabstract ii前言11 .本课题选取的目的及意义 12 .本文主要工作1第一章串行通信部分11 .串行通信原理11.1 通信的种类91.2 通信参数91.3 工作模式31.4 同步通信与异步通信 42 .串口通信传输协议 52.1 iic总线传输协议 52.2 spi总线传输协议72.3 串口通信传输协议 92.3.1 80c51单片机的串行口的结构 92.3.2 80c51串行口的控制寄存器 102.3.3 80c51单片机串行口的工作方式 11

3、2.4 方案选取133 .主从通信系统设计 133.1 硬件原理图设计133.2 软件的编写14第二章从机电子锁部分2071.门控系统组成172.电控锁选择及其驱动电路设计 173.报警电路184.单片机电路 18第三章系统仿真20结束语208参考文献208附录208致谢208刖百在工业控制中,当工作人员对控制室进行检修时,需要对控制室屏柜开关进 行控制,并要及时获取屏柜开关状态。为了提高系统管理的先进性和安全性, 计 算机工业自动控制和检测系统越来越多地采用集总分散系统。较为常见的形式是 由一台作管理用的上位主计算机(主机)和多台直接参与控制检测的下位从计算 机(从机)构成的主从式多机系统,

4、主机和从机之间以通讯的方式来协调工作。 主 机的作用一是要向从机发送各种命令及参数;二是要及时收集、整理和分析从机发回的数据,供进一步决策和报表。从机被动地接收、执行主机发来的命令,并 且根据主机的要求向主机回传相应的实时数据,报告其运行状态1。1 .本课题选取的目的及意义物联网是新一代信息技术的重要组成部分,其核心和基础仍然是互联网,是 在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物品 与物品之间,进行信息交换和通信。物联网就是“物物相连的互联网”。物联网通过智能感知、识别技术与普适计算、泛在网络的融合应用,被称为继计算机、 互联网之后世界信息产业发展的第三次浪潮。单片

5、机开创了嵌入式系统独立发展道路,嵌入式技术是物联网技术最为关键 的底层技术,在单片机技术成熟发展的今天,物联网的兴起,给单片机提供一个 更为广大和宏伟的舞台,同时也给单片机提供了新的发展方向。随着计算机系统的应用和微机网络的发展,通信功能越来越显的重要,由于申行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送。因此,用串行总线技术可以使集总分散系统的硬件设计大大简化、系统的体积减小、可靠性提高。特别适合于远距 离传输。在实时控制和管理方面,采用多台微机处理机组成分级分布控制系统中,各cpu之间的通信一般都是串行方式。本次课题的设计所采用的方法是用串口

6、通信的方法来实现主从式总线通信 系统的。mcs-51系列单片机内部带有一个可用于异步通讯的全双工的串行通讯 接口,因此可以很方便地构成一个主从式多机系统。51单片机由于其出色的性能和便宜的价格,目前仍然是国内用的最为广泛的8位单片机类型,因此选取基 于51单片机的主从通信系统的设计与实现这个课题是十分有意义的。2 .本文的主要工作本次毕业设计的主要工作是利用 51单片机总线式主从通信系统,实现基于 主从总线的数据传送,利用主机控制从机,从机控制电子锁开关,并向主机返回 数据,从而实现对控制室屏柜的监护系统。为了方便起见,先设计一个一主两从 的通信系统,画出系统的硬件原理图,并且在此原理图的基础

7、上设计出软件实现 此功能。至于更加复杂的主从式多机系统的设计与实现可以在此系统的基础上进 行扩展实现。在本次控制室屏柜监护系统设计与实现过程中,要完成以下任务:(一)串行通信部分1 .了解用口通信的原理,选择合适的通信协议进行管理2 .设计主从式通信系统的硬件原理框图3 .设计通信系统硬件电路4 .串行通信软件程序设计与调试(二)从机电子锁控制部分1 .硬件电路设计2 .程序设计(利用中断)第一章串行通信部分1 .串行通信原理1.1 通信的种类10011101 + 10011101通常通信的形式可以分为两种,一种为并行数据通信,另一种则为串行数据 通信。两种不同的通信模式如图2-1所示。0位

8、1234567并行用行图2-1并行与串行由图1可知,并行数据通信一次的传输量为8个位(1个字节),而串行数据通 信则是一次只传输1位。并行数据通信是指数据的各位同时进行传送的通信方式。具优点是传送速度快;缺点是数据有多少位,就需要多少根传送线。申行数据通信是指数据是一位一位顺序传送的通信方式,它的突出优点是只 需一对传送线,这样就大大降低了传送成本,特别适应于远距离通信;具缺点是 传送速度较低。假设并彳t传送nb数据所需时间为t,那么串行传送的时间至少为n*t 6 01.2 通信参数双方为了可以进行通信,必须要遵守一定的通信规则,这个共同的规则就是 通信端口的初始化。通信端口的初始化有以下几项

9、必须设置:1 .数据的传输速率传输双方通过传输线的电压改变来交换数据, 但传输线的电压改变的速度必 须和接收端的接收速度保持一致,rs-232!常用于异步传输,即双方并没有一个 可参考的同步时钟作为基准。由于没有一个参考时钟,双方所发送的高低电位到 底代表几个位就不得而知了,要使得双方的数据读取正常,就要考虑到传输速率 波特率,其所代表的意义是每秒钟所能产生的最大电压状态改变率,或者说是每秒钟可以振荡的次数。原始信号经过不同的波特率取样后,所得的结果完全不一样。取样速度只有 原来的一半时,信号被跳着取样,数据因此产生错误。因此通信双方获得相同的 通信速度是首先要做的事情5。2 .数据的发送单位

10、一般用行通信端口所发送的数据是字符类型的,若用来传输文件,则会使用二进制的数据类型。当使用字符类型时,通常使用 ascii码,ascii码中8个位形 成一个字符。以实际的rs-232(专输来看,由于大多数应用只是发送文字码,因此 只要7个位就可以将ascii码的0-127号字符表达出来,所有的可见字符都在这个 范围内,所以只要7个数据位就足够了。不同的情况下,会使用到不同的发送单 位,但使用多少个位合成一个字节必须先行确定5 o3 .起始位及停止位由于异步串行通信中并没有使用同步脉冲作为基准, 故接收端完全不知道发 送端何时将进行数据的发送,而当发送端准备要开始发送数据时, 发送端会在所 送出

11、的字符前后分别加上高电位的起始位(逻辑0)及低电位的停止位(逻辑1),它 们分别是所谓的起始位和停止位。当发送端要开始发送数据时,便将传输在线的 电位由低电位提升至高电位,而当发送结束后,再将电位降至低电位。接收端会 因起始位的触发(因电压由低电位升至高电位)而开始接收数据,并因停止位的通 知(因电压维持在低电位)而确切数据的字符信号已经结束5。4 .校验位的检查为了预防错误的产生,因此使用校验位作为检查的机制;校验位是用来检查 所发送数据正确性的一种核对码,其中又分成奇校验位和偶校验位两种方式,分别是检查字符码中i的数目是奇数或偶数。以偶校验位为例,aascii码01100001 (二进制)

12、,其中1的数目是三个,因此校验位便是1,使1的数目保持偶数。同理, 校验位是奇校验位时,a的校验位便是0,使1的数目保持奇数5。1.3 工作模式数据传输查模式有单工、半双工、全双工和多工工作方式。单工方式时,数 据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于用行口的打印 数据传输与简单系统间的数据采集。半双工方式时数据可实现双向传送,但不能 同时进行,实际的应用采用某种协议实现收/发开关转换。全双工方式时允许双 方同时进行数据双向传送。这三种传输方式都是用同一线路传输同一种频率信 号,为了充分利用线路资源,可通过使用多路复用器或多路集线器,采用频分、 时分或码分复用技术,即可实现在

13、同一线路上共享功能,我们称之为多工传输方 式。几种传输方式框图如图2-2所示。从前往后依次为单工、半双工和全双工。图2-2二种传输方式不同的工作模式可以应用在不同的地方,也各有其优点。就串行通信而言,rs-232fg用的是全双工的模式。同时可以利用的传输线路决定了工作模式。rs-232之所以能达到全双工的功能,就是因为其引脚在设计上是接收与发送分属两 个不同的引脚与线路701.4 同步通信与异步通信异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 异步通 信以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时

14、间问隔)也是任意的,但每个字符中的各位是以固定的时间传送的。原理图如图2-3所示。发 送 设 备接收设备图2-3异步通信原理图同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同 步。止匕时,传输数据的位之间的距离均为 位间隔”的整数倍,同时传送的字符问 不留间隙,即保持位同步关系,也保持字符同步关系。发送方对接收方的同步可 以通过外同步和自同步两种方法实现7网。为自同步原理图如图2-4所示。数据图2-4同步通信原理图2.串口通信传输协议目前使用的比较广泛的申行总线传输协议有 iic总线传输协议、spi总线传 输协议以及rs-232总线协议。无论利用其中任何一种总线协议都可以设计

15、出一 个主从式总线通信系统。现在分别介绍其数据传输原理。2.1 iic总线传输协议iic总线是phlips公司推出的一种串行总线,是具备多主机系统所需的包 括总线裁决和高低速器件同步功能的高性能用行总线。iic总线只有两根双向信号线。一根是数据线sda,另一根是时钟线scl。iic总线通过上拉电阻接正电 源。当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平, 都将使总线的信号变低,即各器件的 sda及scl都是线 与关系同9。每个接到iic总线上的器件都有唯一的地址。主机与其它器件间的数据传送 可以是由主机发送数据到其它器件, 这时主机即为发送器。由总线上接收数据的 器件则为接

16、收器。在多主机系统中,可能同时有几个主机企图启动总线传送数据。 为了避免混乱,iic总线要通过总线仲裁,以决定由哪一台主机控制总线。数据的有效位规定:iic总线进行数据传送时,时钟信号为高电平期间,数 据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化,如图 3-1所示。图3-1 iic总线数据传输有效位原理图起始和终止信号:scl线为高电平期间,sda线由高电平向低电平的变化 表示起始信号;scl线为高电平期间,sda线由低电平向高电平的变化表示终 止信号,如图3-2所示。起始彳t号s图3-2起始信号和终止信号原理图起始和终止信号都是由主机发出

17、的, 在起始信号产生后,总线就处于被占用 的状态;在终止信号产生后,总线就处于空闲状态。连接到i2c总线上的器件,若具有iic总线的硬件接口,则很容易检测到起始和终止信号。接收器件收到一 个完整的数据字节后,有可能需要完成一些其它工作,如处理内部中断服务等, 可能无法立刻接收下一个字节,这时接收器件可以将sc域拉成低电平,从而使 主机处于等待状态。直到接收器件准备好接收下一个字节时,再释放scl线使之 为高电平,从而使数据传送可以继续进行。数据传送格式:(1)字节传送与应答每一个字节必须保证是8位长度。数据传送时,先传送最高位(msb,每一 个被传送的字节后面都必须跟随一位应答位 (即一帧共有

18、9位)。原理图如图3-3 所示。如果一段时间内没有收到从机的应答信号,则自动认为从机已正确接收到 数据。由于某种原因从机不对主机寻址信号应答时 (如从机正在进行实时性的处 理工作而无法接收总线上的数据),它必须将数据线置于高电平,而由主机产生 一个终止信号以结束总线的数据传送。如果从机对主机进行了应答,但在数据传 送一段时间后无法继续接收更多的数据时, 从机可以通过对无法接收的第一个数 据字节的“非应答”通知主机,主机则应发出终止信号以结束数据的继续传送。当主机接收数据时,它收到最后一个数据字节后,必须向从机发出一个结束传送 的信号。这个信号是由对从机的“非应答”来实现的。然后,从机释放sda

19、戋,以允许主机产生终止信号。图3-3 iic 字符传送格式(2)数据帧格式iic总线上传送的数据信号是广义的,既包括地址信号,又包括真正的数据 信号。在起始信号后必须传送一个从机的地址(7位),第8位是数据的传送方向 位(r/t),用“0”表示主机发送数据(t) , “1”表示主机接收数据(r)。每次数 据传送总是由主机产生的终止信号结束。但是,若主机希望继续占用总线进行新的数据传送,则可以不产生终止信号,马上再次发出起始信号对另一从机进行寻 址。在总线的一次数据传送过程中,可以有三种组合方式:第一是主机向从机发 送数据,数据传送方向在整个传送过程中不变。第二是主机在第一个字节后,立即从从机读

20、数据。第三种刚是在传送过程中,当需要改变传送方向时,起始信号 和从机地址都被重复产生一次,但两次读/写方向位正好反相。iic总线的寻址是采用7位的寻址字节(寻址字节是起始信号后的第一个字 节)。2.2 spi总线传输协议spi的通信原理非常简单,它以主从方式工作,这种模式通常有一个主设备 和多个从设备。其中cs信号是控制从机的芯片是否被选中的。如图 3-4所示, 系统内有一个主设备m1和两个从设备s1与s2。当s1的片选信号cs为低电平 时,s1被选中,m1通过mosi引脚发送数据,s1通过mosi引脚接收数据, 或者s1通过miso引脚发送数据,而 m1通过miso引脚接收数据。同样的, 当

21、s2的片选信号cs为低电平时,s2被选中,m1通过mosi引脚发送数据, s2通过mosi引脚接收数据,或者s2通过miso引脚发送数据,而 m1通过miso引脚接收数据。从机只有通过 cs信号选中之后,对此从机的操作才会有 效,可见,片选信号的存在使得允许在同一总线上连接多个spi设备成为可能。当从机芯片被选中,和主机建立连接之后,接下来就是负责通讯的3根线了。通讯是通过数据交换完成的,这里首先要知道 spi是串行通讯协议,也就是说 数据是一位一位进行传输的。这就是 sck时钟线存在的原因,传输时,由sck 提供时钟脉冲,mosi, miso则基于此脉冲完成数据传输。如图 3-4所示,当 m

22、1给s1发送数据时,数据从 m1输出通过mosi线,数据在时钟脉冲的上升 沿或下降沿时输出,在紧接着的下降沿或上升沿通过s1的mosi线被读取。当s1给m1发送数据时,原理是一样的,只不过通过的是 miso线来完成10。图3-4 spi传输原理图要注意的是,sck信号线只由主设备控制,从设备不能控制时钟信号线。 因此,在一个基于spi的系统中,必须至少有一个主控设备。在点对点的通信 中,spi接口不需要进行寻址操作,且为全双工通信,显得简单高效。在多个从 设备的系统中,每个从设备需要独立的使能信号,硬件上比 iic系统要稍微复杂 一些。spi是一个环形总线结构,其时序其实比较简单,主要是在时钟

23、脉冲sck的控制下,两个双向移位寄存器 spidata进行数据交换。我们假设主机的8位 寄存器spidata1内的数据是10101010,而从机的8位寄存器spidata2内的 数据是01010101,在上升沿的时候发送数据,在下降沿的时候接收数据,最高 位的数据先发送,主机和从机之间全双工通信,也就是说两个spi接口同时发送 和接收数据,如图3-5所示。从图中我们也可以看到,spidata移位寄存器总 是将最高位的数据移出,接着将剩余的数据分别左移一位,然后将接收到得数据 移入其最低位11oscksckmiso.misomosimosicscsm110101010msbspidatailsb

24、01010101msbspidatailsb图3-5 spi主从工作模式示意图如图3-6所示,当第一个上升沿来的时候,spidata1将最高位1移除,并 将所有数据左移1位,这时mosi线为高电平,而spidata2将最高位0移出, 并将所有数据左移1位,这样miso线为低电平。然后当下降沿到来的时候, spidata1将锁存miso线上的电平,并将其移入其最低位,同样的,spidata2 将锁存mosi线上的电平,并将其移入最低位。经过 8个脉冲后,两个移位寄 存器就实现了数据的交换,也就是完成了一次 spi的时序11。1010 10100101010110 1 0 1 |0 1 0 |x*

25、00 10 10 10 01010 101x110101011第一个脉冲1 上升沿第一个脉冲下降沿图3-6数据传输示例2.3 串口通信传输协议由于本次设计的题目是基于8051单片机的主从式通信系统的设计,因此 有关串口通信的原理的介绍都是围绕 51单片机讲解的。2.3.1 80c51单片机的串行口的结构mcs-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器 (sbuf),这两个在物理上独立的接发送器,既可以接收数据也可以发送数据。 但接收缓冲器只能读出不能写入,而发送缓冲器刚只能写入不能读出。这个通信 口既可以用于网络通信,亦可以实现串行异步通信,还可以构成同步移位寄存器 使用

26、。如果在传行口的输入输出引脚上加上电平转换器,就可以方便地构成标准的rs-232接口同12。80c51单片机的用行口的结构如图 3-7所示。图3-7 80c51单片机的用行口的结构用行口有两个物理上独立的接收、发送缓冲器 sbuf,它们占用同一地址 99h ;接收器是双缓冲结构;发送缓冲器,因为发送时 cpu是主动的,不会产 生重叠错误。2.3.2 80c51串行口的控制寄存器1 .特殊功能寄存器sconscon一个特殊功能寄存器,用以设定用行口的工作方式、接收 /发送 控制以及设置状态标志,字节地址为98ho sconj存器的各位定义如表3-1所示。位76543210字节地址:98hm0sm

27、1sm2s enrb8tb8r it ir s con表3-1 scon寄存器sm价口 sm1为工作方式选择位,可选才四种工作方式,如表 3-2所示m0sm1s 7 式亍 说明波特率000移位寄存器fosc/1201110位异步收发器(8位 数据)口艾10211位异步收发器(9位 数据)fosc/64 或fosc/3211311位异步收发器(9位 数据)口艾表3-2串口通信4种工作方式sm协多机通信控制位,主要用于方式 2和方式3。当接收机的sm2=1时可 以利用收到的rb8来控制是否激活ri (rb40时不激活ri,收到的信息丢弃; rb41时收到的数据进入sbuf并激活ri,进而在中断服务

28、中将数据从 sbuf 读走)。当sm2=0寸,不论收到的rb8为0和1,均可以使收到的数据进入 sbuf 并激活ri (即此时rb8不具有控制ri激活的功能)。通过控制sm2可以实现多 机通信。在方式0时,sm数须是00在方式1时,若sm2=1则只有接收到有效停 止位时,ri才置1。rente允许申行接收位。由软件置 ren=1则启动用行口接收数据;若软件 置ren=0则禁止接收。tb8用在方式2或方式3中,是发送数据的第九位,可以用软件规定其作用。 可以用作数据的奇偶校验位,或在多机通信中,作为地址帧/数据帧的标志位(在 方式0和方式1中,该位未用)。rb8用在方式2或方式3中,是接收到数据

29、的第九位,作为奇偶校验位或地 址帧/数据帧的标志位。在方式1时,若sm2=0则rb8是接收到的停止位。ti,发送中断标志位。在方式0时,当串行发送第8位数据结束时,或在其 它方式,用行发送停止位的开始时,由内部硬件使 ti置1,向cp3中断申请。 在中断服务程序中,必须用软件将其清 0,取消此中断申请。ri,接收中断标志位。在方式0时,当串行接收第8位数据结束时,或在其 它方式,用行接收停止位的中间时,由内部硬件使 ri置1,向cp3中断申请。 也必须在中断服务程序中,用软件将其清 0,取消此中断申请702 .特殊功能寄存器pconpcon勺字节地址为87h,它白第7位smoig与用口通信波特

30、率的设置有关 的选择位。smod(pcon.乃波特率倍增位。在用行口方式1、方式2、方式3时, 波特率与smodc关,当smod=时,波特率提高一倍。复位时,smod三02.3.3 80c51单片机串行口的工作方式1 .方式0设置scon寄存器的sm0、sm1=0 0时,用行口工作于方式0。此时,申 行口为同步移位寄存器的输入输出方式。 主要用于扩展并行输入或输出口。数据 由rxd(p3.0)引脚输入或输出,同步移位脉冲由 txd(p3.1)弓i脚输出。发送和接 收均为8位或据,低位在先,高位在后。波特率固定为 fosc/12 o其中fosc为 时钟频率。2 .方式1设置scon寄存器的sm0

31、、sm1=0 1时,用行口工作于方式1。方式1是 10位数据的异步通信口。txd为数据发送引脚,rxm数据接收引脚,传送一帧 数据的格式如图所示。其中1位起始位,8位数据位,1位停止位。用软件置renfe 1时,接收器以所选择波特率的16倍速率采样rxd5i脚电平,检测到rxd 引脚输入电平发生负跳变时,则说明起始位有效,将其移入输入移位寄存器,并 开始接收这一帧信息的其余位。接收过程中,数据从输入移位寄存器右边移入, 起始位移至输入移位寄存器最左边时,控制电路进行最后一次移位。当 ri=0, 且sm2=0(或接收到白停止位为1)时,将接收到的9位数据的前8位数据装入 接收sbuf第9位(停止

32、位)进入rb8,并置ri=1,向cpu青求中断。方式一 的输入输出图如图3-8、3-9所示。写入sbuftxd5!5ki0xd1xi2xd3xd4x15x16x17xiiiti (中断标志)图3-8方式1输入位采样脉冲rxd起9ecd2x33xd4xd5xd6x37v 停止位口所 皿口 run nnn nnn nnn rmn nnn nnn nmiri (中断标志)图3-9方式1输出3 .方式2和方式3设置scon寄存器的sm0、sm1 = 1 0时,用行口工作于方式 2,当sm0、 sm1 = 1 1时,用行口工作于方式3。方式2或方式3为11位数据的异步通信口。 txd为数据发送引脚,rx

33、m数据接收引脚。方式2和方式3时起始位1位,数据9位(含1位附加的第9位,发送时为 sco即的tb8,接收时为rb3,停止位1位,一帧数据为11位。方式2的波特 率固定为晶振频率的1/64或1/32 ,方式3的波特率由定时器t1的溢出率决定。方式2和方式3输出:发送开始时,先把起始位0输出到txd引脚,然后发 送移位寄存器的输出位(d0)到txd引脚。每一个移位脉冲都使输出移位寄存器 的各位右移一位,并由txd引脚输出。第一次移位时,停止位“ 1”移入输出移 位寄存器的第9位上,以后每次移位,左边都移入00当停止位移至输出位时, 左边其余位全为0,检测电路检测到这一条件时,使控制电路进行最后一

34、次移位, 并置ti=1 ,向cpu青求中断。发送时序图如下图 3-10所示。写入sbuftxd停止位ti (中断标志)图3-10方式2或方式3的发送时序图方式2和方式3输入:接收时,数据从右边移入输入移位寄存器,在起始位 0移到最左边时,控制电路进行最后一次移位。当 ri=0,且sm2=0(或接收到的 第9位数据为1)时,接收到的数据装入接收缓冲器 sbu对rb8(接收数据的第 9位),置ri=1,向cpu青求中断。如果条件不满足,则数据丢失,且不置位ri, 继续搜索rxd5i脚的负跳变。接收时序图如图 3-11所示。rxddxddrxdxcdocxxcdtxs位采样脉冲十加 1t口阳 fui

35、r rwrn am nnn inn nrm 1m mr rm mari (中断标志)图3-11方式2或方式3的接收时序图2.4方案选取就三种数据传输协议的方式来看,串口通信是这三种方式中最为简单也是最 好实现通信方式的一种。因为 mcs-51单片机内部有一个全双工的串行通信口, 而一般的51单片机不带iic总线接口和spi总线接口。要想使用这两种传输方 式进行数据传输的话,必须要使用软件模拟。而且主机从机要是都是51单片机的话,实现起来的难度就会非常的大。另外,虽然iic和spi比uart更加强大, 但是在技术上也在更麻烦一些。同时iic的抗干扰能力较弱,一般用于同一板卡 上芯片之间的通信,较

36、少用于远距离传输。所以无论是从设计的难易程序来考虑, 还是从本次设计的实际情况来看,采用用口通信的方式实现51单片机的主从式通信是最合适不过的了,除了实现主机与从机间的串口数据传送外, 还实现从机 到从机的串口数据传送的功能91112o3.主从通信系统设计主从通信系统的设计不仅包括系统的硬件原理图设计,还包括基于硬件基础 上的软件代码的编写。本文首先设计出主从通信的硬件原理图, 然后再编写出了 相应的代码。3.1 硬件原理图设计关于51单片机的主从式通信系统的硬件设计的原理框图是很容易的。本次 设计主要是一个主机和两个从机进行通信。因此,主要需要三个单片机作主从机, 另外设计一些外围硬件电路来

37、实现这个主从式通信系统mcs-51单片机的第10号管脚rxd可用于申行数据的接收,第11号管脚txd可用于申行数据的发送。 因此,可以将主机的txd管脚与从机的rxd相连接,以实现主机发送数据从 机接收数据的功能。而主机的 rxd与从机的txd相连接,以实现从机发送数 据主机接收的功能。同时也可以实现从机与从机之间的数据通信。根据上面的原理框图设计具体的硬件原理图时, 如果只是简单的这样连线的 话,就会遇到一些问题。其一:当单片机处于待机状态时,单片机的各个i/o 口被默认为是高电平,而当主机与一个从机进行通信,另一个从机不工作的话,传 输线上的信号就会受到另一从机的影响,最终数据传送会发生错

38、误。其二:主从式的通信要实现的是主机与从机以及从机与从机之间的通信。其中包括主机与两 个从机同时通信,主机与单个从机通信(另一个从机处于待机状态) ,从机与从 机之间的通信。如果只是单纯的连接主机与从机之间的 rxd与txd信号线是 无法实现的114。为了解决上述所提到的问题,可以设计一些硬件电路来实现。关于主从机之 问信号的影响,可以在信号端加上三态门电路,当某个从机不进行工作时,可以 设置三态门呈高阻态的状态,这样从机之间就不会相互的影响了。 同时,关于三 态门的控制,可以设计成主机控制,这样要想实现各种形式的通信都可由主机控 制了。本次设计采用74hc245芯片作为三态们器件。具体的电路

39、原理图如图4-1 所示。图4-1硬件原理图3.2 软件的编写主从式通信系统包括主机与从机之间的通信,以及从机与从机之间的通信。 因此,在编写程序进行数据信号传输时,必须考虑到各种情形。同时,如果想要 系统具有实时性,数据信号则必须是可变的。数据的可变不仅包括数据的内容, 还应该包括数据的长度。关于各种情形的通信,程序设计时,可以设计一种通信协议,采用不同的控 制命令字进行通信控制,同时也可规范的管理数据之间的传送。 我们可以将一组 特殊的,用的比较少的数据用来当成控制命令字。例如,本次设计采用如下控制命令:0xaa表示主机给从机1发送数据,0xbb表示主机给从机2传送数据,0xcc 表示从机1

40、给主机传送数据,0xdd表示从机2给主机传送数据,0xee表示从机 1给从机2传送数据,最后0xff表示从机2给从机1传送数据。本次设计所设计的通信协议为:主机首先给所有的从机发送一个控制命令 字,从机接收到这个控制命令字后进行辨认,如果是 0xaa则从机1准备接收主 机的数据,从机2处于待机状态,而主机则会在发送完前面的控制命令字后发送 在传送的数据信号。当主机发送的是 0xbb控制命令字时,主机在发送完控制命 令字后发送要传送的数据信号,此时从机1处于待机状态,从机2接收主机发送 来的数据。如果从机接收到的是 0xcc,则主机在发送完控制命令字后就准备接收从机1发送来的数据信号,从机2处于

41、待机状态。当主机发送的是 0xdd控制 命令字时,则主机在发送完控制命令字后就准备接收从机2发送来的数据信号,从机1处于待机状态。主机发送的如果是 0xee或者是0xff控制命令字时,则表 示从机与从机之间进行数据通信, 此时,数据首先由从机传送给主机,再由主机 传送给另外一个从机。另外,对于主从机之间发送的数据,有可靠传输方式和不可靠传输方式。 所 谓不可靠传输方式,就是发送端与接收端之间没有任何关系, 发送端只管发送数 据,接收端只管接收数据。到于数据在传送时有没有发生错误, 接收端是不会知 道的。这种传输模式的优点是相对于可靠传输而言,传输速率要更高。缺点就像其名字一样,数据传送不安全。

42、对于要求高准确率的数据通信系统, 更多的采用 可靠传输。所谓可靠传输,就是发送端在发送一组数据后,在数据的最后加上一 个校验码,而接收端在接收数据时,不仅接收数据,而且还要进行计算,最后与 发送端发送的校验码进行对比,如果两个校验码一致,则表示数据是正确的。如 果不一致,则放弃接收到的数据。发送端重新发送数据,进而重复上面的过程, 直到数据信号发送正确为止。本次设计采用可靠传输方式。在上述的所有通信过程中,当每次数据传送结束后,接收机在接收完所有的 数据后会进行一次求和校验,这样可以检验数据传送的成确与否。如果所得的求 和信与发送机发出的求和校验码一致时,则表示数据发送正确,可以接收并存储。

43、如果所得的求和信与发送机发出的求和校验码有一致时, 则表示数据发送时出现 错误,接收机丢弃所接收的数据,并命令发送机重新发送数据。编写软件代码时,首先得弄清楚程序流程图。只有清楚了软件流程图,再根 据流程图进行编写代码,才不会出现大的错误。本次设计采用一个单片机作主机, 两个单片机作从机进行主从通信, 具体程序流程如图4-2、图4-3、图4-4如下所 示。其中具体程序见附录。图4-2主机程序流程图37图4-3从机1程序流程图图4-4从机2程序流程图第二章从机电子锁部分1 .门控系统主要组成一个完整的门控系统如下图所示,由单片机、电源指示、工作指示、振荡电路、蜂鸣器电路、门控锁电路、4x4矩阵键

44、盘、读卡模块、显示模块组成。如图1示:图1电路原理图2 .电控锁的选择及其驱动电路设计电控锁是门控系统中锁门的执行部件。根据门的材料、出门要求等需求选取不同的锁具。主要有以下两种种类型:阳极锁:阳极锁是断电开门型,符合消防要求。它安装在门框的上部。与电磁锁不同的是阳极锁适用于双向的木门、玻璃门、防火门,而且它本身带有门磁检测器,可随时检测门的安全状态。阴极锁:一般的阴极锁为通电开门型。适用单向木门。安装阴极锁一定要配备 ups电源。因为停电时阴锁是锁门的。“阳极锁”的一种停电开门的电锁。切断电源,电锁会自动打开。由于此设计是基于单片机,提供了备用电源,故排除了此种情况, 而且电插锁大多都是用于

45、双向开关门的门控系 统中,本设计门控系统仅仅是单向开门即可。采用门磁+阴极锁的方案,为了符合消防要求,在单片机io 口可设置消防联动接口。在驱动电路中,用单片机三极管控制继电器进行电锁 的电源通断,电路原理如图。在正常闭门情况下,控制电路是不对电控锁供电的,单片机 p2.3 口发出开门信号时候即当 doo暨低电平时,经单片机控制三极管来驱动电源继电器接 通而使得电控锁的电源接通,电磁锁接通指示灯d8亮,实现开门功能。电路基本原理见下图2。rl1g4w-1114p-12v接电锁12v电源接电锁rmdoord8图2q1ztx704电控锁驱动电路led-green3 .报警电路此电路设计相当简单可以

46、实现简单的提示及报警功能,由单片输出一开关信号至三极管,触发三极管以实现此功能。如下图 3所示。pfebq2ztx704d1led-greenls1囚xspeaker图3报警提示电路4 .单片机电路单片机是整个设计的控制器的核心,完成整个控制器的控制功能,包括键盘的输入、液晶屏幕的显示、数据的存储和运算、数字信号的输出等功能。crys-22p03 - x22233 01d1edled-r1918x xtal1xtal222po4rst 9rstp0.0/ad0p0.1/ad1p0.2/ad2p0.3/ad3p0.4/ad4p0.5/ad5p0.6/ad6p0.7/ad739d0238d1337

47、d2436d3535d4634d5733d6832d791rp1respack-8rst2930311kpsen aleear10100 r9中1.12中1.23甲1.34甲1.45甲1.56t1.67t1.7 8p1.3p1.4p1.5p1.6p1.7p1.0/t2p1.1/t2exp1.2p1.01p2.0/a8p2.1/a9p2.2/a10p2.3/a11p2.4/a12p2.5/a13p2.6/a14p2.7/a15p3.0/rxdp3.1/txdp3.2/int0p3.3/int1p3.4/t0p3.5/t1p3.6/wrp3.7/rd22rw:23e, 21 rs252627281

48、0111213doorrst sclk=-iofire alarmd 0b a14 pianxuan1516 doorcontact17beepu1at89c52图4单片机管脚及其分配图单片机的p0、p1、p2、p3均为双向输出口,由于此设计使用的单片机的管脚较多,如 上图所示在设计中比较合理的分配了:其中 p1 口为键盘与单片机的通讯接口;p0和p2.0p2.2 口为单片机与1602液晶显示器 d0d7的数据通讯接口,p2.3是输出至门锁驱动电路的接口, p2.4p2.6是与实时时钟芯片 ds1302的连接接口, p3.0至u p3.3是单片机与 cd4067的输出接口,其中 p3.3是向c

49、d4067w出的片选信号,p3.7是输出报警或提示蜂鸣 器的信号接口。第三章系统仿真根据上面的原理设计好硬件原理图和编写好软件代码后,可以在proteus仿真软件上进行仿真了。为了得到明确可见的仿真结果,本次设计将主从机之间的 数据信号进行传送时,将接收到的数据信号利用数码管显示出来。这样就可以一 目了然的知道仿真结果的正确性了。具体的仿真原理图如图5-1所示。网低 工qulv1 3刘 bjinn j3j-pttt dzixe 3.iito ”gxpp1j pi4 15 pu f1j 91工 ri.vrer piim.卬- 13b xthppubh.ijmbi,叩加52- -xtwlzn3wv

50、qwi#i- 帕尔格14rligftw-retnjtp2mp3w ft*. ui p23p.11 f 工 ajp.11 p2s#h 月*jd i2j*w3671 谣fmflld inratmwr pajimii p33zt1 ,弱硬苴嚏浸:诲h整 9.12 1级11 #zid ip7iaa 42喝xtmi阳6时 pofiah k.k eqlapd jiuad oockmu 里通口 1-比年*jjftti ”lrm ”.*e 5j3-wttj*3.1ars?.l3 匚51 .i *2nin*im901 %口 t 不陋e hoh poladd 也涮口jeaj2&: 力pljplplf 1p1g n

51、cliabl 不皿ml图5-1仿真原理图在proteus仿真软件上连接好原理图后,将所写的主机和从机程序装入单片 机中,然后一一进行仿真调试。本次程序编写时,主从机之间发送的数据和从机 与从机之间发送的数据都为 0xfc、0x60、0xda、0xf2、0x66、0xb6、0xbe、0xe0、 0xfe、0xf6。这是因为这些数据数码管上显示时分别为0到9,这样可以使传送的数据直观的显示出来。例如主机给从机1发送数据,仿真瞬时结果如图5-2所示。其它情形的通信仿真结果由于与上面的情形差不多,在此就不详述。pf l.lp3国脚rpiep15pl,p3jantipofl32fln1tp12p3jhx

52、dp1.vt2exflle/rxop1.dt2p2j61i.理的3前f2.it2mep2mmip8en股如口p2.wp24wpdjmdtrstf0ad5皿曲dipq-djxtal2pd2.d2皿信口 1口呼口口xtojl1 1stsehns:僦聚s皿一聚器ses- 9 rllr-at - t 图5-2主机给从机1发送数据仿真图从仿真结果可以看出,无论是主机给从机之间通信,还是从机之间的通信, 都能在仿真软件上得到正确的结果。 所以可以肯定,此次设计的硬件和软件都是 满足要求的。结束语1王伟,郑金奎.mcs-51单片机主从式多机系统实时通讯的实现j.西南自动 化研究所,1998年第3期p39 3

53、4.2陈卫兵.iic总线协议在80c51单片机上应用的实现j.阜阳师范学院学报, 第19卷第3期p52- 54.3惠明琳.基于单片机的 usb主从机的设计与实现d.电子科技大学,20074易志明等.spi总线在51系列单片机系统中的实现j.天津大学,精密仪器 与光电子工程学院,天津 300072.5姚志成.单片机多机通信协议的设计j.中国核心期刊(嵌入式与soc),2006 年第22卷第2期.6范逸之等.visual basic与rs-232串行通信控制m.最新版.北京:北京 航空航天大学出版社,2002.7张明锋.pic单片机入门与实践m.北京:北京航空航天大学出版社,2004.8张传新,徐少杰.pc机与mcs-51单片机主从多机通信控制程序的研究j. 伊图里河分局研究所,铁路计算机应用第5卷第2期p10-12 .9何晓红,谭兵.pc机与多台单片

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论