資源描述:
《單片機(jī)醫(yī)院病房呼叫系統(tǒng)設(shè)計(jì)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、單片機(jī)報(bào)告2010-05-0810一.整體設(shè)計(jì)臨床求助呼叫(監(jiān)護(hù))是傳送臨床信息的重要手段,病房呼叫系統(tǒng)是病人請求值班醫(yī)生或護(hù)士進(jìn)行診斷和護(hù)理的緊急呼叫工具,可將病人的請求快速傳送給值班醫(yī)生或護(hù)士,并在值班室的監(jiān)控中心電腦上留下準(zhǔn)確完整的記錄,是提高醫(yī)院和病室護(hù)理水平的必備設(shè)備之一。呼叫系統(tǒng)的優(yōu)劣直接關(guān)系到病員的安危,歷來受到各大醫(yī)院的普遍重視。它要求及時(shí)、準(zhǔn)確、可靠、簡便可行。本呼叫系統(tǒng)基于Ateml89C51單片機(jī),振蕩電路的晶振采用12MHz,由控制核心AT89S52單片機(jī)、電源電路、振蕩電路、復(fù)位電路、數(shù)碼管解碼芯片、病房選擇和七段數(shù)碼管等部分組成,系統(tǒng)框圖如下:選擇電路電源電路A
2、T89S51單片機(jī)復(fù)位電路振蕩電路解碼芯片數(shù)字顯示電路二.硬件設(shè)計(jì)2.1電路原理圖工作原理為:電源電路為單片機(jī)以及其他模塊提供5V10電源。晶振模塊為單片機(jī)提供時(shí)鐘標(biāo)準(zhǔn),使系統(tǒng)各部分能協(xié)調(diào)工作。復(fù)位電路模塊為單片機(jī)系統(tǒng)提供復(fù)位功能。單片機(jī)作為主控制器,根據(jù)輸入信號對系統(tǒng)進(jìn)行相應(yīng)的控制。病房一共為四個(gè),從1號病房到4號病房病人的情況由重到輕,即1號病房的優(yōu)先級最高,4號病房的優(yōu)先級最低。所以,當(dāng)有兩個(gè)病房一起呼叫時(shí),優(yōu)先級高的病房號顯示;當(dāng)?shù)蛢?yōu)先級的病房呼叫完畢后高優(yōu)先級的病房呼叫,系統(tǒng)顯示的號碼改變;當(dāng)優(yōu)先級高的病房呼叫完畢后工作人員未復(fù)位的情況下,低優(yōu)先級的病房呼叫無效。另外,當(dāng)有病房呼
3、叫時(shí)蜂鳴器響直至復(fù)位。此次設(shè)計(jì)的電路圖如下:(2.2元器件列表元件名稱型號數(shù)量/個(gè)用途單片機(jī)AT89S521控制核心排阻4.7KΩ1晶振12MHz1晶振電路電容22pF2電解電容10uF/10V1復(fù)位電路病房按鈕按鍵5電阻10KΩ5電源5V/0.5A1電源電路數(shù)碼管1位共陽2解碼芯片74LS472BCD解碼蜂嗚器1電解電容1復(fù)位電路電容1041復(fù)位電路二極管1復(fù)位電路發(fā)光二極管1電源顯示開關(guān)1電源開關(guān)102.3仿真圖:1、未通電:2、通電:101、低優(yōu)先級病房先呼叫:(蜂鳴器響)高優(yōu)先級病房后呼叫:(蜂鳴器響)呼叫有效2、高優(yōu)先級病房先呼叫:(蜂鳴器響)低優(yōu)先級病房后呼叫:(蜂鳴器響)10
4、呼叫無效1、當(dāng)有兩個(gè)病房同時(shí)呼叫時(shí)1號3號病房同時(shí)呼叫顯示1號三.軟件設(shè)計(jì)3.1功能介紹10啟動系統(tǒng)后,數(shù)碼管顯示0。當(dāng)有一個(gè)病人呼叫時(shí),數(shù)碼管顯示相應(yīng)病房號,同時(shí)蜂鳴器響起;當(dāng)有兩個(gè)病人同時(shí)呼叫時(shí),數(shù)碼管顯示優(yōu)先級高的,同時(shí)蜂鳴器響起;當(dāng)有一個(gè)病房呼叫后另一個(gè)病房呼叫,若后呼叫的病房優(yōu)先級低,則數(shù)碼管顯示不變,若后呼叫的病房優(yōu)先級高,則數(shù)碼管顯示后呼叫的,兩種情況下蜂鳴器都會叫,只是在有別的病房呼叫時(shí)有一點(diǎn)變音。3.2程序流程圖程序流程圖如下:開始工作有一個(gè)病房呼叫有多個(gè)病房呼叫判斷優(yōu)先級顯示病房號并響鈴開始有病房再次呼叫判斷優(yōu)先級10顯示病房號并響鈴3.3程序源代碼:#include<
5、reg51.h>#defineucharunsignedcharsbitkey4=P3^0;//定義按鍵位置sbitkey3=P3^1;sbitkey2=P3^2;sbitkey1=P3^3;sbitreset=P3^4;//復(fù)位sbitBEEP=P1^7;//定義蜂鳴器端口ucharflag1,i;voidchoice();voidclean();voiddelay();voidde();voidring();voidmain(){while(1){P3=0xff;reset=0;BEEP=0;flag1=0;choice();delay();clean();}}10voidchoice
6、()//確定病人{(lán)while(reset!=1&&flag==0){if(key1==0){de();if(key1==0){P0=0X86;flag=1;}}elseif(key2==0){de();if(key2==0&&key1!=0){P0=0Xdb;flag=1;}}elseif(key3==0){de();if(key3==0&&key1!=0&&key2!=0){P0=0Xcf;flag=1;}}elseif(key4==0){de();if(key4==0&&key1!=0&&key2!=0&&key3!=0){P0=0Xe6;flag=1;}}}}voidclean()/
7、/RESET為高的時(shí)候復(fù)位{if(reset==1){BEEP=0;P0=0x3f;}}voiddelay()//RESET為低的時(shí)候延時(shí){10while(!reset){ring();}}voidring(){for(i=0;reset==0;i++)//喇叭發(fā)聲的時(shí)間循環(huán){de();BEEP=!BEEP;if(key1==0
8、
9、key2==0
10、
11、key3==0)//第二次呼叫{if(P0==0X86)P0=0X86;