智能医院护理呼叫系统的设计(7)

2019-06-02 14:04

辽宁科技大学本科生毕业设计 第27 页

在采样子程序中,当采样到某一请求信号后,启动中断,进行相应的处理操作。包括挂机处理、摘机处理、分机处理。

2. 挂机处理

当查询到SAMPING.2为1时,表示电话机已挂机,此时CPU应完成以下几点任务: (1) 挂机后,数码管不再显示通话和呼叫的床号,应切换到当前时间的显示; (2) 复位电话拨号个数计数器,保证下次摘机;

(3) 置挂机状态,接通喇叭继电器,断开接通继电器,断开齐呼继电器,停止

拨号音,停止忙音;

(4) 向分机发送挂机标志“#”。 3. 摘机处理

当查询到SAMPINGT.3为1时,表示电话机摘机,此时有两种可能的情况:一是主机呼叫分机;二是分机呼叫主机。针对这两种不同的情况,摘机处理应完成以下任务:

(1) 置振铃结束标志,断开铃流继电器;

(2) 如果是主机呼叫分机,摘机到拨号超过8秒,产生忙音,禁止拨号; (3) 置摘机标志,电话拨号计数器复位,产生拨号音,禁止忙音,断开喇叭继 电器;

(4) 如果是分机呼叫主机,在启动定时器T2后,置已发标志。 通话标志有效时,接通继电器,整备分机与主机通话。 4. 电话机处理

电话机处理主要完成对电话机使用情况的实时处理,电话机处理程序如图4.13所示。从图可以看出,电话机处理首先要完成电话机号码的接收与存储,接着进行号码的判断;如果接收的号码为“00”,则启动广播齐呼;如果接收的号码为“#+级别号+分机号”或“*+级别号+分机号”则进行护理级别的设置与删除;除此之外,则启动主机呼叫分机程序。

辽宁科技大学本科生毕业设计 第28 页

入口 存摘机计数

超过3S 产生忙音 停止拨号音接受拨号

否 1码吗? 是 是 存1号码 2码吗?

否 3码吗? 是 1码#? 否

20H.6=1,存存床号高位 是

2码 否 4码吗? 1码*? 20H.6=0,存存床号低位

是 2码 级别处理 1码0?

2码0? 1码9?

2码0? 是本次设置最大 床位有效 报警 启动齐呼

返回 发号 图4.13 电话机处理流程图

辽宁科技大学本科生毕业设计 第29 页

4.3.3 分机处理

当查询到分机请求标志SAMPINT.0为1时,表示有分机向主机呼叫。分处理要完成以下几部分工作:收分机号码、进行呼叫指示、启动语音播报、电话机振铃。

1. 收分机号码

对于接收的不同号码,应有不同的处理。当第一个号码为“B”时,接下来收到的两个号码就是输液完毕的床号,且高位在前,低位在后。为了判断接收的分机号码是第几个号码,定义CRN_C为呼叫号码个数计数器,其初值为3,每接收1次分机号码,CRN_C的值减1,这样通过CRN_C的值就可以判断接收的是第几分机号码,以及床号的高位与低位。这里还有个技术要求,接收的号码间隔要<200ms,否则拒收。为了实现收号号码间隔限时,定义RBN_C为收号限时计数器,每当收完第一个号码后,置收号限时标志28H.2为1,RBN_C为0,在定时器1中,每5ms使RBN_C加1,当第2个号码到来时,查看RBN_C中的值是否超过40,超过40应拒绝接收。

2. 呼叫指示

系统设计的最大床号为90,每一个床号又有一级护理,二级护理之分,加上呼叫指示,一个床号对应有3个指示灯进行相应的指示,因此一个床号需要3个标志位进行标记,如何才能根据呼叫的床号,正确的找到所对应的呼叫指示灯所在单元中的标志位呢?一个内存单元有8位,而一个床号只需要3个标志位,因此一个单元可以存储两个床位的状态标号,其中奇数的床号状态放在低3位,偶数的床号状态放在高4位的低3位。这样90个床号状态需要分配45个单元。见表4.1:

D7 D6 D5 D4 D3 D2 D1 D0 偶数床呼偶数床二偶数床一 奇数床呼奇数床二奇数床一 叫位 级护理位 级护理位 叫位 级护理位 级护理位 表4.1 呼叫指示

3.启动语音播报

启动语音播报流程图见4.14 和表4.2:语音播报时应考虑到以下两点: (1)语音播报时,要区分是床号,同时还应区分是呼叫还是输液完毕。 (2)如果有两个或多个分机同时呼叫时,应进行交叉语音播报。

辽宁科技大学本科生毕业设计 第30 页

S1—S4输入的控制码

0 0 0 0 0 0 0 0 1 1 1

0 0 0 0 1 1 1 1 0 0 0

0 0 1 1 0 0 1 1 0 0 1

表4.2 语音分组表

0 1 0 1 0 1 0 1 0 1 0

输出语音

1 2 3 4 5 6 7 8 9 10 床呼叫

在播音前要根据呼叫的床号,先将语音控制码存储到指定的内存单元。在存储语音控制码时,根据语音播报情况,可分几类进行存储:如果是单号床,直接存储床号控制码;如果是“十”先存储床号的高位语音控制码,接着存储“十”的语音控制码;如果以上两种情况都不是,接着存储“十”的语音控制码,再存储床号的低位的语音控制码,接下来存储“床呼叫”或是“床输液完毕”,具体判断工作已在分机号码的接收部分完成,如果是床呼叫,控制码为“10”,是输液完毕,控制码为“11”,最后存储播音次数、呼叫的床号,以及播音结尾符“0FFH”。为了保证两个或多个分机同时呼叫时,能进行交叉语音播报,再存储语音控制码时,应从第一个播音缓冲区进行查询,如非语音结束符,就一直向下一个单元进行查询,直到查询到语音结束符“0FFH”,才将此次的语音码从下一个单元开始进行存储,播音是从语音缓冲区的首单元开始一直到语音结束符单元依次播报,这样就完成了语音交叉播报。将播音次数也存储到播音换成区中,是为了实现再没有摘机信号到来时能连续播报3次。当语音播报结束后,再播音缓冲区首单元存播音结尾符“FFH”停止语音的播报。

4.电话机振铃

语音呼叫的同时,还要使电话机响铃,以便通知相关人员接听电话。 4.3.4 语音播报

该子程序是利用单片机内部定时器产生的中断来完成的,它主要完成语音的播报及将呼叫的床号和时间存入缓冲区。将AP8821设置为CPU触发模式,该模式语音信号的输出选择是由AP8821的S1—S4引脚输入的地址决定,语音播报时由SBT引脚的高

辽宁科技大学本科生毕业设计 第31 页

脉冲触发,语音信号从VOUT1与VOUT2引脚输出。OUT2引脚被设置为语音播报指示,在进行语音播报时OUT2引脚设置为低电平,语音播报结束后OUT2引脚上升为高电平。一次完整的语音播报是通过OUT2引脚产生的中断来完成的,在启动第一个语音播报之后,OUT2引脚输出为低电平,在第一个语音播报词结束后,OUT2引脚上升为高电平,将这个上升沿信号作为外部中断INT1的中断信号,程序又进入中断处理。在中断程序中,如果查询到播音未完,就启动下一个语音播报,这样直到一次完整的语音播报结束[10]。


智能医院护理呼叫系统的设计(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:管理

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: