单片机病房呼叫器_第1页
单片机病房呼叫器_第2页
单片机病房呼叫器_第3页
单片机病房呼叫器_第4页
单片机病房呼叫器_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、 课 程 设 计 说 明 书课程名称:单片机原理及其在煤矿中的应用设计题目:病房呼叫器院 系:矿业工程学院 学生姓名:孟亚东 刘春磊 祁乐学 号: 专业班级: 采矿1409指导教师: 曹金燕 2017年 1月 6日课 程 设 计 任 务 书设计题目 病房呼叫器学生姓名孟亚东刘春磊祁乐所在院系矿业工程学院专业、班级采矿1409设计要求 1、设计一个可容64张床位的病房呼叫器。2、要求每个床位都有1个按钮,当患者需要呼叫护士时,按下按钮。此时护 士值班室内的呼叫系统板上显示该患者的床位号,并振铃3秒。3、当护士按下响应键时,销除该呼叫。学生应完成的工作: 本设计以AT89C51单片机为主控模块,利

2、用汇编语言编写程序实现数码管显示。主要任务包括:(1)硬件原理图的设计。(2)软件程序的设计:(3)用汇编语言进行软件的编写与调试。(3)系统运行以及结果分析(4)撰写课程设计报告。课程设计提交的成果1)设计说明书 2) 图样资料 a) 系统原理图; 3)查阅文献不少于5篇b) 硬件电路图;c) 汇编语言源程序;d) PROTEUS运行仿真图;工作计划:2016年12月1日; 搜索有关资料并进行硬件原理图设计;文献查阅。2016年12月3日 2016年12月10日;进行硬件电路与软件程序的编写及调试;2016年12月15日 2016年12月25日:编写课程设计说明书;2016年1月6日; 提交

3、课程设计。任务下达日期:2016年11月任务完成日期:2017年1月 6日指导教师(签名): 学生(签名): 设计内容设计一个单片机病房呼叫系统,可容64张床位的病房呼叫,每当患者需要呼叫护士时,按下按钮,此时护士值班室内的呼叫系统板上显示该患者的床位号,并振铃3秒。当护士按下“响应”键时,结束当前呼叫。设计步骤一、 总体方案设计基于单片机的病房呼叫系统设计,附有复位电路,时钟电路,键盘电路等。复位电路是单片机的初始化操作,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。二、硬件选型工作:对所使用的电路元件应选择型号。三、硬件的设计和实现

4、1. 选择所用的51单片机;2. 设计单片机最小系统,在此基础上进行扩展;3. 设计支持系统工作的外围电路;四、软件设计1. 编写系统初始化和主程序模块;2. 画出电路流程图;3. 编写子程序;4. 显示程序。目录一、设计要求5二、设计目的5三、设计的具体实现53.1系统概述53.2单元电路设计63.2.1 单片机的引脚介绍63.2.2 单片机复位电路介绍83.2.3 时钟电路的介绍83.2.4 详细设计93.3软件程序设计113.3.1 系统软件的设计113.3.2 主程序流程图123.3.3子程序流程图12四、实验仿真14五、心得体会及建议19六、附录(源程序)21七、参考文献25单片机病

5、房呼叫系统设计报告一、设计要求1、设计一个可容64张床位的病房呼叫系统。2、要求每个床位都有一个按钮,当患者需要呼叫护士时,按下按钮。此时护士值班室内的呼叫系统板上显示该患者的床位号,并振铃3秒。3、当护士按下“响应”键时,取消当前呼叫。二、设计目的在大型机关,旅馆和医院中,常需要有一种内部联络和呼叫系统,以便在旅客(病员)和服务人员之间建立必要的联络,而一般的内部通话系统都比较少,经常使用的是比较便宜的呼叫指示,这种呼叫指示系统在提示的同时,能够用数码管显示各呼叫的号码。病房呼叫系统是病人请求值班医生或护士进行诊断或护理的紧急呼叫工具,它主要用于协助医院病员在病床上方便地呼叫医务人员,可将病

6、人的请求快速传送给值班医生或护士,是提高医院和病房护理水平的必备设备之一。医院的竞争越来越激烈,商业医院的生存是第一位的,提升档次和服务质量迫在眉睫,陪护问题一直是医患矛盾的主体,也是长期困扰卫生系统服务质量的大问题,使用病房呼叫系统,方便病人更快找到医生,以节约病人的宝贵时间。因此该系统具有很大的应用前景和广阔的市场发展空间。本设计是以AT89C51为核心的病人呼叫系统,对该系统的硬件和软件结构进行了相应的描述。此系统主要由89C51单片机,按键,数码管,喇叭等组成。每个病人要呼叫可以按键,同时会有喇叭响,数码管显示不同床位号,相应的指示灯亮通过对病区的数据采集,实现医院医疗人员值班室和病人

