資源描述:
《簡易病床呼叫系統(tǒng)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學術(shù)論文-天天文庫。
1、.簡易病床呼叫系統(tǒng)一、系統(tǒng)介紹本簡易病床呼叫系統(tǒng)的功能是:啟動系統(tǒng)后,數(shù)碼管顯示0。當有一個病人呼叫時,數(shù)碼管顯示相應病房號,同時蜂鳴器響起;當有兩個病人同時呼叫時,數(shù)碼管顯示優(yōu)先級高的,同時蜂鳴器響起;當有一個病房呼叫后另一個病房呼叫,若后呼叫的病房優(yōu)先級低,則數(shù)碼管顯示不變,若后呼叫的病房優(yōu)先級高,則數(shù)碼管顯示后呼叫的,兩種情況下蜂鳴器都會叫,只是在有別的病房呼叫時有一點變音。在本系統(tǒng)中,設(shè)病房1到4優(yōu)先級遞減。本簡易病床呼叫系統(tǒng)基于AT89C51單片機,振蕩電路的晶振采用12MHz,由控制核心AT89C51單片機、電源電路、振蕩電路、復位電路、病房選擇和七段數(shù)碼管等部
2、分組成,系統(tǒng)框圖如下:電源電路振蕩電路數(shù)碼管顯示電路AT89C51單片機復位電路選擇電路圖1系統(tǒng)框圖本系統(tǒng)利用了單片機AT89C51內(nèi)部時鐘信號,外接晶振和電容進行微調(diào)頻率,用單片機的I/O口對數(shù)碼管進行靜態(tài)驅(qū)動,在此基礎(chǔ)上,增加了復位電路和選擇電路。通過選擇電路可以確定幾號病房呼叫,用復位電路進行清零。二、電路圖電路設(shè)計完成后,通過Proteus進行仿真,仿真電路如下圖2。...圖2系統(tǒng)仿真電路本系統(tǒng)選擇電路利用四個按鍵開關(guān)模擬病房1--4呼叫,分別連接到單片機的P3^0、P3^1、P3^2、P3^3,按下開關(guān)說明相應的病房呼叫。單片機的P0口外接排阻和數(shù)碼管,復位電路和
3、蜂鳴器分別與P3^4和P1^7相連。系統(tǒng)通電后,仿真電路結(jié)果如下圖3:圖3通電后系統(tǒng)仿真電路按下第一個開關(guān),模擬1號病房呼叫,仿真結(jié)果如下圖4:...圖41號病房呼叫仿真結(jié)果若同時按下第一個開關(guān)和第二個開關(guān),則數(shù)碼管只顯示“1”,仿真如下圖5:圖51號和2號同時呼叫一、系統(tǒng)程序流程圖本系統(tǒng)程序流程圖如下:...開始工作有一個病房呼叫有多個病房呼叫判斷優(yōu)先級顯示病房號并響鈴有病房再次呼叫四、系統(tǒng)程序#include#defineucharunsignedcharsbitkey4=P3^0;//定義按鍵位置sbitkey3=P3^1;sbitkey2=P3^2
4、;sbitkey1=P3^3;sbitreset=P3^4;//復位sbitbeep=P1^7;//定義蜂鳴器端口ucharflag1,i;voidchoice();voidclean();voidsound();voiddelay();...voidring();voidmain(){while(1){P3=0xff;reset=0;beep=0;flag1=0;choice();sound();clean();}}voidchoice()//確定病房{while(reset!=1&&flag1==0){if(key1==0){delay();if(key1==0){P0
5、=0X86;flag1=1;}}elseif(key2==0){delay();if(key2==0&&key1!=0){P0=0Xdb;flag1=1;}}elseif(key3==0){delay();if(key3==0&&key1!=0&&key2!=0){P0=0Xcf;flag1=1;}}elseif(key4==0){delay();if(key4==0&&key1!=0&&key2!=0&&key3!=0){P0=0Xe6;flag1=1;}}...}}voidclean()//reset為高的時候復位{if(reset==1){beep=0;P0=0x3f
6、;}}voidsound(){while(!reset){ring();}}voidring(){for(i=0;reset==0;i++)//喇叭發(fā)聲的時間循環(huán){delay();beep=!beep;if(key1==0
7、
8、key2==0
9、
10、key3==0)//多個病房呼叫的處理,判斷優(yōu)先級{if(P0==0X86)P0=0X86;elseif(P0==0Xdb&&key1==0)P0=0X86;elseif(P0==0Xcf&&key1==0)P0=0X86;elseif(P0==0Xcf&&key1==1&&key2==0)P0=0Xdb;elseif(P0==0Xe
11、6&&key1==0)P0=0X86;elseif(P0==0Xe6&&key1==1&&key2==0)P0=0Xdb;...elseif(P0==0Xe6&&key1==1&&key2==1&&key3==0)P0=0Xcf;}}}voiddelay()//延遲函數(shù),防抖動{for(i=300;i>0;i--);}五、總結(jié)本簡易病床呼叫系統(tǒng)通過四個按鍵開關(guān)閉合模擬四個病房呼叫,數(shù)量有限,與實際情況存在較大差距,醫(yī)院病房數(shù)量多。此外,本系統(tǒng)設(shè)置了病房呼叫的優(yōu)先級,如1號病房優(yōu)先級最高,然后依次遞減,若有多個病房同