《简易病床呼叫系统》由会员分享,可在线阅读,更多相关《简易病床呼叫系统(8页珍藏版)》请在金锄头文库上搜索。
1、.简易病床呼叫系统1、 系统介绍 本简易病床呼叫系统的功能是:启动系统后,数码管显示0。当有一个病人呼叫时,数码管显示相应病房号,同时蜂鸣器响起;当有两个病人同时呼叫时,数码管显示优先级高的,同时蜂鸣器响起;当有一个病房呼叫后另一个病房呼叫,若后呼叫的病房优先级低,则数码管显示不变,若后呼叫的病房优先级高,则数码管显示后呼叫的,两种情况下蜂鸣器都会叫,只是在有别的病房呼叫时有一点变音。在本系统中,设病房1到4优先级递减。本简易病床呼叫系统基于AT89C51单片机,振荡电路的晶振采用12MHz,由控制核心AT89C51单片机、电源电路、振荡电路、复位电路、病房选择和七段数码管等部分组成,系统框图
2、如下:电源电路振荡电路数码管显示电路AT89C51单片机复位电路选择电路图1 系统框图本系统利用了单片机AT89C51内部时钟信号,外接晶振和电容进行微调频率,用单片机的I/O口对数码管进行静态驱动,在此基础上,增加了复位电路和选择电路。通过选择电路可以确定几号病房呼叫,用复位电路进行清零。2、 电路图电路设计完成后,通过Proteus进行仿真,仿真电路如下图2。图2 系统仿真电路 本系统选择电路利用四个按键开关模拟病房1-4呼叫,分别连接到单片机的P30、P31、P32、P33,按下开关说明相应的病房呼叫。单片机的P0口外接排阻和数码管,复位电路和蜂鸣器分别与P34和P17相连。系统通电后,
3、仿真电路结果如下图3:图3 通电后系统仿真电路 按下第一个开关,模拟1号病房呼叫,仿真结果如下图4:图4 1号病房呼叫仿真结果若同时按下第一个开关和第二个开关,则数码管只显示“1”,仿真如下图5:图5 1号和2号同时呼叫3、 系统程序流程图本系统程序流程图如下:开始工作 有一个病房呼叫 有多个病房呼叫 判断优先级 显示病房号并响铃 有病房再次呼叫4、 系统程序#include #define uchar unsigned charsbit key4=P30;/定义按键位置 sbit key3=P31;sbit key2=P32;sbit key1=P33;sbit reset=P34;/复位s
4、bit beep=P17;/定义蜂鸣器端口uchar flag1,i;void choice();void clean();void sound();void delay();void ring();void main()while(1)P3=0xff;reset=0;beep=0;flag1=0;choice();sound();clean(); void choice()/确定病房while(reset!=1&flag1=0)if(key1=0)delay();if(key1=0)P0=0X86;flag1=1; else if(key2=0)delay();if(key2=0&key1!
5、=0)P0=0Xdb;flag1=1;else if(key3=0)delay();if(key3=0&key1!=0&key2!=0)P0=0Xcf; flag1=1;else if(key4=0)delay();if(key4=0&key1!=0&key2!=0&key3!=0)P0=0Xe6; flag1=1;void clean() /reset为高的时候复位if(reset=1)beep=0;P0=0x3f;void sound() while(!reset)ring();void ring()for(i=0;reset=0;i+)/喇叭发声的时间循环 delay(); beep=!
6、beep;if(key1=0|key2=0|key3=0)/多个病房呼叫的处理,判断优先级if(P0=0X86)P0=0X86;else if(P0=0Xdb&key1=0)P0=0X86;else if(P0=0Xcf&key1=0)P0=0X86;else if(P0=0Xcf&key1=1&key2=0)P0=0Xdb;else if(P0=0Xe6&key1=0)P0=0X86;else if(P0=0Xe6&key1=1&key2=0)P0=0Xdb;else if(P0=0Xe6&key1=1&key2=1&key3=0)P0=0Xcf;void delay() /延迟函数,防抖动for(i=300;i0;i-);5、 总结 本简易病床呼叫系统通过四个按键开关闭合模拟四个病房呼叫,数量有限,与实际情况存在较大差距,医院病房数量多。此外,本系统设置了病房呼叫的优先级,如1号病房优先级最高,然后依次递减,若有多个病房同时呼叫,本系统只显示优先级最高的病房,与实际情况不同,这个功能限于本系统电路和程序简单,并不能很好地实现智能化,但本系统可以通过扩展外设电路和优化程序来更好地实现智能化。.