毕业设计单片机患者自动呼救系统.doc

上传人:文库蛋蛋多 文档编号:4149457 上传时间:2023-04-07 格式:DOC 页数:57 大小:503.50KB
返回 下载 相关 举报
毕业设计单片机患者自动呼救系统.doc_第1页
第1页 / 共57页
毕业设计单片机患者自动呼救系统.doc_第2页
第2页 / 共57页
毕业设计单片机患者自动呼救系统.doc_第3页
第3页 / 共57页
毕业设计单片机患者自动呼救系统.doc_第4页
第4页 / 共57页
毕业设计单片机患者自动呼救系统.doc_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《毕业设计单片机患者自动呼救系统.doc》由会员分享,可在线阅读,更多相关《毕业设计单片机患者自动呼救系统.doc(57页珍藏版)》请在三一办公上搜索。

1、摘 要计算机通讯技术在病房呼救系统中的应用,为医护人员及时掌握突发急病患者、高危患者的准确呼救信息,对迅速到达现场实施抢救提供了技术保障,尤其是无人陪护的疾病患者。对于普通患者的呼叫,也能得到及时的护理,以免延误治疗的最佳时间。此外,它也为提高医院的护理水平,减轻护士的劳动强度、提高病人的舒适度,实现医院医疗管理体系提供了技术支持。本文设计研究了患者自动呼救系统。在单片机最小系统的基础上,扩展了相应的外部电路。系统具有检测、显示、报警等功能,能够确定房间数和每个房间的床位。设计出了下位机与上位机通讯的接口电路。在每层病房设立护士值班室,用于监测本层的病房发出的呼救信号,以便采取相应救护措施。在

2、住院处总部装有护理总机,作为值班记录和用于记录发生事故的时间和床位号。当患者有呼救请求时,通过拉动呼救按钮,护士值班室的LED显示屏显示房间号和床位号,并发出报警响声,护士按下复位按钮后,去病房执行护理任务。以上信息可通过与护理总机相连的总线传送给护理总机的上位机,以便记录和查询。系统由护士总站和护士分站两部分组成。关键词:AT89C51;呼救系统;LED显示器;并行I/O口扩展 , , , , , , , , . , , , , , , . , , . , , ; , , , , . For , , , , , , , LED , , , , . , . :AT89C51; ;LED ;I/

3、O 目 录第1章 绪 论11.1 医院患者自动呼救系统的产生11.1.1 呼救系统的产生11.1.2 单片机在呼救系统中的应用11.2 自动呼救系统的发展与应用2第2章 方案论证3第3章 硬件电路设计53.1 中央处理器AT89C5153.1.1 AT89C51的功能简介53.1.2 AT89C51的最小系统93.1.3 带手动复位的看门狗复位电路103.2 8155并行I/O接口扩展芯片的应用113.2.1 8155芯片的结构123.2.2 8155芯片的引脚功能123.2.3 8155的RAM和I/O口的编址143.2.4 8155的工作原理153.2.5 AT89C51和8155的接口方

4、法和应用193.3 蜂鸣器报警电路设计203.4 键盘显示器电路设计213.4.1 显示器电路设计213.4.2 键盘复位电路设计253.5 PC机与单片机的串行通信接口273.6 检测电路设计293.7 系统硬件的总体实现29第4章 系统的软件设计314.1 系统程序整体设计314.2 系统的初始化程序设计324.3 系统的循环检测程序设计334.4 呼救显示报警和按键复位程序设计34第5章 结 论36参考文献37致 谢38附 录39附 录49第1章 绪 论1.1 医院患者自动呼救系统的产生1.1.1 呼救系统的产生医院患者呼救系统就是利用电子电路实现的呼叫系统,呼叫系统的基本功能就是通过一