7、房之间的通信呼叫联系,具有使用方便、操作简单等特点。三、设计的具体实现3.1系统概述在本系统中,我采用单片机AT89C51为核心的系统主要包括2个部分:数据采集和数据的输出,数据的输出用来进行呼叫,编码使用单片机完成,数据采集负责接收分机发来的信号,并显示该患者的床位号,并响铃,主机上设有键盘可以取消当前呼叫。其实现结构框图如图3.1所示。图3.1 系统总体方案图由88键盘矩阵采集到的键值经过P1、P2口输入到单片机AT89C51中,然后通过P0口把相关信息传送到数码管显示。同时报警警示灯闪烁、报警声响起。医疗人员可以通过控制键盘操作,完成呼叫响应和信息查询等监护工作。3.2单元电路设计3.2

8、.1 单片机的引脚介绍AT89C51可以说是最常用的51单片机了,下图介绍AT89C51的引脚图资料。如图3.2所示。图3.2 AT89C51引脚图(1) RESET一般接2个元件:接10K电阻到地,接10电容到电源。(2) / VPP一般情况下接高电平(这时使用MCU内部RAM/ROM)。(3)ALE / PROG一般情况下空着(这时使用MCU内部RAM/ROM)。(4)一般情况下空着(当使用MCU内部RAM/ROM时)。(5)P0内部没有上拉电阻,所以必要时需要在每个引脚外接5.1K左右上拉电阻到电源。(6) XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时

9、,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz,晶振的频率可以在1MHz-24MHz内选择,电容取20PF左右。(7) VDD:电源+5V。 VSS:GND接地。引脚功能说明:电源引脚 Vcc(40脚):典型值5V。 Vss(20脚):接低电平。输入输出口引脚: P0口:I/O双向口。作输入口时,应先软件置“ 1”。 P1口:I/O双向口。作输入口时,应先软件置“ 1”。 P2口:I/O双向口。作输入口时,应先软件置“ 1”。 P3口:I/O双向口。作输入口时,应先软件置“ 1”。控制引脚: RST/Vpd

10、、ALE/、/Vpp组成了MSC-51的控制总线。 RST/Vpd(9脚):复位信号输入端(高电平有效)。 第二功能:加+5V备用电源,可以实现掉电保护RAM信息不丢失。 ALE/ (30脚):地址锁存信号输出端。 第二功能:编程脉冲输入。 (29脚):外部程序存储器读选通信号。 /Vpp(31脚):外部程序存储器使能端。3.2.2 单片机复位电路介绍当MCS-51系列单片机的复位引脚RST出现两个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。根据应用的要求,复位操作通常有两种基本的方式:上电复位和上电或开关复位。上电复位要求接通电源后,自动实

11、现复位操作。常用的上电复位如下图3中所示。图中电容C1和电阻对电源+5V来说构成微分电路。上电后,保持RST一段高电平时间,由于单片机内的等效电阻的作用,不用图中电阻,也能达到上电复位的操作功能。如下图3.3和3.4中所示。图 3.3 上电复位电路 图 3.4 上电复位和按钮复位电路3.2.3 时钟电路的介绍采用时钟方式时,在XTAL1和XTAL2之间接入石英晶体振荡器(晶振)即可使内部振荡器起振,产生单片机工作所需的时钟脉冲。如图3.5所示。时钟是时序的基础,8951核片内由一个反相放大器构成振荡器,可以由它产生时钟,时钟可以由两种方式产生内部方式和外部方式。本系统采用内部方式,在XTAL1

12、和XTAL2端外接石英晶体作为定时元件,内部反相放大器自激振荡,产生时钟。时钟发生器对振荡脉冲二分频。电容采用22nF MCS-51单片机时钟脉冲也可以由外部产生,但芯片的制造工艺不同,外部时钟源的输入方式有所不同。对于HMOS型芯片,外部振荡信号接至XIAL2引脚,XTAL1接地,XTAL2引脚对电源接入上拉电阻。而CHMOS型芯片,外部振荡信号接至XTAL1,XTAL2悬空。图3.5 时钟电路 3.2.4 详细设计(1) 数码管显示模块本系统采用了较为简单的由单片机直接驱动数码管的显示电路,由于51单片机P0口内部是漏极开路型(作I/O口用时),P0口内部没有设置上拉电阻,不接上拉电阻的话

