病房呼叫系统设计论文
接口技术设计报告设计题目:病房呼叫系统
设计时间:2015年7月
摘要
病房呼叫系统是向病患提供的一种紧急呼叫服务,它可以方便让病患向医护人员发出呼叫信号,以使得医护人员及时准确地赶到对其进行合理救治。呼叫系统的优劣直接关系到病员的安危,历来受到各大医院的普遍重视。它要求及时、准确、可靠、简便可行、利于推广。
本设计采用主从结构,医护人员值班室内放置指示灯和呼叫扬声器,走廊悬挂显示屏(根据病房次序显示医护人员最先应处理的病房号),病患床头处安置呼叫源(单刀开关)。当病人有呼叫请求时,打开开关进行呼叫,此时值班室内指示牌上对应房间的指示灯亮起,走廊显示屏根据次序指示医护人员的救治顺序,通过这一系列的联动实现“紧急病患优先处理”的目标,尽可能减少因时间耽搁而导致的医疗事故,同时也为构建数字化医院打好了一定的基础。
本论文阐述了病房呼叫系统的基本组成以及一些相关的硬件设计,使用emu8086软件进行编译,使用proteus软件对其进行仿真。
关键词:8086,8253,8255,七位段式液晶
目录
摘要Ⅱ第一章概述 1 第二章系统设计 3
2.1方案论证3
2.2 单元电路设计4
2.2.1 指示灯部分4
3.2.2 紧急振铃部分 5
3.2.3 病患处理顺序显示6第三章编程实现8
3.1 程序流程图8
3.2 程序代码9 第四章仿真实现13
4.1 运行时整体截图13
4.2 实例下的仿真13 第五章结论16 第六章使用仪器设备清单17 参考文献18 收获、体会和建议19
第一章 概述
众所周知,在医疗救治方面,时间就是患者的生命。少一秒钟,患者可能迈入死亡的边缘;多一秒钟,患者就多一份成活的希望。于此说来,病房呼叫系统便可谓是所有病患的福音。
病房呼叫系统通过数字化的处理,可以快速简洁地向医护人员提供需要医疗
服务的病患的房间号,使得医护人员能够在最短时间对病患进行处理。
病患通过按动墙上呼救按钮来给医护人员发送信号,如下图所示。
当有若干病患发出求助信号时,值班室里对应房间的指示灯亮起,并且呼叫扬声器播放紧急振铃,当医生知道了病患的需求时,按下面板上的按钮,停止紧急呼叫振铃,如下图所示。
走廊中的显示牌指示医护人员应优先处理的病患房间号。
当所有需要救治的病患均处理结束后,医护人员将开关调至正常状态,显示屏熄灭。
第二章系统设计
2.1 方案论证
本系统共分为三个部分:值班室的指示灯部分,值班室的紧急振铃部分,走廊的病患处理顺序显示部分。
1.值班室的指示灯部分
本系统设计将所有开关的一端接地,另一端接5v电压。当开关断开时测量点的电势为高,反之为低。将测量点处的电势信号输入到8255芯片的PB 组接口上,通过编程使改组电势从PA组接口输出。输出的电势通过芯片74LS245对led组进行驱动,从而实现当开关闭合时led指示灯亮起的目的。
2.值班室的紧急振铃部分
放置在值班室内的紧急振铃是当有病患发出紧急呼叫信号后蜂鸣器才会响起,以提示医护人员紧急对该病患进行救治。实现的原理是将对测量点处的电势组进行与操作的结果作为8253定时器计数器通道0的时钟信号,计数值设为1,运行方式为方式2。每当用户按下呼叫按钮时,产生的脉冲使计数器的计数值加一,此时计数值满,OUT0输出低电平。这时医生按下终止振铃按钮会在原有基础上增加一个脉冲,使得OUT0的输出再次回归高电平状态等待计数。将OUT0的输出与时钟脉冲进行或非操作,结果值送到8253计数器通道1的时钟接口中。OUT1的输出控制扬声器播放指定音阶的呼叫振铃。
3.走廊的病患处理顺序显示部分
对于优先处理的问题本系统通过8线-3线优先编码器实现(74LS148),对于优先显示我们利用了优先编码器自身的优先性,显示的是房间号较小的病患(房间号为0-7)。
在实现上,由于74LS148的输出为低有效(真值表见下表),直接将它编码后的输出值作为段式液晶驱动芯片(74LS47)的输入使用。
在得到最优先的二进制编码后,由于试验箱上只有一块8255芯片,因此段式液晶的驱动我们采用静态驱动电路的方式进行。通过输出高电平有效的译码器(74LS47)进行驱动共阴极数码管来显示从8线-3线编码器处输出的结果即可实现在显示屏上显示的病患房间号的目的。
2.2 单元电路设计 1.指示灯部分
原理框图如下:
开关
0E0H-0E6H
仿真截图如下:
2.紧急振铃部分
仿真截图如下:
3.病患处理顺序显示
原理框图如下:
仿真截图如下:
第三章编程实现3.1 程序流程图
主函数:
开始
8255初始化:
工作方式0、PA输
出、PB输入
将8255的PB端口值
送到PA中
调用OUTA函数
结束
OUTA函数:
入口
初始化8253通道0:
方式2、BCD计数
设置8253通道0计数
值为1
初始化8253通道1:
方式3、二进制计数
设置8253通道1:
计数值,即为设置振
铃音调:85271436
出口
3.2 程序代码
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX,0E6H ;8255
MOV AL,82H
OUT DX,AL
BG: MOV DX,0E2H ;8255
IN AL,DX
MOV DX,0E0H ;8255
OUT DX,AL
CALL OUTA
JMP BG
OUTA PROC NEAR
MOV DX,0F6H ;8253 CHANNEL0 MOV AL,00010101B
OUT DX,AL
MOV DX,0F0H ;8253
MOV AL,01H
OUT DX,AL
MOV DX,0F6H ;8253 CHANNEL1 MOV AL,01110110B
OUT DX,AL
MOV DX,0F2H ;8253:8
MOV AL,36H
OUT DX,AL
MOV AL,11H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:5
MOV AL,17H
OUT DX,AL
MOV AL,15H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:2
MOV AL,24H
OUT DX,AL
MOV AL,20H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:7 MOV AL,05H
OUT DX,AL
MOV AL,12H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:1 MOV AL,73H
OUT DX,AL
MOV AL,22H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:4 MOV AL,04H
OUT DX,AL
MOV AL,17H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:3 MOV AL,05H
OUT DX,AL
MOV AL,18H
OUT DX,AL
CALL DELAY
MOV DX,0F2H ;8253:6 MOV AL,53H
OUT DX,AL
MOV AL,13H
OUT DX,AL
CALL DELAY
RET
OUTA ENDP DELAY PROC NEAR MOV CX,60000
LOOP $
RET
DELAY ENDP
CODE ENDS
END START