5、种简便的途径使护理对象与医护人员达成沟通。喊话是一种沟通,护理对象大声呼叫护理员,就是一种最直接的呼叫体现。但有时,护理对象因疾病或体力,未必能发出响亮的呼叫,即使可以发出响亮的喊声,护理员因不在附近,也未必能够听得到,因此,靠直接喊话达成沟通,并不是一个理想的途径。于是,有人想到用打铃的方式进行呼叫,这就相当于小学生课间十分钟休息结束后,往往是铃声宏亮地响几下,大家便获得了信号,知道要上课了。只不过,学校打铃是一对多的呼叫(一个铃声通知所有学生),而医院需要的是多对一的呼叫,即若干个护理对象发出呼叫,由一个或几个护理员获得信息。这个就是最简单的呼叫模型。于是,有人想到通过一个简单的模拟电路实

6、现这样的功能,如一个床位设一个开关,将这个开关与护理站的铃声或灯光一一对应,当护理对象有事情找护理员时,只要拉一下开关,护理站就有对应的声音或灯光闪烁,护理员一看就知道有人呼叫了。其实,这就是最简单的一套呼叫系统,目前在许多老式的医院仍然可以看到。1.1.2 单片机在呼救系统中的应用随着医院规模的扩大,这种简单的模拟电路也有问题,一是当床位数足够多时,护理站要安装这样一个显示板需要占很大的空间,而且布线费事,样子也不会好看。于是人们开始基于这种想法开发各种新型的产品,其目的就是使呼救系统布线简易、外型美观、功能实用。于是,人们把单片机应用在呼叫系统中。现在出现了许多类似的产品,这些产品大多具有

7、这样的功能,即护理对象启动呼救时方便容易,并且心理体验要好,而护理站确保能够收到每一个信号。市场上各家公司目前都解决了这个问题,即护理对象按一下或拉一下按键,护理站护理主机上可方便显示哪一床发生呼叫。有的为了方便护理员及时了解情况,又设置了对讲功能,即护理员可以和护理对象进行通话。有的呼救系统为了方便护理员方便看到呼救信息,又考虑在走廊上添加了显示吊屏,在房间门口安装了报警红灯。第1章 TC0从上面介绍可以看出,呼救按钮(有的带对讲功能)和护理主机是一个呼救系统必备的组件,而走廊显示吊屏及门口报警红灯则要起到锦上添花的作用。目前所有的呼救系统最基本的组件就是呼救按钮及护理主机,稍好一些的产品,

8、可以接走廊吊屏及门口报警红灯。有以上这些组件,一个完整的呼救系统就算实现了。1.2 自动呼救系统的发展与应用人们对呼救系统的期望远不止上述这些,不仅要求呼救系统具有一般的呼救功能,还希望具有一定的辅助管理功能。因此,一些稍好的呼救系统,开始在功能细化上下功夫,如呼救清零键设置在呼救按钮上,这样可逼迫护理员到病床前清零(消除呼救报警),从而保证护理员无法偷懒。有的呼救系统,主机上设备多个LED光电管,这些光电管同呼救按钮一一对应,当呼救信号发生时,对应的LED光电管闪亮,从而使护理人员快速识别呼救发生的位置;当有多个呼救信号同时发生时,则多个LED光电管同时点亮,这样可使护理员同时看到多个呼救信

9、息。有的呼救系统,为了有更好的显示效果,采用了数码管或点阵屏,实现数字显示。应当讲,具有数码管或点阵显示屏的护理主机(最好与LED光电管结合),是目前呼救系统的主流产品形态,而清零键设置在病房,也是一种先进的设计思想。第2章 方案论证本文的设计是较为简单的设计,在每层病房设立护士值班室,用于监测本层的病房发出的呼救信号,以便采取相应救护措施,共有10层病房。在住院处总部装有护理总机,作为值班记录和用于记录发生事故的时间和床位号。当患者有呼救请求时,通过拉动呼救按钮,护士值班室的LED显示屏显示房间号和床位号,并发出报警响声,护士按下复位按钮后,去病房执行护理任务。以上信息通过与护理总机相连的总

10、线传送给护理总机的上位机,以便记录和查询。系统由护士总站和每层护士分站两部分组成。护士总站分别与每层护士分站用总线相连,如图2.1所示。护士总站PC机。第三层护士分站第二层护士分站第一层护士分站图2.1 护士分站与护士总站连接图每层的各个病房与该层的护士分站相连,图2 护理分站系统组成护士分站系统由以下部分组成:单片机AT89C51、7段LED显示块、报警喇叭、复位按钮、8155I/O口扩展芯片等,如图2.2所示。呼救复位按键报警蜂鸣器LED显示器AT89C51与上位机相连病房呼救图2.2 护士分站的结构组成第3章 硬件电路设计为使医院患者自动呼救系统在医院具有较好的实用性,并且具有较高的性能

11、/价格比,我们对该系统的硬件电路作了精心设计。该系统的硬件设计采用了模块化的设计方法。按实现的功能来分,可分为以下几个部分。其中,AT89C51单片机是整个电路的核心,它控制其它模块来完成各种复杂的操作。外围电路包括检测电路、键盘显示器电路、蜂鸣器报警电路等等。具体电路图详见附录。在本章下面几个小节中将根据电路图的硬件设计电路,对各个模块电路进行详细的设计与分析。3.1 中央处理器AT89C51 AT89C51是由美国Atmel公司生产的现在世界上较为新型的高性能八位单片机。3.1.1 AT89C51的功能简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh P

12、rogrammable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能八位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图3.1 AT89C51的管脚图1. 主要特性:与MCS-51兼容 4K字节可编程闪

13、烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。 当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电

14、阻的8位双向I/O口,P1口缓冲器能 接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收, 输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位

15、地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL),这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下所示:口管脚 备选功能P3.0 RXD 串行输入口P3.1 TXD 串行输出口P3.2 外部中断0P3.3 外部中断1P3.4 T0 记时器0外部输入P3.5 T1 记时器1外部输入P3.6 外部数据存储器写选

16、通P3.7 外部数据存储器读选通P3口同时为闪烁编程和编程校验接收一些控制信号。RESET:复位输入。当振荡器作为复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出,可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令时才起作用。另外,该引脚被略微拉高

17、。如果微处理器在外部执行状态时ALE被禁止,置位无效。:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。/VPP:当保持低电平时,在此期间访问外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为RESET;当端保持高电平时,此期间访问内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该

18、反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。剩余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平与要求的宽度相同。4芯片擦除:整个EPROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。在芯片擦除操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM定时器,计数器,串口和中断

19、系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其它芯片功能,直到下一个硬件复位为止。3.1.2 AT89C51的最小系统AT89C51内部有4KB闪烁存储器,芯片本身就是一个最小系统。在能满足系统的性能要求的情况下,可优先考虑采用此种方案。用这种芯片构成的最小系统简单、可靠。用AT89C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图3.2所示。与8031外扩展程序存储器的最小应用系统相比,该系统省去了外扩程序存储器的工作。该最小应用系统只能用作一些小型的数字量的测控单元。 图3.2 AT89C51的最小系统3.1.3 带手动复位的看门狗复位电路

20、在实际应用系统中,为了保证复位电路可靠的工作,常将RC电路接施密特电路后再接入单片机复位端;或采用专用的复位电路芯片。MAX813L是MAXIN公司生产的一种体积小、功耗低、性价比高的带看门狗和电源监控功能的复位芯片,其引脚图如图3.3所示,引脚功能如下:(1):手动复位输入端,低电平有效。当该端输入低电平保持140ms以上,MAX813L就输出复位信号。(2)RESET:复位信号输出端。上电时,自动产生200ms的复位脉冲(高电平);手动复位端输入低电平时,该端也产生复位信号输出。(3)WDI:看门狗输入端。程序正常运行时,必须在小于1.6s的时间间隔内该输入端发送一个脉冲信号,以清除芯片内