13、输出会不正常,比如输出高电平时得不到高电平。电路如图3.6。 图3.6 单片机与数码管接口图(2)报警电路设计主机在接受到呼叫后,进行报警告知值班人员。报警分为两个部分,第一个部分是当有病床进行呼叫后值班台警示灯闪烁三次后保持常亮,显示为当前有病床呼叫;第二个部分是响铃三秒后自动停止,当值班人员听到响铃会知道当前有病床呼叫,观察显示面板可知是几号病床呼叫,从而进行快速处理。报警电路用单片机如图3.7所示。图3.7 报警电路设计图(3) 键盘模块电路设计88键盘矩阵和64个LED警示灯模块组成,在键盘扫描和LED驱动部分,使用了LED显示电路原理图如图3.8所示。图3.8 键盘模块电路图(4)

14、键盘的工作方式介绍键盘的工作方式应该根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。通常,键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。编程扫描方式:编程扫描方式是利用CPU完成其他工作的空余时间,调用键盘扫描子程序来检验按键状态,响应键盘输入。执行键功能程序时,CPU不再享有键输入要求,直到CPU重新扫描键盘为止。定时扫描方式:定时扫描方式就是每隔一段时间对键盘扫描一次,她利用单片机内部的定时器产生一定时间(如20ms)的定时,定时时间到产生定时器溢出中断。CPU在中断服务程序中键盘进行扫描,并在有键按下时识别出

15、该键并保存键号,然后在中断服务程序或主程序中执行该键的功能程序。中断扫描方式:本设计采用上述两种键盘扫描方式时,无论是否有键按下,CPU都要定时扫描键盘,而单片机应用系统工作时,并非经常需要键盘输入。因此,CPU经常处于空扫描状态,浪费CPU大量时间,CPU不扫描键盘,而有键按下时,通过相应电路产生中断请求,CPU相应中断,执行键盘扫描子程序,并识别键号。3.3软件程序设计3.3.1 系统软件的设计该系统软件主要完成以AT89C51为核心的数据的采集、处理和有线传输。采用模块化程序设计方法,将系统软件的设计主要分为显示模块,输入模块,输出模块。单片机扫描发射键,如果扫描到有发射键按下,系统便扫

16、描拨码开关的状态以确定地址码,通过P1口和P2口开始地址码传送当服务台接收到呼叫信号后,护士值班室内的呼叫系统板上显示该患者的床位号,并振铃。当护士按下“响应”键时,结束当前呼叫。3.3.2 主程序流程图单片机扫描发射键,如果扫描到有发射键按下,系统便扫描拨码开关的状态以确定地址码,再进行中断初始化,去除键的延时抖动,分辨行、列值,进入死循环,这时病房指示灯点亮,服务台显示出床号并响铃,病房等待服务台的回应,如果没有扫描到信号输入,则单片机始终处于初始状态。如图3.9所示。图3.9 主程序流程图3.3.3子程序流程图子程序如图3.10是一个中断式键盘的流程图,当单片机收到信号后,中断入口开始初

17、始化,去除键的延时抖动。而一般的削抖方式有软件和硬件两种,硬件削抖虽能够解决键抖动问题,但如果应用系统所需按键较多,本系统采用的是软件削抖,当检测出有键闭合时,先执行一个延时子程序产数毫秒的延时,待接通时的前沿抖动消失后再判别是否有键按下,分辨出行、列值。当按键释放时,也要经过数毫秒延时,待后沿抖动消失后再判别是否有键按下。图3.10 子程序流程图中断程序:INTR_0: MOV 30H,#0FFH CLR P3.7 RETI当病房护士接收相应信息后,可由外部中断0执行外部中断。为报警系统发声电路和显示电路初始化。3.4延时程序DELAY3:DDL1: MOV 41H,#220DDL2: MO

18、V 42H,#250DDL3:DJNZ 42H,DDL3LCALL DISPDJNZ 41H,DDL2RET由于外接键盘涉及接口过多,本程序中未使用定时器作为延时系统。四、实验仿真使用Keil、preoteus软件调试仿真试是通过对程序的编译链接执行来发现程序中的语法错误与逻辑错误并加以排除纠正的过程,通过对源程序逐步执行来观察是否能达到预期的硬件显示的效果,之后用proteus将编译好的程序输入到以设计好的电路的AT89C51中,开始模拟调试,进一步修改并完善硬件及软件设。1. Keil 简介Keil C51开发系统基本知识(1)系统概述Keil C51软件提供丰富的库函数和功能强大的集成开

