基于51单片机的无线病房呼叫助手的设计.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 无线 病房 呼叫 助手 设计
- 资源描述:
-
. . 基于51单片机的无线病房呼叫助手的设计 一、 研究背景 许多医院里,为了能及时为患者效劳,每X病床的床头都有一个按钮,需要时病人按下床头的按钮,护理站即通过声光报警的方式显示哪一个床位的病人在呼叫,这就是所谓的病房呼叫系统。病房呼叫系统可以用有线连接的方式实现,缺点是布线复杂,维修麻烦。而病房无线呼叫系统那么具有安装方便,无需布线等优点,其应用也越来越广。它有以下几个明显的特点: (1) 应用编译码器专用集成电路及单片机进展控制操作,可以实现多点的无线呼叫。 (2) 呼叫者按动按钮后,系统在显示呼叫者病床号的同时电路发出报警。 (3) 如果有多处呼叫同时进展,先呼叫的信号优先锁存显示,保证系统能够有续的进展。 (4) 无线呼叫更方便需要看护的病人进展小X围的活动,可以随时请求帮助。 二、 硬件设计 1、设计框图 本研究设计多路无线病房呼叫器,包括发射机(从机)局部和接收主机局部。从机框图如图1所示。 呼叫按键 PT2262编码 315MHz射频发射 图1 从机框图 病房中每个床位都设置一个不同编号的按钮,该按钮通过PT2262地址编码,然后经过发射电路进展发射。在发射局部,系统利用拨码开关或跳线来控制地址位和数据位〔二进制〕信息的设置,再通过编码电路进展编码和并串转换把地址位和数据位信息变换成一串脉冲信号,最后由无线发射电路发射出去。 如图2所示为接收显示主机工作原理框图。从天线中接收到的信号会直接进入解码电路,解码电路会先把接收到信号中的地址位与本地的地址位进展比拟,如果地址位比拟正确,就会把接收到数据信息传送给由单片机,单片机电路那么会根据接收到的数据进展一系列动作:把数据在液晶屏上显示出来并触发音乐报警电路。如果在地址位的比拟中出现误差,解码电路不会送出任何信息,单片机电路也不会有任何响应。 8952单片机系统 PT2272编码 315MHz接收 LCD床号显示 音乐报警 图2 接收显示主机框图 2、315MHz射频发送与接收模块 考虑到射频电路收发的稳定性,本设计使用射频收发模块实现,其中发送模块电路原理如图3所示,模块外型如图4所示。 图3 发送模块电路图 图4 发送模块外形图 DF数据发射模块的工作频率为315M,采用声表谐振器SAW稳频,频率稳定度极高,当环境温度在-25~+85度之间变化时,频飘仅为3ppm/度。特别适合多发一收无线遥控及数据传输系统。声表谐振器的频率稳定度仅次于晶体,而一般的LC振荡器频率稳定度及一致性较差,即使采用高品质微调电容,温差变化及振动也很难保证已调好的频点不会发生偏移。 DF发射模块未设编码集成电路,而增加了一只数据调制三极管Q1,这种构造使得它可以方便地和其它固定编码电路、滚动码电路及单片机接口,而不必考虑编码电路的工作电压和输出幅度信号值的大小。比方用PT2262等编码集成电路配接时,直接将它们的数据输出端第17脚接至DF数据模块的输入端即可。 接收模块使用315MHz超再生式接收模块,其电路原理如图5所示,外型如图6所示。 图5 超再生式接收电路原理图 DF接收模块的工作电压为5伏,静态电流4毫安,它为超再生接收电路,接收灵敏度为-105dbm,接收天线最好为25~30厘米的导线,最好能竖立起来。接收模块本身不带解码集成电路,因此接收电路仅是一种组件,只有应用在具体电路中进展二次开发才能发挥应有的作用,这种设计有很多优点,它可以和各种解码电路或者单片机配合,设计电路灵活方便。其优点在于: (1) 天线输入端有选频电路,而不依赖1/4波长天线的选频作用,控制距离较近时可以剪短甚至去掉外接天线。 (2) 输出端的波形相比照拟干净,干扰信号为短暂的针状脉冲,所以抗干扰能力较强。 (3) DF模块自身辐射极小,加上电路模块反面网状接地铜箔的屏蔽作用,可以减少自身振荡的泄漏和外界干扰信号的侵入。 (4) 采用带骨架的铜芯电感将频率调整到315M后封固,这与采用可调电容调整接收频率的电路相比,温度、湿度稳定性及抗机械振动性能都有极大改善。可调电容调整精度较低,只有3/4圈的调整X围,而可调电感可以做到多圈调整。可调电容调整完毕后无法封固,因为无论导体还是绝缘体,各种介质的靠近或侵入都会使电容的容量发生变化,进而影响接收频率。另外未经封固的可调电容在受到振动时定片和动片之间发生位移;温度变化时热胀冷缩会使定片和动片间距离改变;湿度变化因介质变化改变容量;长期工作在潮湿环境中还会因定片和动片的氧化改变容量,这些都会严重影响接收频率的稳定性,而采用可调电感就可解决这些问题,因为电感可以在调整完毕后进展封固,绝缘体封固剂不会使电感量发生变化。 3、PT2262\2272编解码电路 数据编码采用编码芯片PT2262实现,解码采用PT2272芯片。PT2262是XX普城公司生产的一种CMOS工艺制造的低功耗低价位的通用编解码电路,芯片内部带有振荡器、系统内部包含载波振荡、定时器、地址解码器、编码脉冲发生器和控制逻辑电路,外围电路简单,使用方便,其管脚如图7所示,内部逻辑如图8所示。 图7 PT2262芯片引脚 图8 PT2262内部逻辑 PT2272解码器是对应的8位解码接收器,管脚排列如图9所示。当PT2262发出的编码与PT2272预置的编码一样时,它的17脚就会输出高电平。第14脚为输入端,第15脚、第16脚是振荡器,外接电阻值为几百千欧即可。 图9 PT2272芯片引脚 4、电路原理图 (1) 发射电路 图10 发射电路图 发射电路由3V纽扣电池供电。只有当发射按键K1按下时系统才会接通电源,因此功耗极低。发射机地址A0—A7预置为全0,而数据线D0—D3通过跳线设定。不同的数据D0—D3对应不同的发射机编号。 (2) 接收电路 接收电路如图11所示。通过超再生式接收模块接收的信号送入PT2272解码电路。当PT2272的地址引脚A0—A7和信号中的地址一样时,VT端输出高电平,同时接收信号中的数据被送入数据引脚D0—D3上。 图11 接收电路图 (3) 单片机电路 本设计选用宏晶公司高性能单片机STC89C52,该芯片为52内核8位单片机,兼容Intel等52内核单片机,支持ISP下载,适用于常用检测控制电路。由STC89C52组成的单片机系统原理图如图12所示。图中P1.0—P1.3得到接收电路的数据D0—D3信号,P1.6接VT信号。当VT有效,即有呼叫时,单片机从P1.0—P1.3引脚读出发射子机编号,再触发报警和显示电路。 图12 单片机电路图 (4) 显示电路 显示局部采用SMC 1602液晶屏进展数据显示,其主要技术参数为: 表1 液晶屏技术指标 接口信号说明如表2所示。 表2 液晶屏接口信号说明 与单片机接口电路如图13所示。 图13 LCD与单片机接口电路 (4) 音乐报警电路 音乐报警电路采用16首曲目的门铃芯片TQ33A,该芯片内置音频驱动电路,可以直接连接扬声器播放音乐。 图14 音乐报警电路 (5) 供电及程序下载电路 本设计采用USB接口供电,电源电压5V。同时,USB接口通过内含PL2303芯片的转换电路对单片机进展程序编写。其电路原理如图15所示。 图15 供电及程序下载电路 三、 软件编程 1、软件流程图 本设计接收模块单片机软件主程序流程图如图16所示。 图16 单片机主程序流程图 2、主程序 下面介绍main.c主程序编写,其他程序略。 (1) 头文件和一些宏定义 #include <reg52.h> #include "1602.h" typedef unsigned char U8; /*defined for unsigned 8-bits integer variable 无符号8位整型 */ typedef signed char S8; /* defined for signed 8-bits integer variable 有符号8位整型 */ typedef unsigned int U16; /* defined for unsigned 16-bits integer variable无符号16位整型*/ typedef signed int S16; /* defined for signed 16-bits integer variable 有符号16位整型*/ typedef unsigned long U32; /* defined for unsigned 32-bits integer variable无符号32位整型 */ typedef signed long S32; /* defined for signed 32-bits integer variable 有符号32位整型 */ typedef float F32; /* single precision floating point variable (32bits) 单精度浮点数*/ typedef double F64; /* double precision floating point variable (64bits) 双精度浮点数*/ (2) 常量、变量定义和函数声明 //定义无线接收信号 sbit FlagIn = P1^6; sbit Bell = P3^6; //定义标识 volatile bit FlagCall = 0; //有呼叫信号 volatile bit FlagKeyPress = 0; //有键按下 //函数声明 void Data_Init(); void Timer0_Init(); void Port_Init(); void ADC_Init(); uchar GetADVal(); void KeyProcess(uint ); //------------------定义变量--------------------// U16 temp; U16 Counter; U8 din; U8 TotalCall, CallNumOld; U8 CallNum[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; U8 index = 0; //------------------函数声明--------------------// void Data_Init(); void Timer0_Init(); void INT0_Init(void); void Timer0_ISR (void); void main(); (3) 各子程序 //数据初始化 void Data_Init() { P1 = 0xff; Counter = 0; din = 0; FlagIn = 1; Bell = 0; TotalCall = 0; index = 0; } //定时器0初始化 void Timer0_Init() { ET0 = 1; //允许定时器0中断 TMOD = 1; //定时器工作方式选择 TL0 = 0x06; TH0 = 0xf8; //定时器赋予初值 TR0 = 1; //启动定时器 } //定时器0中断 void Timer0_ISR (void) interrupt 1 using 0 { U8 i; TL0 = 0x06; TH0 = 0xf8; //定时器赋予初值 Counter ++; //显示呼叫号 if (Counter >= 500) { if (TotalCall > 5) { for (i=0;i<5;i++) { L1602_char(1,i*3+1,CallNum[i+index]/10+48); L1602_char(1,i*3+2,CallNum[i+index]%10+48); } if (index<(TotalCall-5)) { index ++; } else { index = 0; } } Counter = 0; } } //外部中断初始化函数 void INT0_Init(void) { IT0 = 1; //负边沿触发中断 EX0 = 1; //允许外部中断0 } //按键中断处理 void INT0_ISR (void) interrupt 0 { //取消键按下,所有指示灯熄灭 L1602_string(1,1," "); L1602_string(2,1," No Call "); TotalCall = 0; CallNumOld = 255; } /******************************************************************** * 名称 : Main() * 功能 : 主函数 ***********************************************************************/ void main() { U16 i, j; U8 flag; EA = 0; Timer0_Init(); //定时器0初始化 INT0_Init(); //外部中断初始化 Data_Init(); EA = 1; L1602_init(); L1602_string(1,1," Wele to "); L1602_string(2,1,"Wireless Calling!"); //延时 for (i=0;i<500;i++) for (j=0;j<500;j++) {;} //清屏 L1602_string(1,1," "); L1602_string(2,1," "); L1602_string(1,1," "); L1602_string(2,1," No Call "); while(1) { //检测是否有无线接收信号 if (FlagIn == 1) { for (i=0;i<10000;i++) ; //延时,以保证一个VT脉冲只计一次 if (FlagIn == 1) { Bell = 1; //播放音乐 din = P1 & 0x0f; //取出呼叫号 //和未处理的呼叫号比拟,如果是新的那么显示 flag = 0; for (i=0;i<TotalCall;i++) { if (CallNum[i] == din) flag = 1; //与已有呼叫号一样 } if (flag == 0) { if (TotalCall<16) { CallNum[TotalCall] = din; TotalCall ++; L1602_int(2,4,TotalCall); } if (TotalCall <=5) { L1602_char(1,(TotalCall-1)*3+1,CallNum[TotalCall-1]/10+48); L1602_char(1,(TotalCall-1)*3+2,CallNum[TotalCall-1]%10+48); } } } //等待VT脚高电平变低 while (FlagIn) ; Bell = 0; //音乐播放信号归0 } } } . .word.zl.展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




基于51单片机的无线病房呼叫助手的设计.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/4556285.html