微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于PIC单片机的新型医用呼叫对讲系统设计

基于PIC单片机的新型医用呼叫对讲系统设计

时间:03-08 来源:互联网 点击:

3 通信方式与传输协议
目前市场上有的呼叫系统采用CAN总线协议,使用带CAN通信模块的MCU,但是此类:MCU一般价格比较昂贵;还有的采用DTMF(双音多频)传输协议,即使用DTMF信号编解码芯片,主分机发送DTMF信号来通信,即主机机均使用DTMF信号编解码芯片,也存在着成本偏高的问题。因此该系统的设计,在考虑通信稳定的原则上,只在主机电路上使用DTMF信号编解码芯片,编写通信协议,通过增加软件设计的复杂程度,合理地降低产品成本。
3.1 分机发码方式
分机发码采用100 kHz的方波,由单片机GPIO4引脚输出并经三极管耦合至总线。分机呼叫时发送一定时长的方波,如图6所示,分机回复主机的信号是间隔性的方波,如图7所示。

3.2 主机发码方式
主机发码采用变长占空比发送码元,其中1:1的占空比表示0码元,而若占空比为3:1则表示码元1,主机发码示意图如图8所示。


3.3 通信协议
为保证通信过程的可靠性,特制定如下通信协议:主机发码数据格式规定为:控制命令+分机地址,每次发送11位数据,其中bit11~bit9为是命令码,低字节为指定分机的号码。主机发码时,先发起始信号,分机识别到起始信号后开始收码。分机的号码存储在各自E2PROM里,初始值均设为0,主机可对其在线编码,收到主机的改号命令,所有分机的LED指示灯点亮,提示用户按键,修改成功后将返回主机一个确认信号,否则将超时退出而不作处理。分机只有在主动呼叫或识别到主机的起始信号后才被唤醒,平时处于睡眠状态,因此极大地节省了功耗。
主机查询时,每查询一个分机后,都先检测是否有摘机,若摘机将会执行摘机流程。所有分机的忙标志从刚开始查询时就会被置位,此不允许分机呼叫时再发码,此时分机呼叫主机仍能检测到,只是总线上没有方波传输,因此保证了通信的稳定性。
主、分机进行语音通信时,其他分机仍可以发出呼叫,由于请求信号的方波是100 kHz,而语音频率范围为0.3~3.4 kHz,主机在电话挂机的状态下才查询呼叫的分机,不会相互干扰,因此语音信号和数字信号可以同时在总线上传输。分机呼叫时发送100 kHz方波到总线,主机由收到电路检测到低电平,触发中断进行收码,然后主机将先屏蔽此呼入中断,再开始按病床护理等级的高低依次查询,若查询到该分机,就回复应答信号,没有呼叫的分机不做应答。查询完以后恢复呼入电平中断,并发送命令通知分机复位的忙标志位。

4 主分机软件设计与实现
4.1 工作流程
系统主机、分机通信软件主要包括发送和接收2部分,分发送模块和主机收码流程分别如图9和图10所示。每个分机需包含分机地址码,广播机标志位,这些信息均存储在E2PROM中,当第一次启动分机后,写入初始值,以后只从指定地址读取分机信息。地址分配如表1所示。


为了保证发码的准确性,使波形更加精确,在发码模块采用了汇编语言提高,并通过参数控制发码周期,发送100 kHz的方波,精确到微秒级,经实验测得频率误差小于5%。收码均用定时器读取。由于主机采用变长编码,因此分机解码过程需要根据协议进行1或O门限判决;主机解码主要由锁相环集成芯片LM567完成,加上分机回复码只分有无回复二种。
4.2 系统稳定性
此系统很好解决了呼叫与请求总线的冲突,由于主机总是从1号分机查询到最后一个,主机在查询时分机都不能发100 kHz的方波,因此总线不会受到干扰,误码率大大降低,且不会遗漏分机请求,即使出现100个分机同时呼叫这种极端情况,主机也能一一响应。主机采用变长编码,分机用码时采用定时器读取,配以计数的状态机,使CPU能准确解码,而且能够消除毛刺带来的影响,保证了收码的准确性。主机和分机在主循环中同样采用状态机,用全局变量在各状态间切换并用变量及标志位控制,合理地分配CPU资源,能够及时处理最紧急事件。主机电话挂机还能复位输入的变量,即使操作失误,仍能通过挂机来取消。

5 结语
该系统采用载波技术,实现了两线无极性连接,使安装施工变得十分简单。分机采用低功耗稳压电源和PIC单片机,使分机具有较低功耗,从而系统具有较好的扩展性。主机与分机通信距离大于等于1 000 m,分机数大于等于100,能满足各种规模医院的要求,并预留了接口与PC进行通信。在通信稳定的基础上,使用了经济实惠的芯片,具有安装布线简单,便于检测维修,节约设计成本等优点。本文研发的样机已经经过实验运行验证了其有效性和实用价值,并已投入小批量试生产,具有良好的推广应用前景。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top