21、部的看门狗定时器,端输出低电平。(4):看门狗信号输出端。正常工作时输出保持高电平,看门狗输出时,该端输出信号由高电平变为低电平。(5)PFI:电源故障输入端。当该端输入电压低于1.25V时,端输出低电平。(6):电源故障输出端。电源正常时输出保持高电平,电源电压变低或掉电时,输出由高电平变为低电平。(7)VCC:工作电源,接+5V。(8)GND:接地端。图3.3 MAX813L引脚图MAX813L与单片机的连接电路如图3.4所示,该电路可以实现上电复位,程序运行出现“死机”时的自动复位和随时的手动复位。为实现单片机死机时自动复位功能,需要在软件设计中,P1.7不断输出脉冲信号(时间间隔小于1

22、.6s),如果因某种原因单片机进入死循环,则P1.7无脉冲输出。于是1.6s后在MAX813L的端输出低电平,该电平加到端,使MAX813L产生一个200ms的复位脉冲输出,使单片机有效复位,系统重新开始工作。图3.4 带手动复位的看门狗复位电路3.2 8155并行I/O接口扩展芯片的应用在本系统中,由于涉及的外围电路比较多,AT89C51芯片的I/O口不能满足系统的需要,因此,需要I/O口的扩展芯片。在这里选用8155并行I/O接口扩展芯片。8155芯片内具有256个字节的RAM,两个8位、一个6位的可编程并行I/O接口和一个14位的计数器,与MCS-51单片机接口简单,是单片机应用系统中广

23、泛使用的芯片。3.2.1 8155芯片的结构按照器件的功能,8155可由下列三部分组成:1. 随机存储器部分:容量为2568位的静态RAM。2. I/O接口部分: 端口A:可编程序8位I/O端口PA07; 端口B:可编程序8位I/O端口PB07; 端口C:可编程序6位I/O端口PC05; 命令寄存器,8位寄存器,只允许写入; 状态寄存器,8位寄存器,只允许读出;3. 计数器/计时器部分:二个14位的二进制减法计数器/计时器。3.2.2 8155芯片的引脚功能8155具有40个采用双列直插式封装,引脚分布图如图3.5(b)所示,其功能定义如下:1. AD07(三态)AD07是地址/数据总线,可以

24、直接与AT89C51的P0口相连接。在允许地址锁存信号ALE的后沿(即下降沿),将8位地址锁存在内部地址寄存器中。该地址可作为存储器部分的低8位地址,也可是I/O接口的通道地址,这将由输入的IO/信号的状态来决定。在AD07引脚上出现的数据信息是读出还是写入8155,由系统控制信号或来决定。2. RESET这是由AT89C51提供的复位信号,作为总清器件使用。RESET信号的脉冲宽度一般为600ns。当器件被总清后,各转接口被置成输入工作方式。VeeVCC2568RAMPA7PA08位数据线A0A7ABPB7PB0控制寄存器ALECPC5PC0定时器RESET定时器CLK定时器输出(a)(b)

25、图3.5 8155的内部结构及引脚3. ALE允许地址锁存信号。该控制信号由AT89C51发出,在该信号的后沿,将AD07上的低8位地址、片选信号以及IO/信号锁存在片内的锁存器内。4. 这是低电平有效的片选信号。当8155的引脚=0时,器件才允许被启用,否则为禁止使用。5. IO/这是个I/O转接口或存储器的选择信号。当IO/=1时,选择I/O电路;当IO/=0时,选择存储器件。6. (写)在片选信号有效的情况下(即=0),该引脚上输入一个低电平信号(=0)时,将D07线上的数据写入RAM某单元内(当IO/=0时),或写入某I/O端口电路(当IO/=1时)。7. (读)在片选信号有效的情况下

26、(即=0),如果该引脚上输入一个低电平信号(=0)时,8155RAM某单元的内容读至数据总线。若输入一个高电平(=1),则将某I/O转接电路的内容读至数据总线。由于系统控制的作用,而(写)和(读)信号不会同时有效。根据上面分析:A. 写RAM的必要条件是:(IO/=0)(=0)(=0);B. 写I/O端口电路的必要条件是:(IO/=1)(=0)(=0);C. 读RAM的必要条件是:(IO/=0)(=0)(=0);D. 读I/O端口电路的必要条件是:(IO/=1)(=0)(=0)。8. PA07:一组8根通用的I/O端口线,其数据输入或输出的方向由可编程序的命令寄存器的内容决定。9. PB07:

27、一组8位的通用I/O端口,其数据输入或输出的方向由可编程序的命令寄存器的内容所决定。10. PC05:一组6 位的既具有通用I/O端口功能,又具有对PA和PB起某种控制作用的I/O电路。各种功能的实现均由可编程序的命令寄存器的内容所决定。PA,PB和PC各I/O端口的状态,可由读出状态寄存器的内容而得到。11. TIMER:14位二进制减法计数器的输入端。12. TIMER OUT:是一个计时器的输出引脚。可由计时器的工作方式决定该输出信号的波形。13. Vcc:为+5V电源引脚。14. Vss:为+5V电源的地线。3.2.3 8155的RAM和I/O口的编址8155 芯片中的RAM和I/O口