19、发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil 的优势。下面详细介绍Keil C51开发系统各部分功能和使用。(2)Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(

20、.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。(3)使用独立的Keil仿真器时,注意事项仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。仿真器上的复位按钮只复位仿真芯片,不复位目标系统。仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目

21、标系统中使用。2.Proteus简介Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。3.仿真调试过程1)Keil仿真过程打开Keil汇编语言软件,(1)建立一个工程项目选择芯片确定选项ProjectNew Project输入工程名“病房呼叫器”保存工程文件(鼠标点击保存按钮) (2)选cpu

22、厂家三2)Proteus仿真(1)选取待用仿真硬件(2)根据设计要求连接电路(3)AT89C51导入keil程序(4)进行仿真调试五、心得体会及建议本次课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程。千里之行始于足下,通过这次毕业设计,我深深体会到这句千古名言的真正含义我今天认真的进

23、行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。通过这次单片机设计,我在多方面都有所提高。通过这次基于单片机的病房呼叫器设计,综合运用本专业所学课程的理论和生产实际知识进行一次单片机设计工作的实际训练从而培养和提高学生独立工作能力,巩固与扩充了单片机课程所学的内容,掌握单片机设计的方法和步骤,掌握单片机设计的基本的技能懂得了怎样分析电路,了解了单片机的基本结构,提高了计算能力,绘图能力,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。在这次设计过程中,体现出团队设计的团结以及综合运用知识的能力,体会了学以致用、突出自己劳动成

24、果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。转眼之间课程设计就要结束了,这几周我过得虽然忙碌但是很充实,因为通过这次设计我学到了很多知识,对单片机也有了更深的认识,并且把以前学的知识又重新梳理了一遍,除此之外我也感觉到了自己知识的匮乏,设计过程中遇到许多困难,比如由于之前对单片机应用知识的不熟悉,程序编写无从下手以及对以前所学知识掌握的不够牢固等等,给了我很大的压力,真正的感觉到是学无止境这句话是什么含义。我一遇到不会的知识或者以前学过但现在却忘记的知识,我就上图书馆,上网去查,或者拿出以前的书再看看,尽力把它弄明白。我们小组在设计时一起讨论,一起研究,在大家的互相帮助下

25、我们提高的很快,解决了很多问题,也通过这次设计我们在彼此身上学到了很多知识,并且在我们即将面临实习的重要时刻,这次设计过程也让我们对我们自己的专业,和学习,工作的方向有了更清晰的认识。让我知道不论做什么工作都要努力,都要不断学习。此次设计为有线呼叫系统,虽存在布线复杂、维修不便、病房不能与值班室的语音对话等缺陷。但相对于无线呼叫系统而言,它的可靠性能高,而且不干扰其他医疗设备。如果采用无线传输,会节约布线和改造线路的资金,为医院节约成本,并且及时、简便可行,比目前的同类产品更能受到医院及病人的认可,有更强的竞争力,能大量推广。六、附录附录一:系统电路图图6.1 病房呼叫系统电路图附录二:元器件

26、明细表表6.2 元件器件表器件参数数量电阻5002电容22pF,20uF22pF2个,20uF1个芯片AT89C511晶振1蜂鸣器1数码管两位1排阻1按键66LEDRED1附录三:源程序代码:ORG 0000HLJMP MAINORG 0003HLJMP INTR_0ORG 0030HMAIN: SETB EA ;初始化系统,EA/EXO/IT0置位SETB EX0SETB IT0MAIN1: CLR P3.7 ;P3.7清零MOV 30H,#0FFHLCALL DISPDP1: LCALL KEYLCALL DISPLJMP DP1KEY:LCALL KSJNZ K1LCALL DELAY2

27、 ;延时消抖RETK1: LCALL DELAY2JNZ K2LJMP KEYK2: MOV R2,#0FEHMOV P1,#0FFH ;使P1口置高电平MOV R4,#00HK3: MOV P2,R2LOOP0: JB P1.0,LOOP1 ;扫描按钮键盘MOV A,#00HLJMP LOOPKLOOP1: JB P1.1,LOOP2MOV A,#08HLJMP LOOPKLOOP2: JB P1.2,LOOP3MOV A,#10HLJMP LOOPKLOOP3: JB P1.3,LOOP4MOV A,#18HLJMP LOOPKLOOP4: JB P1.4,LOOP5MOV A,#20HLJMP LOOPKLOOP5: JB P1.5,LOOP6MOV A,#28HLJMP LOOPKLOOP6: JB P1.6,LOOP7MOV A,#30HLJMP LOOPKLOOP7: JB P1.7,NEXTMOV A,#38HLOOPK: ADD A,R4 ;移位扫描行PUSH

温馨提示

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

评论

0/150

提交评论