基于单片机的无线病床呼叫系统设计文档格式.doc
- 文档编号:8431401
- 上传时间:2023-05-11
- 格式:DOC
- 页数:27
- 大小:1.60MB
基于单片机的无线病床呼叫系统设计文档格式.doc
《基于单片机的无线病床呼叫系统设计文档格式.doc》由会员分享,可在线阅读,更多相关《基于单片机的无线病床呼叫系统设计文档格式.doc(27页珍藏版)》请在冰点文库上搜索。
2.1设计材料 2
2.2设计方案及步骤 3
第三章系统硬件设计 4
3.1系统原理框图 4
3.2单片机AT89C51芯片简介 4
3.3硬件模块设计 6
3.3.1无线发射模块 7
3.3.2无线接收模块 8
3.3.3数码管显示模块 9
3.3.4指示灯模块 9
3.3.5声音模块 10
第四章系统软件设计 11
4.1单片机C语言程序设计步骤 11
4.2延时子程序设定 11
4.3数码管显示子程序 11
4.4初始化程序设计 13
4.5主函数程序设计 16
4.6外部中断服务子程序 16
4.7定时器中断服务子程序设计 18
第五章硬件制作与软件调试中遇到的问题 19
5.1硬件设计制作中的问题 19
5.2软件设计中的问题 19
第六章系统结果与分析 20
参考文献 21
致谢 22
摘要
随着无线技术的发展,无线应用技术已经渗透到生活的各个领域,无线传输技术也越来越成熟,本设计是将无线传输技术应用到临床上的研究型课题,实现基于单片机AT89C5l和无线传输模块构成的无线多路病床呼叫系统,将简单论述其工作原理和软硬件设计方法,概括研究成果。
本设计是以AT89C51单片机为核心,通过无线发射模块发射传输信号,无线接收模块接收信号,经AT89C51处理,实现病人与医护的无线远距离沟通。
通过软硬件设计,实现了病床呼叫器的设计要求,制作出实物产品,检测一切正常,能够实现100米的远距离发射接收,也能绕过障碍物传输,能够满足临床应用的要求。
本产品性能稳定、占用空间小、使用材料少、传输速度快、距离远,是无线技术在医学临床上的大胆应用,具有创新性和可行性。
关键词:
单片机AT89C5l;
无线传输模块;
病床呼叫
ABSTRACT
Aswirelesstechnology,wirelessapplicationtechnologyhaspenetratedintoallspheresoflife,moreandmoresophisticatedwirelesstechnology,thisdesignisthewirelesstransmissiontechnologytotheclinicalresearchonthesubject,andtherealizationofwirelesstransmissionbasedonsinglechipAT89C5lmodulesconsistingofmultiplebedscallsystem,willsimplydiscusstheworkingprincipleanddesignmethodofhardwareandsoftware,generalresearchresults.ThedesignisbasedonAT89C51microcontrollerasthecore,throughthewirelesstransmittermoduletransmittingtransmissionsignal,thewirelessreceivermodulereceivedsignal,transmissiontopatientsandhealthcareAT89C51controltoachievelong-distancewirelesscommunication.Throughsoftwareandhardwaredesign,implementationofthedesignrequirementsforhospitalbedspagers,createphysicalproducts,testingallthenormaldistanceof100meterscanbeachievedtransmittingandreceiving,butalsocantransfertobypassobstacles,toachieveclinicalapplication.Thestableperformance,smallfootprint,usefewermaterials,transmissionspeed,distanceandwirelesstechnologyinthemedicalapplicationofclinicalbold,innovativeandfeasible.
Keywords:
AT89C51;
wirelesstransmitmodul;
sickbedbeeper
第一章绪论
1.1课题研究背景及意义
目前大多医院的病床呼叫系统采用有线传输方式,有线传输占用空间较大,耗材多,而且不易移动,因此现今需要对病床呼叫系统进行升级,近年来在我国无线领域有了大的进展,这为此提供了有力的技术支持。
有的一些简易无线发射接收模块传输距离近,速率低,可靠性差,不适合用于产品的设计。
本设计是基于单片机实现的医用无线多路病床呼叫系统,分为无线发射模块、无线接收模块、单片机控制部分、显示部分、警报呼叫部分和复位应答部分。
本系统通过无线电实现信号的传递,单片机作为控制部件协调处理整个系统的工作,实现无线信号的远距离传输,减少了材料的耗费,安装简单,使医患沟通更加灵活,是无线网络技术在医学临床上的大胆应用,具有创新性。
1.2设计要求及预期目标
设计要求:
设计出稳定高效的运行系统,并且有一定的抗干扰能力,能够实现多路呼叫且互不干扰。
距离在100m范围内,实现多路无线病床呼叫,并留有扩展空间。
预期目标:
病人按呼叫键时,无线发射器发射信号,无线接收器接收无线信号,通过单片机控制处理,护士值班室发出呼叫警报持续10s左右,相应床位的呼叫指示灯亮,同时数码管上显示相应的床位号并隔1s闪烁一次,当护士按键应答,指示灯熄灭,数码管显示消失,警报由定时器控制关闭。
当有多个病人呼叫没有及时应答时,对应指示灯都亮,数码管上间隔1s轮回显示床位号。
单片机复位时,数码管清零。
1.3设计可行性
有线呼叫器受位置的制约不能很好的达到医患沟通,无线呼叫系统就显示其很大的优越性,可移动,不受位置制约,现今无线传输技术有了突飞猛进的发展,技术越来越成熟,普遍应用到生活、娱乐、学习和军工等领域,这为无线传输技术与医学临床的结合提供了技术支持。
在校期间我们也学习了与单片机相关的课程,有了一定的理论基础。
我校现有的实验室与设备也能够满足系统硬件制作调试与软件仿真的需求。
因此,本课题具有可行性,能够得到实现。
第二章设计材料及方案步骤
2.1设计材料
根据本设计要求,我将使用的设计材料见表2-1。
表2-1使用材料清单
由于无线收发模块是从网上购买,在制板时就没有在原理图中划出。
2.2设计方案及步骤
针对我要设计的题目,制定以下方案:
第一步,根据设计目的构想设计的原理图框架,学习设计中要用到的知识,如无线发射模块的原理、编码解码,单片机C语言编程设计,数码管显示,使用的芯片引脚工作原理,Proteus和Protel软件使用等。
预计准备时间为三周。
第二步,根据初步设计的原理图在Proteus上画出,同时进行KeilC程序编写,进行软件仿真、调试,直到运行成功。
预计时间为五周。
第四步,在Protel中绘制原理图,准备使用材料,制作封装,布线制作PCB板,打印制板,然后将程序下载到制单片机中,进行硬件检测调试,如没有达到预期目的,再更换元器件或添加元器件,直到产品调试成功。
预计时间为三周。
通过努力我们提前做好产品,并实现了预期目标。
第三章系统硬件设计
3.1系统原理框图
根据设计要求绘制系统原理图如图3-1所示。
发射模块
接收模块
数码管显示
指示灯
单片机
声音报警
图3-1系统原理图
3.2单片机AT89C51芯片简介
AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU(CenctralProcessingUnit)和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C系列单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
外形及引脚排列如图3-2所示。
图3-2AT89C51外形及引脚图
1、主要功能部件和特性:
(1)8位微处理器(CPU)。
(2)程序存储器(4KBFlashROM)。
(3)数据存储器(128BRAM)。
(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口)。
(5)1个全双工的异步串行口。
(6)2个可编程的16位定时器/计数器。
(7)中断系统具有5个中断源、5个中断向量。
(8)32可编程I/O线。
(9)特殊功能寄存器(SFR)26个。
(10)13个程序加密锁定位。
(11)低功耗的闲置和掉电模式。
2、AT89C51引脚介绍:
(1)VCC(40脚):
接+5V电源。
(2)GND(20脚):
接数字地。
(3)XTAL1(19脚):
片内振荡器反相放大器和时钟发生器电路的输入端。
(4)XTAL2(18脚):
片内振荡器反相放大器的输出端。
本设计中使用12M晶振。
(5)RSTE(9脚):
复位信号输入端,高电平有效。
(6)EA/VPP(31脚):
当EA为高电平时,当超出片内程序范围时自动读取片外程序;
当EA为低电平时,只读外部程序内容。
本设计EA接VCC。
(7)P0口:
8位,漏极开路的双向I/O口。
当AT89C51扩展外部存储器及I/O口时,P0口作为地址总线低8位,及数据总线的分时复用端口。
也可作为通用的I/O口使用,但需要加上拉电阻,这时为准双向口。
当作为输入时,应先向端口锁存器写入1。
(8)P1口:
8位,专为用户使用的准双向口,具有内部上拉电阻。
(9)P2口:
8为,准双向口,具有内部上拉电阻。
当扩展外部存储器及I/O口使用时,作为高8位地址总线。
也可作为通用I/O口。
(10)P3口:
8位,准双向口,具有内部上拉电阻。
可作为通用I/O口使用,还提供第二功能,见表3-1。
表3-1P3口第二功能
P3.0
RXD
串行数据输入口
P3.1
TXD
串行数据输出口
P3.2
INT0
外部中断0
P3.3
INT1
外部中断1
P3.4
T0
定时器0外部计数输入
P3.5
T1
定时器1外部计数输入
P3.6
WR
外部数据写选通输出
P3.7
RD
外部数据读选通输出
3.3硬件模块设计
由图3-1系统原理框图可知,整个系统分为五个模块:
无线发射模块、无线接收模块、声音报警模块、指示灯显示模块、数码管显示模块,主控芯片是单片机,本设计使用Atmel公司的AT89C51,编程控制周边外设。
根据设计步骤,首先要设计程序和仿真,程序设计将在下一章中介绍。
在绘制好系统原理框图后,就要设计各个模块的电路图并编程实现模块功能,这两步是同时进行,由系统原理框图我设计了proteus仿真原理图,如图3-3所示。
图3-3硬件仿真原理图
在仿真完成之,就在protel中制作原理图和PCB板图,protel原理图如图3-4所示。
图3-4Protel原理图
下面将简单的介绍各个模块设计方案。
3.3.1无线发射模块
无线发射接收模块是从网上购买,本套套件包含:
一个4路非锁存输出的接收模块(M4)和一个4键木纹遥控器(编码芯片为PT2262,配有电池),工作频率315MHZ,实际应用距离50-100米。
接收模块四路输出,高电平电压约为5V,电流约为2mA,可与单片机对接,或加一级放大驱动继电器或小型直流电机。
图3-5所示为发射模块实物图,由PT2262编码,发射模块的A、B、C、D四个按键分别代表不同的病床号,按下表示病人呼叫。
图3-5无线发射模块
发射模块有密码保证功能,最多可以编6个数据码和6561个地址码,使重复的机会大大减少。
其性能参数如下:
•电源电压:
DC3V~DC12V •静态电流:
≤0.02uA •发射频率:
315MHz
•发射电流:
5~50mA •发射距离:
50~800m •调制方式:
ASK
在通常使用中,我们一般采用8位地址码和4位数据码,这时编码芯片PT2262和解码芯片PT2272的第1~8脚为地址设定脚,有三种状态可供选择:
悬空、接正电源、接地三种状态,3的8次方为6561,所以地址编码不重复度为6561组,只有发射端PT2262和接收端PT2272的地址编码完全相同,才能配对使用,一般生产厂家都把地址编码端悬空,用户可以自己设置编码。
设置地址码的原则是:
同一个系统地址码必须一致;
不同的系统可以依靠不同的地址码加以区分。
3.3.2无线接收模块
解码接收模块包括接收头和解码芯片PT2272两部分。
接收头将接收的信号输入PT2272的14引脚(DIN),PT2272对接收到的信号解码。
接收模块实物如图3-6所示。
图3-6无线接收模块
引脚定义:
•VT——解码有效指示输出脚;
•D0-D3——四个控制信号输出引脚;
•VCC——+5V;
•GND——负极、地;
•ANT
天线,用24-28CM长的导线。
图3-7是制板原理图接收模块接口处,四个数据输出口接到四个I/O口,分别通过四个非门后接在AT89C51单片机的P0.0-P0.3引脚上。
图中四个按键是对应四个床位的回复键,与经过反相后的无线信号输入8位与门4068芯片中,4068的1号引脚接到int0端口,当有病人呼叫时,int0由高电平变为低电平,触发外部中断0进入中断处理程序。
图3-7接收模块接口与应答键处理原理图
在买模块之前并没有在接受模块后加反相器,购买的模块收到后首先对模块进行测试,不按键时接收模块信号端电压为0V,当有键按下时信号输出端的电压为4.98V,说明接受模块输出为高电平有效,但中断要求是在不按下时P0口都是高电平,因此要在接受模块输出端口后加反相器。
于是就又在Proteus中进行仿真,在1-4号键盘后加上反相器,结果在没按下时int0端口就已经是低电平,中断无法触发,分析原因,是由于实物中接受模块是处于连通状态,是有低电平信号的,仿真时键盘在没有按下时处于断路状态,而无法实现在不按时为低电平按下时为高电平,所以,仿真不能实现。
对实物图进行测试,接收模块的输出端经反相后,当呼叫键按下时int0由高电平变为低电平,能够触发中断。
3.3.3数码管显示模块
显示模块如图3-8所示,由CD4511和数码管组成,把病床号显示到数码管上。
CD4511的ABCD四个输入接在AT89C51的P1.0-P1.3口上,两个位选端接到P1.4和P1.5口。
图3-8数码管显示模块
3.3.4指示灯模块
每个床位都有与之对应的指示灯,当有病人呼叫时,其对应的指示灯亮,直到护士应答回复,指示灯用发光二极管实现,分别接在P2口的P2.0-P2.3引脚上,每个指示灯串联一个300Ω电阻,起限流作用,防止电流过大损坏二极管,模块图如图3-9所示。
图3-9指示灯显示模块
3.3.5声音模块
本设计中四个床位使用一个蜂鸣器报警,接在P3.0引脚上,在中断扫描中,当有人呼叫时开启蜂鸣器,而后利用定时器0中断控制报警10s。
利用三极管当做开关电路可以保护单片机,还可以起到放大电流的作用,当三极管基极为低电平时,发射极截止,为高电平时,发射极导通。
模块图如图3-10所示。
图3-10声音模块
设计时R20的电阻不能过大,先用较大的电阻进行硬件调试,如果测得按下呼叫键后R20两端电压小,那么三极管基极电流就小,蜂鸣器的声音就会小,就要改用小一点的。
本设计中使用20K的电阻,调试,蜂鸣器声音正常。
第四章系统软件设计
4.1单片机C语言程序设计步骤
程序设计步骤包括绘制程序流程图,编写程序,运行调试,仿真模拟,硬件调试等步骤。
4.2延时子程序设定
延时子程序作为方便其他程序调用,避免程序繁琐重复。
我将延时子程序定为延时1ms,程序如下:
voiddelay(uintz)//延时子函数1ms
{
uintx,y;
for(x=z;
x>
0;
x--)
for(y=110;
y>
y--);
}
4.3数码管显示子程序
本设计中使用CD4511芯片作为数码管显示的驱动芯片,CD4511是一个用于驱动共阴极LED(数码管)显示器的BCD码—七段码译码器,特点:
具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路能提供较大的拉电流。
可直接驱动LED显示器。
CD4511的引脚图如图4-1所示。
A、B、C、D为BCD码输入,A为最低位。
CD4511有拒绝伪码的特点,当输入数据越过十进制数9(1001)时,显示字形也自行消隐。
所谓共阴LED数码管是指7段LED的阴极是连在一起的,在应用中应接地。
限流电阻要根据电源电压来选取,电源电压5V时可使用300Ω的限流电阻。
图4-1CD4511的引脚图
其功能介绍如下:
①BI:
4脚是消隐输入控制端,当BI=0时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字;
当BI=1时,正常显示。
②LT:
3脚是测试输入端,当LT=1时,正常显示;
当BI=1,LT=0时,译码输出全为1,不管输入DCBA状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏
③LE:
锁定控制端,当LE=0时,允许译码输出;
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的状态。
④A1、A2、A3、A4:
为8421BCD码输入端。
⑤a、b、c、d、e、f、g:
为译码输出端,输出为高电平1有效。
CD4511的工作真值表见表4-1。
表4-1CD4511的真值表
LED数码管显示器工作方式有两种:
静态显示方式和动态显示方式。
静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。
当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。
这种方法的优点是占用CPU时间少,显示便于监测和控制。
缺点是硬件电路比较复杂,成本较高。
动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。
选亮数码管采用动态扫描显示。
所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。
动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。
硬件设计中LE端接地,在程序设计时,我令输入端DCBA均为1,即令P1=0xff来实现数码管的消隐。
由于要同时显示不同的数据,所以使用动态扫描方式,动态间隔时间为1ms。
串联的限流电阻为100Ω。
程序如下:
voiddisplay(uintaa,uintbb)//显示子函数
{
while(k<
500)
{
k++;
P1=0xff;
P1=table[aa];
delay
(1);
P1=table[bb];
}
k=0;
P1=0xff;
delay(400);
4.4初始化程序设计
初始化程序包括数码管初始化显示00、蜂鸣器截止、定时器和中断系统初始化。
(一)、数码管初始化
由于使用的数码管为共阴极的,所以要想在起先使数码管显示00,那么两个数码管的片选端都应是低电平,4511的ABCD四个输入口都应该是低电平,因此,P1口应为0x00。
(二)、蜂鸣器初始化
在电路中NPN型三极管9013作为开关控制蜂鸣器的导通与截止,电阻R20起到限流作用,当P3.0口为低电平时三极管截止,蜂鸣器截止,电压为0,当P3.0为高电平时三极管导通,蜂鸣器导通,电压为5V。
因此在初始化时要将P3.0置0。
(三)、定时器和中断系统初始化
AT89C51有两个定时/计数器,都有定时和计数两种工作模式,四种工作方式(方式0、方式1、方式2、方式3),属于增一计数器。
特殊功能寄存器TMOD用于选择定时器/计数器T0、T1的工作模式和工作方式。
但无论是工作在定时器模式还是计数器模式,实质都是对脉冲信号进行计数,只是计数的来源不同,计数器模式是对加在T0(P3.4)和T1(P3.5)两个引脚的外部脉冲进行计数,而定时器模式是对单片机的时钟振荡器信号经片内12分频后的内部脉冲信号计数。
1、工作方式控制寄存器TMOD,不能位寻址,其格式如图4-2所示。
D7
D6
D5
D4
D3
D2
D1
D0
GATE
C/T
M1
M0
T1方式字段 T0方式字段
图4-2寄存器TMOD的格式
(1)GATE:
门控位。
(2)M0、M1:
工作方式选择位。
(3)C/T:
计数器和定时器模式选择位。
C/T=0,为定时器模式;
C/T=1为计数器模式。
M0、M1共有4种
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 无线 病床 呼叫 系统 设计