28、均占用单片机系统片外RAM的地址,其中高8位地址由和IO/决定。当=0且IO/0时,低8位的00H、FFH为RAM的有效地址;当=0,且IO/1时,由低8位地址中的末3位(A2A1A0)来决定各个口的地址,详见表3.1。表3.1 8155端口地址表A7A6A5A4A3A2A1A0选中的口或寄存器XXXXX000命令状态字寄存器XXXXX001A口XXXXX010B口XXXXX011C口XXXXX100定时器低8位寄存器XXXXX101定时器高6位和操作方式寄存器3.2.4 8155的工作原理8155的结构框图见图3.5(a)。这里主要介绍它的三组I/O端口电路及14位二进制减法器的工作原理。1

29、. 8155I/O端口工作原理8155的三组I/O端口电路的工作方式,均由可编程序的命令寄存器的内容所规定,而其状态可由读出状态寄存器的内容所获得。上面已经叙述,8155的命令寄存器和状态寄存器分别为各自独立的8位寄存器。在8155的器件内部,从逻辑上来说,是只允许写入命令寄存器和读出状态寄存器内容的。而实际上,读命令寄存器内容及写入状态寄存器的操作是既不允许、也不可能实现的。因此完全可将命令寄存器和状态寄存器的地址合用一个通道地址,以减少器件占用的通道地址;同时将两个寄存器简称为命令/状态寄存器,有时以C/S寄存器来表示。A8155的命令字格式。命令寄存器由8位组成,每一位都能锁存。其中低4

30、位(03位)用来定义PA、PB和PC接口的工作方式;当PC用作控制PA或PB的端口工作时,第4、5两位分别用来允许或禁止PA和PB的中断;而最高两位(第6、7两位)则用来定义计数器/计时器的工作方式。利用输出指令,可以将对命令寄存器的各位编码打入其中。8155命令寄存器各位的定义见表3.2。表3.2 8155命令寄存器定义D7D6D5D4D3D2D1D0TM2TM1IEBIEAPCPCPBPA定时器命令00方式101方式210方式311方式4定义PA070输入1输出允许端口B中断0禁止1允许允许端口A中断0禁止1允许定义PB070输入1输出定义PC0500方式101方式210方式311方式41

31、) 第0位(PA):定义PA07数据信息传送的方向。“0”输入方式;“1”输出方式。2) 第1位(PB):定义PB07数据信息传送方向。“0”输入方式;“1”输出方式。3) 第3,2位(PCII,PCI):定义PC05的工作方式。“00”方式1;“11”方式2;“01”方式3;“10”方式4。方式14时,PC05的各位功能见表3.3。表3.3 端口C控制分配表PCIIPCI00011011方式1234PC0输入输出INTRAINTRAPC1输入输出BFABFAPC2输入输出PC3输入输出输出INTRBPC4输入输出输出BFBPC5输入输出输出4) 第4位(IEA):在端口C对PA07,起控制作

32、用的工作方式时,IEA位用来定义允许端口A的中断。“0”禁止;“1”允许。5) 第5位(IEB):当端口C工作在对PB07起控制作用的工作方式时,IEB位用来定义允许端口B的中断。“0”禁止;“1”允许。6) 第7,6位(TM2,TM1):用来定义计时器/计数器工作的命令。有四种情况,分别列于表3.4。表3.4 计时器/计数器工作方式定义表TM2 TM1方 式00不影响定时器工作01若计数器未启动,则无操作;若计数器已运行,则停上计数10当达到当前计数TC后,立即停止若未启动定时器,则无操作11装入方式和计数值后,立即启动定时器,若定时器己在运行,则达到当前计数值后,按新的方式和长度予以启动B

