ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:83.77KB ,
资源ID:4777076      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4777076.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于51单片机的病房呼叫系统软件段露露12406070黄成强物理与机电工程学院文档格式.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于51单片机的病房呼叫系统软件段露露12406070黄成强物理与机电工程学院文档格式.docx

1、1 系统程序设计1.1 主程序设计流程图如图1所示,主函数1是一个完整的程序入口函数,即void main()。该设计的主函数是4*4矩阵键盘45、LED灯显示、蜂鸣器电路、按键应答和反馈电路5个子程序组。主要是通过对4*4矩阵键盘的初始化检测键盘是否有键值的输入,即判断是否有键按下。通过对键盘的扫描将键值进行处理,并送缓冲区,随之LED灯变亮,蜂鸣器发声,当应答部分的有键值的输入(即护士按键响应),护士站的LED灯灭,程序结束。同时,通过延时判断是否有应答,当无应答时则会反馈给病房,病房的LED灯点亮图1 系统功能流程图1.2 矩阵键盘程序读取矩阵键盘如图2所示,首先需要对4*4矩阵键盘进行

2、识别,判断键盘有无按键按下,若无键按下返回。如果有键按下,找出具体的按键值。键盘键值读取可分为4部分,每排为一个部分,当一排当中有一个键或多个键同时按下时,读取的键值是一样的。图2 矩阵键盘图1.3 LED灯介绍及设计LED灯的主要部件是一快半导体的晶片7,晶片的一端上有一个支架,一端是正极,而另一端则是负极,环氧树脂封装着整个晶片。半导体晶片可分为两部分,一部分是N型半导体,在这边主要是电子,另一端是P型半导体,在它里面空穴占主导地位。这两种半导体可以连形成一个“P-N结”。当这个晶片通过电流起作用的时候,被推向P区的电子就会与P区里的空穴复合,然后会放出能量,这就是LED发光的原理。本设计

3、采用LED灯亮灯显示。系统共设计8个LED灯显示,分别是护士站4个,设计中的4个病房,每个病房一个。在第一个病房一排按键中,如果有键按下,led11处于低电平,即护士站的第一个LED灯点亮;同理,当第二个病房的二排按键中有键按下,Led22处于低电平,护士站的第二个LED灯点亮;设计中的4个病房是同样的道理。1.4 蜂鸣器设计本设计利用蜂鸣器的发声达到系统功能的实现,蜂鸣器选用5V电磁式有源蜂鸣器,由于蜂鸣器的工作电流一般比较大,以至于单片机的I/O口是无法直接驱动的,所以要利用三极管开关电路来驱动。本处选用的是8550三极管,它是一个PNP型的三极管。基极串联一个1K的电阻连接到单片机的I/

4、O口时。当I/O口输出低电平时,三极管导通,蜂鸣器鸣叫;当I/O口输出高电平时,三极管截止,蜂鸣器停止鸣叫。2 程序2.1 源程序/* 单片机中断头文件单片机 AT89C52 实现功能:单片机中断的控制控制*/#ifndef _INTERRUPT_H_#define _INTERRUPT_H_#include#define uchar unsigned char#define uint unsigned int/*引脚定义*/sbit led1=P17; /LED灯sbit led2=P16;sbit led3=P15;sbit led4=P14;sbit led11=P27;sbit led

5、22=P25;sbit led33=P23;sbit led44=P21;sbit led=P10; /工作指示灯/*变量定义*/uint T0_num,T1_num;/*函数名称:void T0_init()函数作用:定时器0初始化函数参数说明: EA=1; /开总中断 ET0=1; /定时器T0中断允许 TMOD=0x11; /使用定时器T0、T1的模式1 TH0=(65536-50000)/256; /定时器T0的高8位赋初值 TL0=(65536-50000)%256; TR0=0; /关闭定时器 ET1=1; TH1=(65536-50000)/256; TL1=(65536-500

6、00)%256; TR1=0;void T0_interrupt(void) interrupt 1 using 0定时器0中断处理函数 /定时器T0的高8位重新赋初值 T0_num+; if(T0_num=600) T0_num=0; T1_num=0; /打开按键旁边的灯 if(led11=0) led1=0; if(led22=0) led2=0; if(led33=0) led3=0; if(led44=0) led4=0; TR1=1; /开启10定时 TR0=0; void T1_interrupt(void) interrupt 3定时器1中断处理函数 T1_num+; if(T

7、1_num=200) P1=0xff; led=0; TR1=0;#endifINTERRUPT.hsbit key=P20; /护士键sbit key1=P37; /按键sbit key2=P36;sbit key3=P35;sbit key4=P34;sbit buzz=P04; /蜂鸣器/*void main()主函数*/ led=0; T0_init(); while(1) if(P3!=0xff) /检测键盘 while(P3!=0xff) /检测按键离开 if(key1=0) /第一排 led11=0; TR0=1;buzz=0; if(key2=0) /第二排 led22=0;

