版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
...wd......wd......wd...單片機(jī)人體感應(yīng)紅外報(bào)警器設(shè)計(jì)摘要:熱釋電紅外傳感器,它的制作簡(jiǎn)單、本錢低、安裝比擬方便,而且防盜性能比擬穩(wěn)定,抗干擾能力強(qiáng)、靈敏度高、安全可靠。這種防盜器安裝隱蔽,不易被盜賊發(fā)現(xiàn),便于多用戶統(tǒng)一管理。本設(shè)計(jì)包括硬件和軟件設(shè)計(jì)兩個(gè)局部。硬件局部包括單片機(jī)控制模塊、紅外探頭模塊、驅(qū)動(dòng)執(zhí)行報(bào)警模塊、LED控制模塊等局部組成。處理器采用51系列單片機(jī)STC89C52,程序使用C語(yǔ)言編寫。關(guān)鍵字:熱釋電紅外傳感器、STC89C52、紅外線0.前言隨著科技的提高,電子電器飛速開(kāi)展,人民生活水平有了很大提高。各種高檔家電和貴重物品為許多家庭所擁有。然而一些不法分子也越來(lái)越多。這點(diǎn)就是因?yàn)椴环ǚ肿涌吹搅舜缶植咳朔辣I意識(shí)不夠強(qiáng)所造成的結(jié)果。因此越來(lái)越多的居民家庭對(duì)財(cái)產(chǎn)安全問(wèn)題十分擔(dān)憂。報(bào)警系統(tǒng)這時(shí)為人們解決了大局部問(wèn)題。但是市場(chǎng)上的報(bào)警系統(tǒng)大局部是適用于一些大公司的重要機(jī)構(gòu)。其價(jià)格昂貴,使普通家庭難以承受。如果設(shè)計(jì)一種價(jià)格低廉,性能可靠、智能化的報(bào)警系統(tǒng),必將在私人財(cái)產(chǎn)的防盜領(lǐng)域起到巨大作用。由于紅外線是不可見(jiàn)光,隱蔽性能良好,因此在防盜、戒備等安保裝置中被廣泛應(yīng)用。而本設(shè)計(jì)的電路包括硬件和軟件兩個(gè)局部。硬件局部包括紅外感應(yīng)局部與單片機(jī)控制局部,整個(gè)系統(tǒng)電路可劃分為:電源局部、傳感器模塊局部、單片機(jī)控制電路,而單片機(jī)控制由最小系統(tǒng)和指示燈電路、報(bào)警電路等子模塊組成。主要工作由熱釋電紅外感應(yīng)器完成信息采集、處理、數(shù)據(jù)傳送經(jīng)過(guò)單片機(jī)功能設(shè)定到達(dá)報(bào)警模塊這一過(guò)程。就此設(shè)計(jì)的核心模塊來(lái)說(shuō),單片機(jī)就是設(shè)計(jì)的中心單元。單片機(jī)應(yīng)用系統(tǒng)也是由硬件和軟件組成。硬件包括單片機(jī)、輸入/輸出設(shè)備、以及外圍應(yīng)用電路等組成的系統(tǒng),軟件是主要是工作的程序通過(guò)編寫程序來(lái)控制輸入的信號(hào)。1.總體方案設(shè)計(jì)1.該設(shè)計(jì)包括硬件和軟件設(shè)計(jì)兩個(gè)局部。模塊劃分為數(shù)據(jù)采集、按鍵設(shè)定、報(bào)警等。2.本紅外線防盜報(bào)警系統(tǒng)由熱釋電紅外傳感器、蜂鳴器、單片機(jī)控制電路、LED指示電路及軟件組成。3.系統(tǒng)可實(shí)現(xiàn)功能。當(dāng)人員外出時(shí),可把報(bào)警系統(tǒng)設(shè)置在外出布防狀態(tài),探測(cè)器工作起來(lái),當(dāng)有人闖入時(shí),熱釋電紅外傳感器將探測(cè)到動(dòng)作,設(shè)置在監(jiān)測(cè)點(diǎn)上的紅外探頭將人體輻射的紅外光譜變換成電信號(hào),紅外熱釋電模塊送出TTL電平至STC89C52單片機(jī),經(jīng)單片機(jī)處理運(yùn)算后驅(qū)動(dòng)執(zhí)行報(bào)警電路使警號(hào)發(fā)聲。2.硬件電路的設(shè)計(jì)本設(shè)計(jì)包括硬件和軟件設(shè)計(jì)兩個(gè)局部。從設(shè)計(jì)的要求來(lái)分析該設(shè)計(jì)須包含如下構(gòu)造:紅外感應(yīng)局部、STC89C52單片機(jī)、報(bào)警系統(tǒng)三大局部。電路總原理圖如圖3-1所示:電源開(kāi)關(guān)電源開(kāi)關(guān)電源STC89C52單片機(jī)復(fù)位電路LED指示燈報(bào)警電路按鍵控制圖3-1總體設(shè)計(jì)框圖處理器采用51系列單片機(jī)STC89C52。整個(gè)系統(tǒng)是在系統(tǒng)軟件控制下工作的。設(shè)置在監(jiān)測(cè)點(diǎn)上的紅外探頭將人體輻射的紅外光譜變換成電信號(hào),送出TTL電平至STC89C52單片機(jī)。在單片機(jī)內(nèi),經(jīng)軟件查詢、識(shí)別判決等環(huán)節(jié)實(shí)時(shí)發(fā)出入侵報(bào)警狀態(tài)控制信號(hào)。驅(qū)動(dòng)蜂鳴器及報(bào)警指示燈報(bào)警。3.2.1紅外感應(yīng)局部電源模塊本系統(tǒng)電壓為4.5v左右,直接接3個(gè)1.5V的直流干電池提供電源,然后用導(dǎo)線連接電源接口模塊。熱釋電傳感器熱釋電紅外傳感器(簡(jiǎn)稱PIR)是80年代開(kāi)展起來(lái)的一種新型高靈敏度探測(cè)元件。它能以非接觸形式檢測(cè)出人體輻射的紅外線能量的變化,并將其轉(zhuǎn)換成電壓信號(hào)輸出。將這個(gè)電壓信號(hào)加以放大,便可驅(qū)動(dòng)各種控制電路,如作電源開(kāi)關(guān)控制、防盜防火報(bào)警、自動(dòng)覽測(cè)等,人體輻射的紅外線中心波長(zhǎng)為9~10--um,而探測(cè)元件的波長(zhǎng)靈敏度在0.2~20--um范圍內(nèi)幾乎穩(wěn)定不變。在傳感器頂端開(kāi)設(shè)了一個(gè)裝有濾光鏡片的窗口,這個(gè)濾光片可通過(guò)光的波長(zhǎng)范圍為7~10--um,正好適合于人體紅外輻射的探測(cè),而對(duì)其它波長(zhǎng)的紅外線由濾光片予以吸收,這樣便形成了一種專門用作探測(cè)人體輻射的紅外線傳感器,本傳感器是整個(gè)系統(tǒng)的關(guān)鍵,只有本傳感器才能感應(yīng)到人體紅外線。如圖3-2所示。圖3-2熱釋感應(yīng)傳感器菲涅耳透鏡菲涅耳透鏡片相當(dāng)于熱釋感應(yīng)傳感器的“眼鏡〞,它和人的眼睛一樣的作用,配用得當(dāng)與否直接影響到使用的成效,配用不當(dāng)產(chǎn)生錯(cuò)誤的動(dòng)作,致使用戶或者開(kāi)發(fā)者對(duì)其失去信心。它的作用是有效的將探測(cè)到空間的紅外線集中到傳感器上,菲涅耳透鏡根據(jù)性能要求不同,具有不同的焦距〔感應(yīng)距離〕,從而產(chǎn)生不同的監(jiān)控視場(chǎng),視場(chǎng)越多,控制越嚴(yán)密。如圖3-3所示為菲涅耳透鏡模型圖。圖3-3菲涅耳透鏡〔BISS0001芯片簡(jiǎn)介BISS0001是一款傳感信號(hào)處理集成電路,只要熱釋感應(yīng)器把紅外線接收到信號(hào)傳輸?shù)紹ISS0001里進(jìn)展信號(hào)處理,它本身靜態(tài)電流極小,工作電壓在3V—5V之間,當(dāng)工作電壓為5V時(shí)輸出的驅(qū)動(dòng)電流為10MA。配以熱釋電紅外傳感器和少量外圍元器件即可構(gòu)成被動(dòng)式熱釋電紅外傳感器,廣泛用于安防,自控等一些領(lǐng)域,它是有16個(gè)管腳組成的一種集成塊。如圖3-4所示為BISS000集成芯片的內(nèi)部框圖,管腳功能說(shuō)明如表1所示圖3-4BISS0001內(nèi)部框圖引腳名稱I/O功能說(shuō)明1AI可重復(fù)觸發(fā)和不可重復(fù)觸發(fā)選擇端。當(dāng)A為“1〞時(shí),允許重復(fù)觸發(fā);反之,不可重復(fù)觸發(fā)2VOO控制信號(hào)輸出端。由VS的上跳前沿觸發(fā),使Vo輸出從低電平跳變到高電平時(shí)視為有效觸發(fā)。在輸出延遲時(shí)間Tx之外和無(wú)VS的上跳變時(shí),Vo保持低電平狀態(tài)。3RR1--輸出延遲時(shí)間Tx的調(diào)節(jié)端4RC1--輸出延遲時(shí)間Tx的調(diào)節(jié)端5RC2--觸發(fā)封鎖時(shí)間Ti的調(diào)節(jié)端6RR2--觸發(fā)封鎖時(shí)間Ti的調(diào)節(jié)端7VSS--工作電源負(fù)端,一般接0V8VRFI參考電壓及復(fù)位輸入端。通常接VCC,當(dāng)接“0〞時(shí)可使定時(shí)器復(fù)位9VCI觸發(fā)制止端。當(dāng)Vc>VR時(shí)允許觸發(fā)(VR≈0.2VDD)10IB--運(yùn)算放大器偏置電流設(shè)置端,經(jīng)RB接VSS端,RB取值為1M左右。11VCC--工作電源正端,范圍為3~5V122OUTO第二級(jí)運(yùn)算放大器的輸出端132IN-I第二級(jí)運(yùn)算放大器的反相輸入端141IN+I第一級(jí)運(yùn)算放大器的同相輸入端151IN-I第一級(jí)運(yùn)算放大器的反相輸入端161OUTO第一級(jí)運(yùn)算放大器的輸出端表1:管腳說(shuō)明圖由圖可見(jiàn)BISS0001由運(yùn)算放大器、電壓比擬器和狀態(tài)控制器、延遲時(shí)間定時(shí)器、封鎖時(shí)間定時(shí)器即參考電壓等構(gòu)成的數(shù)?;旌蠈S眉呻娐贰?蓮V泛應(yīng)用于多種傳感器和延時(shí)控制器。首先,根據(jù)實(shí)際需要,利用運(yùn)算放大器OP1組成傳感信號(hào)預(yù)處理電路,將信號(hào)放大。然后耦合給運(yùn)算放大器OP2,再進(jìn)展第二級(jí)放大,同時(shí)將直流電位抬高為VM(≈0.5VDD)后,將輸出信號(hào)V2送到由比擬器COP1和COP2組成的雙向鑒幅器,檢出有效觸發(fā)信號(hào)Vs。由于VH≈0.7VDD、VL≈0.3VDD,所以,當(dāng)VDD=5V時(shí),可有效抑制±1V的噪聲干擾,提高系統(tǒng)的可靠性。COP3是一個(gè)條件比擬器。當(dāng)輸入電壓Vc>VR時(shí),COP3輸出為高電平,進(jìn)入延時(shí)周期。當(dāng)A端接“0〞電平時(shí),在Tx時(shí)間內(nèi)任何V2的變化都被忽略,直至Tx時(shí)間完畢,即所謂不可重復(fù)觸發(fā)工作方式。當(dāng)Tx時(shí)間完畢時(shí),Vo下跳回低電平,同時(shí)啟動(dòng)封鎖時(shí)間定時(shí)器而進(jìn)入封鎖周期Ti。在Ti時(shí)間內(nèi),任何V2的變化都不能使Vo跳變?yōu)橛行顟B(tài)〔高電平〕,可有效抑制負(fù)載切換過(guò)程中產(chǎn)生的各種干擾。而可重復(fù)觸發(fā)工作方式下的波形在Vc=“0〞、A=“0〞期間,信號(hào)Vs不能觸發(fā)Vo為有效狀態(tài)。在Vc=“1〞、A=“1〞時(shí),Vs可重復(fù)觸發(fā)Vo為有效狀態(tài),并可促使Vo在Tx周期內(nèi)一直保持有效狀態(tài)。在Tx時(shí)間內(nèi),只要Vs發(fā)生上跳變,則Vo將從Vs上跳變時(shí)刻起繼續(xù)延長(zhǎng)一個(gè)Tx周期;假設(shè)Vs保持為“1〞狀態(tài),則Vo一直保持有效狀態(tài);假設(shè)Vs保持為“0〞狀態(tài),則在Tx周期完畢后Vo恢復(fù)為無(wú)效狀態(tài),并且,同樣在封鎖時(shí)間Ti時(shí)間內(nèi),任何Vs的變化都不能觸發(fā)Vo為有效狀態(tài)。信號(hào)采集處理模塊圖3-5信號(hào)處理模塊圖3-6實(shí)物圖本電路是將人體輻射的紅外線轉(zhuǎn)變?yōu)殡娦盘?hào)。熱釋紅外感應(yīng)2腳輸入到前置放大器OP1進(jìn)展放大,然后由C4耦合給運(yùn)算放大器OP2進(jìn)展第二級(jí)放大。再經(jīng)過(guò)電壓比擬器COP1和COP2構(gòu)成雙向鑒幅器處理后,檢出有效觸發(fā)信號(hào)去啟動(dòng)延時(shí)時(shí)間定時(shí)器輸出信號(hào)在經(jīng)過(guò)R3進(jìn)入單片機(jī)局部進(jìn)展處理。延時(shí)周期可通過(guò)R12來(lái)調(diào)節(jié)輸出,在延時(shí)時(shí)間內(nèi)只要Vs發(fā)生上跳變,Vo就會(huì)從Vs上跳變時(shí)刻起繼續(xù)延長(zhǎng)一個(gè)周期,而電路中的電容為了能夠更好的控制了芯片內(nèi)的定時(shí)器,假設(shè)Vs一直保持為高電平,這樣就可以通過(guò)P10傳輸?shù)絾纹瑱C(jī)內(nèi)進(jìn)展下一步處理。而根據(jù)不同的距離要求來(lái)調(diào)節(jié)R13,最大可以調(diào)節(jié)到7米左右。圖中BISS0001中1腳用跳線連連接住一個(gè)接高電平后,在延時(shí)時(shí)間段內(nèi)如果有人體在其感應(yīng)范圍活動(dòng),其輸出將一直保持高電平,直到人離開(kāi)后才將高電平變?yōu)榈碗娖?,本電路設(shè)計(jì)就是可觸發(fā)方式。3.3單片機(jī)局部3.3.1STC89C52單片機(jī)簡(jiǎn)介STC89C52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。STC89C52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷構(gòu)造,全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,STC89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停頓工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停頓,直到下一個(gè)中斷或硬件復(fù)位為止。這一模塊以單片機(jī)為中心把程序代碼燒進(jìn)去然后外圍接上復(fù)位電路、振蕩電路、鍵盤控制、LED顯示電路、報(bào)警電路等子模塊。3.3.2單片機(jī)最小系統(tǒng)要使單片機(jī)工作起來(lái)最根本的電路構(gòu)成為單片機(jī)最小系統(tǒng)如圖3-7所示。圖3-7信號(hào)處理模塊單片機(jī)最小系統(tǒng)包括單片機(jī)、復(fù)位電路、時(shí)鐘電路構(gòu)成。STC89C52單片機(jī)的工作電壓范圍:4V-5.5V,所以通常給單片機(jī)外界5V直流電源。連接方式為單片機(jī)中的40腳VCC接正極5V,而20腳VSS接電源地端。復(fù)位電路就是確定單片機(jī)的工作起始狀態(tài),完成單片機(jī)的啟動(dòng)過(guò)程。單片機(jī)接通電源時(shí)產(chǎn)生復(fù)位信號(hào),完成單片機(jī)啟動(dòng)確定單片機(jī)起始工作狀態(tài)。當(dāng)單片機(jī)系統(tǒng)在運(yùn)行中,受到外界環(huán)境干擾出現(xiàn)程序跑飛的時(shí)候,按下復(fù)位按鈕內(nèi)部的程序自動(dòng)從頭開(kāi)場(chǎng)執(zhí)行。一般有上電自動(dòng)復(fù)位和外部按鍵手動(dòng)復(fù)位,單片機(jī)在時(shí)鐘電路工作以后,在RESET端持續(xù)給出2個(gè)機(jī)器周期的高電平時(shí)就可以完成復(fù)位操作。本設(shè)計(jì)采用的是外部手動(dòng)按鍵復(fù)位電路,需要接上上拉電阻來(lái)提高輸出高電平的值。時(shí)鐘電路好比單片機(jī)的心臟,它控制著單片機(jī)的工作節(jié)奏。時(shí)鐘電路就是振蕩電路,是向單片機(jī)提供一個(gè)正弦波信號(hào)作為基準(zhǔn),決定單片機(jī)的執(zhí)行速度。XTAL1和XTAL2分別為反向放大器的輸入和輸出,該反向放大器可以配置為片內(nèi)振蕩器。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。因?yàn)橐粋€(gè)機(jī)器周期含有6個(gè)狀態(tài)周期,而每個(gè)狀態(tài)周期為2個(gè)振蕩周期,所以一個(gè)機(jī)器周期共有12個(gè)振蕩周期,如果外接石英晶體振蕩器的振蕩頻率為12MHZ,一個(gè)振蕩周期為1/12us。3.3.3按鍵控制電路本電路的設(shè)計(jì)就是為了控制電路中布防和緊急狀態(tài)下不同的工作形式,當(dāng)按下布防按鍵后,30秒后進(jìn)入監(jiān)控狀態(tài),當(dāng)有人靠近時(shí),熱釋紅外感應(yīng)到信號(hào),傳回給單片機(jī),單片機(jī)馬上進(jìn)展報(bào)警。當(dāng)遇到特殊緊急情況時(shí),可按下緊急報(bào)警鍵,蜂鳴器進(jìn)展報(bào)警。如圖3-8所示。圖3-8按鍵局部3.3.4指示燈和報(bào)警電路在單片機(jī)的I/O里會(huì)輸出上下電平,在P20、P21和P22分別接上LED指示燈而P23接上蜂鳴器而蜂鳴器外接個(gè)8550的三極管起到開(kāi)關(guān)作用,當(dāng)三極管到達(dá)飽和狀態(tài)下就驅(qū)動(dòng)了蜂鳴器工作了。3-9指示燈和報(bào)警電圖路3.4軟件的程序?qū)崿F(xiàn)3.4.1主程序工作流程圖按上述工作原理和硬件構(gòu)造分析可知系統(tǒng)主程序工作流程圖如以下列圖所示:開(kāi)場(chǎng)開(kāi)場(chǎng)布防按鍵按下倒計(jì)時(shí)完畢15秒倒計(jì)時(shí)開(kāi)場(chǎng)檢測(cè)到有無(wú)信號(hào)蜂鳴器報(bào)警,發(fā)光二級(jí)管閃爍緊急按鍵按下YYN蜂鳴器報(bào)警完畢圖3-10主程序工作流程圖3.5報(bào)警判斷程序來(lái)的脈沖信號(hào)后,表示有人闖入監(jiān)控區(qū),從而經(jīng)過(guò)單片機(jī)內(nèi)部程序處理后,驅(qū)動(dòng)聲光報(bào)警電路開(kāi)場(chǎng)報(bào)警,持續(xù)報(bào)警,然后程序開(kāi)場(chǎng)循環(huán)工作,/******************紅外報(bào)警處理**********************/ voidhongwai_dis(){ if(flag_alarm==1) //報(bào)警 { red=~red; //紅燈報(bào)警 beep=~beep; //蜂鳴器報(bào)警 } if(flag_bufang_en==1)//準(zhǔn)備開(kāi)場(chǎng)布防 { green=~green; //綠燈閃 } if(flag_bufang==1)//確認(rèn)布防 { green=0;//如果延時(shí)布防成功綠燈長(zhǎng)亮 if(hw==1) //紅外有輸出 { flag_alarm=1; } }}3.6程序編寫與調(diào)試3.6.1Keil編譯器軟件簡(jiǎn)介KeilC51是美國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、構(gòu)造性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能表達(dá)高級(jí)語(yǔ)言的優(yōu)勢(shì)。下面詳細(xì)介紹KeilC51開(kāi)發(fā)系統(tǒng)各局部功能和使用。圖15C51工具包整體構(gòu)造圖KeilC51單片機(jī)軟件開(kāi)發(fā)系統(tǒng)的整體構(gòu)造C51工具包的整體構(gòu)造,如圖3.1所示,其中uVision與Ishell分別是C51forWindows和forDOS的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)立生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)展源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)展調(diào)試,也可以直接寫入程序存貯器如EPROM中。3.6.2使用Keil軟件建設(shè)一個(gè)工程Keil是目前進(jìn)展51單片機(jī)開(kāi)發(fā)最常用的編譯軟件。關(guān)于Keil的使用,有很多的資料介紹,這里只介紹其整個(gè)編譯過(guò)程,在最短時(shí)間內(nèi)開(kāi)場(chǎng)使用Easy51DP-2開(kāi)發(fā)板。對(duì)于Keil更詳細(xì)的介紹,可以參考一些專門書籍資料。在Keil里,每一個(gè)完整的程序,都是以一個(gè)工程的形式建設(shè)的。一個(gè)工程里可以有一個(gè)或多個(gè)*.c文件和*.h文件,但只可以有一個(gè)main()函數(shù)。一般的做法是將包含main()函數(shù)的C文件參加到工程中,其他文件以#include頭文件的形式加到這個(gè)C文件里。這樣,在編譯的時(shí)候,其他的文件會(huì)被自動(dòng)的導(dǎo)入到工程里來(lái)。翻開(kāi)Keil軟件后,出現(xiàn)〔圖16〕所示界面。當(dāng)然,如果Keil在上次關(guān)閉時(shí)有翻開(kāi)的工程,再一次翻開(kāi)時(shí)它會(huì)自動(dòng)加載上一次的工程文件。圖16Keil軟件主界面首先點(diǎn)擊Project->NewProject…〔Project->OpenProject…為翻開(kāi)一個(gè)已經(jīng)存在的工程〕,如圖17所示。圖17Keil軟件翻開(kāi)新工程界面點(diǎn)開(kāi)后,在出現(xiàn)的對(duì)話框中選擇工程存在路徑,單擊“保存〞后,出現(xiàn)〔如圖18所示〕界面。在此界面上選擇電路板上所用的單片機(jī)型號(hào):AtmelSTC89C52〔或者是AT89S52,視開(kāi)發(fā)板上具體型號(hào)而定〕,單擊“確定〞。圖18選擇電路板上所用的單片機(jī)型號(hào)設(shè)置完成后,軟件會(huì)提示“是否將8051上電初始化程序添參加工程〞如圖19所示,這個(gè)一般選擇“否〞。〔關(guān)于STARTUP.A51的相關(guān)內(nèi)容可查閱相應(yīng)資料〕圖19是否將8051上電初始化程序添參加工程這樣,就建設(shè)了一個(gè)空的51工程。接下來(lái)的事,就是在這個(gè)工程里面參加自己的程序代碼。點(diǎn)擊,或者File->New,便建設(shè)了一個(gè)空的文本框?,F(xiàn)在,就可以開(kāi)場(chǎng)在里面輸入你的代碼了。保存時(shí)注意:如果是用C語(yǔ)言寫的程序,則將文本保存成*.c,如果是用匯編寫的程序,則將文本存成*.asm。到目前為步,我們已經(jīng)建設(shè)了一個(gè)工程,也寫了一個(gè)程序代碼。但現(xiàn)在還不能開(kāi)場(chǎng)編譯。因?yàn)檫€沒(méi)有將程序代碼添加到工程里面去。下一步就是將寫完的程序添加到工程里面,如圖20所示,在左邊ProjectWorkspace里的SourceGroup1上右擊,選擇AddFilestoGroup’SourceGroup1’。在翻開(kāi)的對(duì)話框中,選擇剛存的文件路徑和對(duì)應(yīng)的擴(kuò)展名。這樣,程序就添加進(jìn)了這個(gè)工程。圖20添加文件到工程中下一步,就開(kāi)場(chǎng)編譯剛輸入進(jìn)去的代碼。點(diǎn)擊工具欄中的按鈕。接著,Keil會(huì)打出下面的提示:Buildtarget'Target1'assemblingled.asm...linking...ProgramSize:data=8.0xdata=0code=100"first"-0Error(s),0Warning(s).其中“"first"-0Error(s),0Warning(s).〞說(shuō)明現(xiàn)在的工程編譯通過(guò),0個(gè)錯(cuò)誤和0個(gè)警告。建設(shè)工程的時(shí)候,默認(rèn)是不生成HEX文件的,得在編譯做如下設(shè)置:?jiǎn)螕簦蛘咴赑rojectWorkspace里Target1上右擊,選擇“OptionsforTarget‘Target1’〞。出現(xiàn)如圖21所示對(duì)話框,選擇“Output〞按圖示,將箭頭所指的多項(xiàng)選擇框勾上,點(diǎn)“確定〞。現(xiàn)在再點(diǎn)擊重新編譯,系統(tǒng)提示:“creatinghexfilefrom"first"...〞。便會(huì)在工程所在文件夾里生成HEX文件。圖21生成HEX文件3.6.3使用Debug進(jìn)展調(diào)試Keil有很強(qiáng)大的調(diào)試功能,可以顯示C程序的反匯編代碼、可以計(jì)算代碼運(yùn)行的時(shí)間、可以顯示程序中某一變量的值……能用好這個(gè)調(diào)試工具對(duì)編寫單片機(jī)程序會(huì)有很大的幫助。同樣的,在這里,只對(duì)Debug進(jìn)展簡(jiǎn)單應(yīng)用介紹,更詳細(xì)的使用方法可以參看相關(guān)書籍資料。圖22調(diào)試前設(shè)置窗口首先,單擊,彈出如圖22所示對(duì)話框,在Target頁(yè)面上設(shè)置對(duì)應(yīng)的晶振頻率。其他不用作修改。設(shè)置完成后,單擊,進(jìn)入調(diào)試界面〔如圖23所示〕。圖23Keil調(diào)試界面點(diǎn)擊中對(duì)應(yīng)的工具按鈕則可以開(kāi)場(chǎng)調(diào)試。另外,“View〞下的三個(gè)工具在調(diào)試中會(huì)經(jīng)常用到如.圖24所示,“DisassemblyWindow〞顯示C文件的反匯編程序;“Watch&CallStackWindow〞可以顯示程序中某一變量的值;“MemoryWindow〞可以顯示內(nèi)存中某一地址的值。圖24三個(gè)常用的調(diào)試工具3.7硬件調(diào)試及調(diào)試中遇到的問(wèn)題第一步為目測(cè),單片機(jī)應(yīng)用系統(tǒng)電路全部手工焊接在洞洞板上,因此對(duì)每一個(gè)焊點(diǎn)都要進(jìn)展仔細(xì)的檢查。檢查它是否有虛焊、是否有毛剌等。第二步為萬(wàn)用表測(cè)試,先用萬(wàn)用表復(fù)核目測(cè)中認(rèn)為可疑的連線或接點(diǎn),查看它們的通斷狀態(tài)是否與設(shè)計(jì)規(guī)定相符,再檢查各種電源線與地線之間是否有短路現(xiàn)象。第三步為加電檢查。當(dāng)系統(tǒng)加電時(shí),首先檢查所有插座或器件引腳的電源端是否有符合要求的電壓值,接地端電壓值是否接近零,接固定電平的引腳端是否電平正確。第四步是聯(lián)機(jī)檢查。在對(duì)硬件電路調(diào)試過(guò)程中,還遇到了不少問(wèn)題,第一次把所有的元件都焊上去后,都準(zhǔn)備調(diào)試了,才發(fā)現(xiàn)正負(fù)電源的插針離得太近了,不容易接電源,本不該犯的錯(cuò)誤,這些都是由于自己的粗心大意造成的,所以說(shuō),做任何事情都必需經(jīng)過(guò)“三思而后行〞,來(lái)不得半點(diǎn)的馬虎,否則浪費(fèi)了時(shí)間和精力四、總結(jié)評(píng)價(jià)本設(shè)計(jì)研究了一種基于單片機(jī)技術(shù)的熱釋電智能防盜報(bào)警器。該防盜報(bào)警器通過(guò)以STC89C52單片機(jī)為工作處理器核心,外接熱釋電紅傳感器,它是一種新穎的被動(dòng)式紅外探測(cè)器件,能夠以非接觸方式探測(cè)出人體發(fā)出的紅外輻射,并將其轉(zhuǎn)化為相應(yīng)的電信號(hào)輸出,同時(shí)能有效的抑制人體輻射波長(zhǎng)以外的紅外光線與可見(jiàn)光的干擾。平時(shí)傳感器輸出低電平,當(dāng)有人在探測(cè)區(qū)范圍內(nèi)移動(dòng)時(shí)輸出低電平變?yōu)楦唠娖?,此高電平輸入單片機(jī),作為單片機(jī)的外部觸發(fā)信號(hào)處理,經(jīng)單片機(jī)內(nèi)部軟件編程處理后,單片機(jī)輸出控制信號(hào),驅(qū)動(dòng)聲光報(bào)警電路開(kāi)場(chǎng)報(bào)警。該報(bào)警器的最大特點(diǎn)就是使用戶能夠操作簡(jiǎn)單、易懂、靈活;且安裝方便、智能性高、誤報(bào)率低。隨著現(xiàn)代人們安全意識(shí)的增強(qiáng)以及科學(xué)技術(shù)的快速開(kāi)展,相信報(bào)警器必將在更廣闊的領(lǐng)域得到更深層次的應(yīng)用。到目前為止我的畢業(yè)設(shè)計(jì)也即將告一段落了,在這次的畢業(yè)設(shè)計(jì)中,自己也學(xué)習(xí)到了很多以前沒(méi)有沒(méi)有經(jīng)歷過(guò)的知識(shí),讓我更加清楚了理論知識(shí)和實(shí)踐能力的差異了,了解到自己的短處,培養(yǎng)了我的獨(dú)立思考能力,進(jìn)一步提高了自己在實(shí)際設(shè)計(jì)過(guò)程中研究問(wèn)題、發(fā)現(xiàn)問(wèn)題、解決問(wèn)題的能力,同時(shí),也發(fā)現(xiàn)了自己的缺乏之處,和一些問(wèn)題的存在,并有待進(jìn)一步學(xué)習(xí)和開(kāi)展,讓自己在未來(lái)的工作和學(xué)習(xí)之中更快的適應(yīng)和提高自己。致謝在本次畢業(yè)設(shè)計(jì)中,我得到了指導(dǎo)教師教師的熱心指導(dǎo)。自始至終關(guān)心催促畢業(yè)設(shè)計(jì)進(jìn)程和進(jìn)度。幫助解決畢業(yè)設(shè)計(jì)中遇到的許多問(wèn)題。還不斷向我傳授分析問(wèn)題和解決問(wèn)題的方法,并指出了正確的努力方向,使我在畢設(shè)過(guò)程中少走很多彎路。同時(shí),他還提供應(yīng)我們專門的各種設(shè)備及場(chǎng)所,使我在調(diào)試過(guò)程中能夠有充足的時(shí)間。在這里非常感謝海峰教師的指導(dǎo)和幫助,并致以誠(chéng)摯的謝意!同時(shí),身邊的同學(xué)給了我許多的幫助。在此,我向身邊關(guān)心我的同學(xué)致以誠(chéng)摯的謝意!另外,系里的領(lǐng)導(dǎo)和教師也給了我們必要的指導(dǎo),我也向系和年級(jí)的領(lǐng)導(dǎo)們表示衷心的感謝!最后感謝學(xué)院對(duì)我這幾年的培養(yǎng)。參考文獻(xiàn)[1]胡萍.串口通信的紅外報(bào)警器的研制[J].計(jì)算機(jī)與現(xiàn)代化,2010〔10〕:15-16.[2]唐德琴.電子溫度測(cè)量?jī)x器技術(shù)開(kāi)展戰(zhàn)略研究[J].電子科學(xué)技術(shù),2009,27〔1〕:1-8[3]李行善.基于串口組件的體系構(gòu)造[J].電子串口與儀器學(xué)報(bào),2010〔08〕:15-16.[4]姜道連等.用于AT89C51設(shè)計(jì)紅外報(bào)警器的設(shè)計(jì)與制作[J].國(guó)外電子元器件,2010〔12〕:31-34.[5]馮國(guó)進(jìn).嵌入式Linux驅(qū)動(dòng)程序設(shè)計(jì)從入f-J至U精通D田.北京:清華大學(xué)出版社,2008[6]蔡文齋.專業(yè)級(jí)串口調(diào)試器設(shè)計(jì).現(xiàn)代電子技術(shù),2010.[7]熊如貴.串口通信感應(yīng)裝置[J].電子制作,2009〔6〕:23-31.[8]時(shí)德鋼等.基于串口通信的紅外報(bào)警器的研究[J].計(jì)算機(jī)測(cè)量與控制,2009,10〔7〕:480-482.附件一:總體原理圖設(shè)計(jì)附件二:實(shí)物圖附件三:程序源代碼#include<reg52.h> //調(diào)用單片機(jī)頭文件#defineucharunsignedchar//無(wú)符號(hào)字符型宏定義 變量范圍0~255#defineuintunsignedint //無(wú)符號(hào)整型宏定義 變量范圍0~65535#definekey_ioP1ucharkey_can;//紅外熱釋電平時(shí)為0有輸出為1sbitbeep=P2^3; //蜂鳴器定義sbitred=P2^2; //紅色發(fā)光二極管定義sbitgreen=P2^1; //綠色發(fā)光二極管定義sbityellow=P2^0; //黃色發(fā)光二極管定義sbithw=P1^3; //紅外熱釋傳感器定義bitflag_300ms=0;/****************獨(dú)立按鍵處理函數(shù)************************/ voidkey(){ staticucharkey_new=0,key_old=0,key_value=0; if(key_new==0) //按鍵松開(kāi) { if((key_io&0x07)==0x07) key_value++; else key_value=0; if(key_value>=5) //按鍵松開(kāi)松手檢測(cè) { key_value=0; key_new=1; //按鍵松開(kāi)后進(jìn)入等待按鍵狀態(tài) } } else { if((key_io&0x07)!=0x07) //按鍵按下 key_value++; else key_value=0; if(key_value>=5) //按鍵按下消抖 { key_value=0; key_new=0; //按鍵松開(kāi)后進(jìn)入等待松開(kāi)按鍵狀態(tài) } } key_can=20; if((key_new==0)&&(key_old==1)) { switch(key_io&0x07) { case0x06:key_can=1;break; //得到按鍵值 case0x05:key_can=2;break; //得到按鍵值 case0x03:key_can=3;break; //得到按鍵值 } } key_old=key_new; }/*************定時(shí)器0初始化程序***************/voidtime_init() { EA=1; //開(kāi)總中斷 TMOD=0X01; //定時(shí)器0工作方式1 ET0=1; //開(kāi)定時(shí)器0中斷 TR0=1; //允許定時(shí)器0定時(shí)}ucharflag_alarm;//報(bào)警標(biāo)志位ucharflag_bufang;//布防標(biāo)志位ucharflag_bufang_en;//布防標(biāo)志位使能uintflag_value;//用做定時(shí)器的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年四川省南充市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2021年廣東省河源市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年廣西壯族自治區(qū)百色市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2022年四川省攀枝花市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 學(xué)校報(bào)告廳音響系統(tǒng)安裝合同
- 醫(yī)院綠化養(yǎng)護(hù)服務(wù)合同
- 體育館電梯運(yùn)行安全合同
- 河北省民政服務(wù)機(jī)構(gòu)安全風(fēng)險(xiǎn)分級(jí)管控與隱患排查治理指導(dǎo)手冊(cè)
- 單位管理制度品讀合集【人事管理】
- 單位管理制度集錦匯編【職員管理篇】十篇
- 10《吃飯有講究》教學(xué)設(shè)計(jì)-2024-2025學(xué)年道德與法治一年級(jí)上冊(cè)統(tǒng)編版
- 2024年中考數(shù)學(xué)二輪復(fù)習(xí)二次函數(shù)綜合(含答案)
- 拆除鋁合金門窗及附窗安全協(xié)議書
- 體外診斷試劑-C反應(yīng)蛋白(CRP)測(cè)定試劑盒(膠乳增強(qiáng)免疫比濁法)臨床評(píng)價(jià)報(bào)告-血清
- 八年級(jí)物理上冊(cè)(滬粵版2024)新教材解讀課件
- 人教版數(shù)學(xué)四上《大數(shù)的認(rèn)識(shí)》說(shuō)課稿
- 氣胸講課課件
- 2024年典型事故案例警示教育手冊(cè)15例
- 沖突影響和高風(fēng)險(xiǎn)區(qū)域礦產(chǎn)負(fù)責(zé)任供應(yīng)鏈的盡職調(diào)查指南
- 《植物營(yíng)養(yǎng)學(xué)》課件
- 河南省鄭州市鄭東新區(qū)2023-2024學(xué)年五年級(jí)上學(xué)期期末語(yǔ)文試卷
評(píng)論
0/150
提交評(píng)論