33、8155的状态字格式。状态寄存器为8位,各位均可锁存,其中最高位为任意位,低6位用于指定转接口的状态,另一位用作指示定时器/计数器的状态之用。通过读C/S寄存器的操作(即用指令系统的输入指令),可读出状态寄存器的内容。8155的状态字格式如表3.5所示。表3.5 8155的状态字D7D6D5D4D3D2D1D0XTIMERINTEBBFBINTRBINTEABFAINTRA定时器中断标志端口B中断标志端口B中断请求标志端端口A中断标志端口A中断请求标志端口B缓冲器空/满标志端口A缓冲器空/满标志C8155的端口电路。8155器件的I/O部件由五个寄存器组成。其中两个是命令/状态寄存器(C/S)

34、地址为xxxx000。如前所述,当写操作期间选中C/S寄存器时,就把一个命令写入命令寄存器中,并且命令寄存器的状态信息不能通过其引脚来读取;当读操作期间选中C/S寄存器时,将I/O端口和定时器的状态信息读出。另外两个寄存器为PA和PB。根据C/S寄存器的内容,分别对PA07和PB07编程,使相应的I/O电路处于基本的输入或输出方式,或选通方式。最后一个寄存器是PC,该寄存器仅6位,可以对I/O 端口电路PC05进行编程,或对命令寄存器命令字的第2,3位(PCI和PCII)行适当编程,使其成PA和PB的控制信号,详见表3.2。2. 8155的定时器8155的定时器是一个14位的减法计数器,它能对

35、输入定时器的脉冲进行计数,在达到最后计数值时,有一个矩形波或脉冲输出。表3.6 8155定时器格式15141312111098M2M1T13T12T11T10T9T8计时器方式计数长度高六位76543210T7T6T5T4T3T2T1T0计数长度低八位为了对定时器进行程序控制,首先装人计数长度。由于计数长度为14位(第013位),因每次装入的长度只能是8位,所以必须分两次装入。装入计数长度寄存器的值为2H3FFFH,而第14l5位用来规定定时器的输出方式。定时器格式见表3.6。表3.6中最高两位(M2,M1)定义的定时器方式如表3.7所示。应该注意,硬件复位信号的到达,会使8155计数器停止计

36、数、直至由WS寄存器发出启动定时器命令为止。表3.7 定时器方式定义表M2M1方式波形000单方波011连续方波102单脉冲113连续脉冲应该注意,硬件复位信号的到达,会使8155计数器停止计数、直至由WS寄存器发出启动定时器命令为止。3.2.5 AT89C51和8155的接口方法和应用AT89C51单片机可以和8155直接连接,不需要任何外加电路,对系统增加256个字节的RAM、22位I/O线及一个计数器,AT89C51和8155的接口方法如图3.6所示。8155的端接P2.7,IO/端接P2.6。当P2.7=0、P2.6=1时,访问8155的I/O端口。当P2.7=0、P2.6=0时则访问

37、8155的RAM。为此可得到此系统中8155各端口的地址。RAM的地址:3F00H3FFFH。I/O端口地址:7F00H(命令状态口),7F01H(A口),7F02H(B口),7F03(C口),7F04H(定时器低8位),7F05H(定时器高6位)。在本次设计系统中A口定义为基本输入方式,用于八路开关74LS151的Z端的输入端。B口定义为基本输出方式,用于LED显示器的扩展,具体介绍将在LED显示器的介绍中作详细说明。定时器作为方波发生器,对AT89C51的晶振频率进行二十四分频(但需注意8155的最高计数频率约4MHz),则8155I/O口初始化程序如下:START: MOV DPTR,7FC4H ;定时器低8位送18H(24D)MOV A,18HMOVX DPTR,A INC DPTR ;DPTR+1DPTR=7F05HMOV A,#40H ;定时高6位送000000B工作方式为连续方波MOVX DPTR,A ;对f晶振24分频MOV DPTR,7F00H ;命令状态口MOV A,002HMOVX DPTR,A图3.6 AT89C51和8155的连接3.3 蜂鸣器报警电路设计蜂鸣器报警电路是用于在有呼救信号发出后,蜂鸣器报警发音,以便使护士听见。蜂鸣音报警器接口电路的设计只需购买市售的压电式蜂鸣

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号