8、buzz=0; if(key3=0) /第三排 led33=0; if(key4=0) /第四排 led44=0; if(key=0) /护士按键 buzz=1; /清除LED灯和蜂鸣器,定时器 led1=1; led2=1; led3=1; led4=1; led11=1; led22=1; led33=1; led44=1; TR0=0; TR1=0; T0_num=0; T1_num=0; 3 程序调试及实现3.1 软件开发环境此设计的编程8实现由Keil Vision4进行。Keil C51是由美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。其C语言在结构

9、性、可读性、可维护性、功能上都相较于汇编语言有明显的优势,便于学习和使用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。3.2 系统软件调试本课题的程序使用Keil软件进行编写和调试8,检查程序准确无误后将编写好的程序生成.hex文件,下载到单片机中,下载使用的下载器为PL2303。通过观察整个系统运行的状态,看其是否达到本课题的设计目标,然后进行反复修改、调试程序,以此得到一个最终确定的程序。4 结束语本次

10、课题的设计是基于单片机的病房呼叫系统67的改进,新增的同时显示功能和反馈功能使得病房呼叫系统这项设备在原来的基础之上得到改善。其中(1)反馈功能避免了病人按键后,并不知道医护人员是否得知消息,只能等候。改进后的病房呼叫系统,当患者按键信息到达值班室,医护人员按下“应答”键,并及时为患者提供服务。假若值班室无人,“应答”键没有按下,则相应的患者房间里对应的LED灯点亮,方便患者家属采取相应措施。(2)同时显示功能避免了传统病房呼叫系统多人按键,必须按照按键时间先后顺序排队显示的烦恼。本课题改进的按键显示为一个病房对应一个LED灯,不同病房的多人按键可以同时显示,重症病房的前两排按键对应前面的两个

11、LED灯,便于医护人员同时为需要帮助的患者服务。改进之后的病房呼叫系统4-10将更适用于各医院,甚至是敬老院等场所,提高医院的服务质量,降低医用设备的成本。本次设计是在小组成员的共同合作下完成的,让我们在完成作品的同时懂得了分工与合作的重要性,制作过程使得平时课堂上的很多理论知识得了实践应用。其中,我涉及最多的是软件部分,当然,以上文章所述都是围绕软件部分展开,本次设计使我对计算机语言、程序的设计和编写有了一定的认识和提高。参考文献1谭浩强,张基温.C语言程序设计教程M.北京:高等教育出版社,2011:3-199.2阎石,等.数字电子技术基础M.北京:高等教育出版社,1981:2-99.3李中

12、伟,朱永涛.新型无线病房呼叫系统的设计J.电子世界,2014:224-224.4苏家健,曹柏荣,汪志锋.单片机原理及应用技术M.北京:高等教育出版社,2015:4-100.5颜靖松,许建明等. 基于单片机的无线病房呼叫系统设计D.北京:数字技术与应用,2015:151-152.6陈新岗等.基于单片机的无线病房呼叫系统设计D.重庆:重庆工学院学报,2008:126-130.7艾学忠,刘伟,陈北辰.单片机原理及接口技术M.北京:机械工业出版社,2012:2-168.8夏宇闻,等.Verilog数字系统设计教程M.北京:北京航空航天大学出版社,2013:3-200.9沈凯,吴清萍.基于单片机的病房呼叫系统设计D.现代电子技术,2011:1-3.10王安,丁晓迪,常亮.基于AT89C52单片机的单片机的病房呼叫系统设计J.硅谷,2010:108-108.

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2