畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的汽車防盜報(bào)警系統(tǒng)設(shè)計(jì).doc
《畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的汽車防盜報(bào)警系統(tǒng)設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的汽車防盜報(bào)警系統(tǒng)設(shè)計(jì).doc(37頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、基于單片機(jī)的汽車防盜報(bào)警系統(tǒng)設(shè)計(jì)摘 要汽車防盜報(bào)警器是汽車常用的一種主動(dòng)防盜措施,本防盜報(bào)警系統(tǒng)是應(yīng)用單片機(jī)知識(shí),從設(shè)計(jì)、開發(fā)到調(diào)試完成一個(gè)應(yīng)用系統(tǒng)的整個(gè)過程。本課題即采用PIC16F73單片機(jī),設(shè)計(jì)具有聲光防盜、靜音防盜、觸發(fā)報(bào)警等功能的汽車防盜報(bào)警系統(tǒng)。車主啟動(dòng)防盜模式后,信號(hào)采集系統(tǒng)中的傳感器檢測(cè)模塊便處于工作狀態(tài),一旦檢測(cè)到相應(yīng)的外界干擾信號(hào),防盜系統(tǒng)便被觸發(fā)??刂葡到y(tǒng)進(jìn)行綜合判斷后,一方面發(fā)出報(bào)警聲阻嚇盜車者;另一方面通知車主。報(bào)警器進(jìn)入工作狀態(tài)后,當(dāng)振動(dòng)傳感器檢測(cè)到振動(dòng)信號(hào),經(jīng)運(yùn)算放大器放大后送入單片機(jī),單片機(jī)接受到信號(hào)后,接通聲光報(bào)警電路進(jìn)行聲光報(bào)警。這些方法取得了良好的應(yīng)用效果
2、,達(dá)到了設(shè)計(jì)者的預(yù)期目標(biāo),具有一定的實(shí)際推廣價(jià)值。關(guān)鍵詞 汽車防盜,振動(dòng)報(bào)警,單片機(jī),無(wú)線設(shè)防ABSTRACTMotor vehicle anti-theft alarm system is a pro-active security measures that are commonly used by cars. The anti-theft alarm system is a whole process that completes an application system from design, development and debug with the application M
3、CU knowledge. In the topic, PIC16F73 microcontroller is used to design a cars anti-theft alarm system that has the function of sound and light anti-theft, wireless anti-theft, vibration alarming etc. The owner turn on the anti-theft mode, then sensors detect module in signal acquisition system will
4、work. Once sensors detect the corresponding signal interference, anti-theft system will be triggered. After the control systems integrated judgement, it makes a sound alarm to deter the car theft and tells the owners. After the alarm is working, when the vibration sensors detect vibration signals, s
5、ignals are amplified by the operational amplifier and passed into the SCM. Then SCM receives signals, the sound and light alarm circuits are connected to the SCM and complete sound and light alarm at last. These measures have obtained good applied results in the actual practice, hence the certainly
6、actual expansion value.KEY WORDS anti-theft, vibration alarming, single chip computer, wireless security目 錄前言 1第一章 可行性分析 21.1 技術(shù)可行性分析 21.2 經(jīng)濟(jì)可行性分析 2第二章 總體方案設(shè)計(jì) 32.1 硬件設(shè)計(jì)方案 3 2.2 軟件設(shè)計(jì)方案 4第三章 總體電路原理及設(shè)計(jì) 53.1 電路原理功能概述 53.2 PIC16F73 單片機(jī)簡(jiǎn)介 53.3 PIC16F73特點(diǎn) 63.4 硬件組成和功能 63.5 電源電路設(shè)計(jì) 73.6 報(bào)警器的線路設(shè)計(jì) 83.7 剎車部分電路設(shè)
7、計(jì) 93.8 PIC1673單片機(jī)引腳及其功能 10第四章 PIC16F73單片機(jī)的內(nèi)部結(jié)構(gòu) 124.1運(yùn)算器ALU及工作寄存器W 124.2程序存儲(chǔ)器 124.3 數(shù)據(jù)存儲(chǔ)器 124.4堆棧 144.5定時(shí)器/計(jì)數(shù)器TMRO 144.6 中斷 154.7中斷控制 154.8 復(fù)位 16第五章 軟件設(shè)計(jì) 175.1 軟件流程 175.2 軟件詳細(xì)設(shè)計(jì) 195.2.1 聲光防盜 225.2.2 靜音防盜 235.2.3 觸發(fā)報(bào)警 245.2.4 警戒解除和自動(dòng)回復(fù) 265.2.5 尋車 265.2.6 求救 27第六章 軟件調(diào)試 28結(jié) 論致 謝參 考 文 獻(xiàn)前 言 眾所周知,汽車是當(dāng)今世界主要
8、的交通工具之一。隨著人民生活水平的不斷提高,汽車越來(lái)越成為人們生活中不可缺少的一部分,從世界上第一輛T型福特車被盜開始,偷車已成為現(xiàn)今城市最常見的犯罪行為之一。隨著汽車數(shù)量的增加,特別是轎車正以很快的速度步入家庭,車輛被盜的數(shù)量逐年上升,這給社會(huì)帶來(lái)極大的不安定因素,擔(dān)心車輛被盜,成為困擾每一位汽車用戶的難題。人們?yōu)榱塑囕v的安全大都安裝了汽車防盜報(bào)警系統(tǒng)。汽車防盜報(bào)警器的使用在很大程度上有效地保護(hù)了國(guó)家和人民生命財(cái)產(chǎn)的安全。使人們有了安全的依靠。同時(shí)車輛防盜報(bào)警器的使用也減少了盜竊犯罪事件的發(fā)生,起到了一定的威懾作用。 隨著科學(xué)技術(shù)的進(jìn)步,為對(duì)付不斷升級(jí)的盜車手段,人們研制開發(fā)不同方式結(jié)構(gòu)的防
9、盜器,目前防盜器發(fā)展按其結(jié)構(gòu)和功能??梢苑譃槿箢悾簷C(jī)械防盜電子防盜網(wǎng)絡(luò)防盜。機(jī)械防盜主要是靠鎖定離合制動(dòng),油門或變速檔來(lái)達(dá)到防盜目的,但只防盜不報(bào)警,目前市場(chǎng)已不多見,屬淘汰落伍產(chǎn)品。電子防盜是目前市場(chǎng)比較常見的防盜產(chǎn)品,其主要靠鎖定點(diǎn)火或啟動(dòng)來(lái)達(dá)到防盜的目的。隨著科技的發(fā)展和技術(shù)的進(jìn)步汽車防盜的至高點(diǎn)將是網(wǎng)絡(luò)防盜。無(wú)論車輛行駛到何處,隨時(shí)處于自己的掌握之中,真正做到“車居四海皆安心”。 目前,用于汽車的防盜報(bào)警器種類繁多,功能也較單一,多數(shù)是汽車門被打開只有報(bào)警功能,切斷點(diǎn)火電路汽車不能起動(dòng)。正是由于諸多的汽車防盜報(bào)警器起不到應(yīng)有的保護(hù)作用方導(dǎo)致汽車開始安裝防盜網(wǎng),將乘客與司機(jī)隔開,以防不
10、測(cè),雖然有一定的效果,但作用不大,也不雅觀,且給乘客造成不舒服感,同時(shí)安裝價(jià)格也較昂貴,為此我們的畢業(yè)設(shè)計(jì)為基于單片機(jī)的汽車防盜報(bào)警系統(tǒng)設(shè)計(jì)。如果有行竊者盜竊汽車或汽車上的物品,防盜系統(tǒng)不僅具有切斷起動(dòng)電路、點(diǎn)火電路、噴油電路、供油電路和變速電路、將制動(dòng)鎖死等的功能,同時(shí),還會(huì)發(fā)出不同的聲光信號(hào),給竊賊一個(gè)精神上的打擊,以阻止竊賊行竊。本設(shè)計(jì)中就是采用PIC16F73單片機(jī),以其為核心,設(shè)計(jì)具有聲光防盜、靜音防盜、觸發(fā)報(bào)警等功能的汽車防盜報(bào)警系統(tǒng)。第一章 可行性分析1.1 技術(shù)可行性分析隨著科技的不斷發(fā)展,微處理器技術(shù)再次發(fā)生巨大變革,使用微處理器實(shí)現(xiàn)控制功能不僅可以簡(jiǎn)化控制硬件,而且可以加入
11、智能化對(duì)系統(tǒng)運(yùn)行狀態(tài)的診斷。單片機(jī)是單片微型計(jì)算機(jī)的簡(jiǎn)稱,隨著制造集成電路技術(shù)的發(fā)展可以將完成計(jì)算機(jī)功能的零部件集成在一個(gè)芯片上,這樣的一個(gè)芯片就具有計(jì)算機(jī)的全部或大部分功能,稱為單片微型計(jì)算機(jī),簡(jiǎn)稱單片機(jī)。自從20世紀(jì)70年代問世以來(lái),得到了快速發(fā)展,從早期的8位機(jī)到現(xiàn)在的32位機(jī),其硬件資源和軟件資源都在不斷豐富與完善,而這種以軟件(編程序)取代硬件并能提高系統(tǒng)性能的控制技術(shù)必將隨著單片機(jī)應(yīng)用的推廣普及而不斷發(fā)展完善。特別是近20年時(shí)間里,微型計(jì)算機(jī)技術(shù)獲得飛速的發(fā)展,計(jì)算機(jī)在工農(nóng)業(yè),科研,教育,國(guó)防和航空航天領(lǐng)域獲得了廣泛的應(yīng)用,計(jì)算機(jī)技術(shù)已經(jīng)是一個(gè)國(guó)家現(xiàn)代科技水平的重要標(biāo)志。單片機(jī)由于
12、其集成度高、體積小、抗干擾能力強(qiáng)和價(jià)格低廉、具有獨(dú)特的控制功能,它已經(jīng)成為計(jì)算機(jī)世界中的重要成員。單片機(jī)應(yīng)用的意義絕不僅限于它的廣闊范圍以及所帶來(lái)的經(jīng)濟(jì)效益上,更重要的意義還在于:?jiǎn)纹瑱C(jī)的應(yīng)用正從根本上改變著傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。1.2 經(jīng)濟(jì)可行性分析開發(fā)一個(gè)硬件的初衷就是期望將來(lái)獲得更大的經(jīng)濟(jì)效益。經(jīng)濟(jì)效益通常表現(xiàn)為降低成本的同時(shí)增加收入。因此在開發(fā)一個(gè)硬件之前必須進(jìn)行經(jīng)濟(jì)可行性分析。目前汽車防盜報(bào)警器的硬件部分可以采用廉價(jià)的芯片控制處理器,以及各種便宜的電子元器件來(lái)完成,軟件部分成本投資也不高,經(jīng)濟(jì)上基本可行。綜合以上的技術(shù)、資金、人員等因素,該課題可行。第二章 總體方案設(shè)計(jì)單
13、片機(jī)防盜報(bào)警系統(tǒng)用于集中檢測(cè)報(bào)警,能對(duì)受控制的多個(gè)點(diǎn)進(jìn)行實(shí)時(shí)檢測(cè),當(dāng)檢測(cè)到一個(gè)或多個(gè)點(diǎn)有報(bào)警信號(hào)時(shí),能用聲和數(shù)碼顯示出報(bào)警地點(diǎn)。當(dāng)檢測(cè)到有報(bào)警信號(hào)時(shí),為防止誤報(bào),該系統(tǒng)延時(shí)1秒鐘再檢測(cè)一次,若確實(shí)有情況才報(bào)警。該系統(tǒng)的傳感器可選用接觸式、斷開式等開關(guān)量傳感器,也可以組成相應(yīng)的控制和報(bào)警系統(tǒng)。在本設(shè)計(jì)中,整個(gè)防盜報(bào)警電路由三部分組成:主機(jī)板、報(bào)警器、震動(dòng)傳感采集器。再加上其他一些主要的工作模塊構(gòu)成整個(gè)汽車防盜報(bào)警系統(tǒng)。此防盜報(bào)警系統(tǒng)能夠?qū)崿F(xiàn)檢測(cè)盜警信號(hào)、設(shè)防、報(bào)警等功能。電路的主芯片采用美國(guó)Microchip 公司的PIC16F73 ,93LC46 為EEPROM數(shù)據(jù)存儲(chǔ)器與PIC16F73一起
14、構(gòu)成了軟件編碼解碼電路。PIC16F73是美國(guó)Microchip 公司采用的RISC結(jié)構(gòu)的高性價(jià)比嵌入式控制器,其高速度、低電壓、低功耗、強(qiáng)大的驅(qū)動(dòng)能力、低價(jià)OTP 技術(shù)、體積小巧等都體現(xiàn)了單片微控制器工業(yè)的趨勢(shì)。本課程設(shè)計(jì)中設(shè)計(jì)的汽車防盜報(bào)警器系統(tǒng)主要分為主機(jī)工作狀態(tài)遙控設(shè)置模塊,震動(dòng)信號(hào)的產(chǎn)生與采集模塊,發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)模塊,,發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)模塊,狀態(tài)聲、光控制模塊等。2.1 硬件設(shè)計(jì)方案硬件的設(shè)計(jì)主要是以PIC16F73單片機(jī)為核心與外部的各各模塊進(jìn)行連接。外部模塊主要有主機(jī)工作狀態(tài)遙控設(shè)置模塊,這一部分包括遙控信號(hào)編碼、發(fā)射,信號(hào)接收、解碼,遙控器身份(ID碼)學(xué)習(xí)等功能電路完成
15、主機(jī)工作狀態(tài)的設(shè)置。震動(dòng)信號(hào)的產(chǎn)生與采集模塊,震動(dòng)信號(hào)由震動(dòng)傳感器產(chǎn)生,信號(hào)產(chǎn)生后經(jīng)過放大、濾波、硬件比較,產(chǎn)生一個(gè)500ms 的高電平脈沖。在信號(hào)采集電路中,把正脈沖取反。剎車信號(hào)采集模塊,這部分是由剎車信號(hào)電路完成的。發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)模塊,測(cè)發(fā)動(dòng)機(jī)的工作狀態(tài),配合其他部分的電路,實(shí)現(xiàn)不同功能。車門狀態(tài)檢測(cè)模塊,電路通過檢測(cè)車門燈的電平來(lái)判斷車門的開關(guān)狀態(tài)。狀態(tài)聲、光控制模塊,檢測(cè)到有震動(dòng)信號(hào)、車門被打開或發(fā)動(dòng)機(jī)啟動(dòng)時(shí),本模塊產(chǎn)生聲、光報(bào)警。在引擎控制和中央門鎖控制模塊,設(shè)置防盜時(shí),自動(dòng)上鎖車門和鎖定引擎,使汽車無(wú)法啟動(dòng);在解除防盜設(shè)置時(shí),車門自動(dòng)開鎖和引擎解鎖。本方案的設(shè)計(jì)可以滿足本次設(shè)
16、計(jì)的要求,各部分硬件的能夠協(xié)調(diào)的工作,所以本方案可行。2.2 軟件設(shè)計(jì)方案軟件的設(shè)計(jì)主要是對(duì)汽車防盜系統(tǒng)控制和程序的設(shè)計(jì)。程序的設(shè)計(jì)主要有汽車聲光防盜,當(dāng)汽車處于停車廠停放就可以使用聲光防盜。如果有盜車者試圖去打開車門或啟動(dòng)汽車時(shí),通過傳感器車主可以知道有盜車者,車主控制汽車發(fā)動(dòng)機(jī)停止運(yùn)轉(zhuǎn),從而使盜車者不能盜走汽車給車主避免不必要的經(jīng)濟(jì)損失。當(dāng)車主需要使用汽車時(shí),車主可以按一下撤防鍵車主進(jìn)入汽車不會(huì)造成誤報(bào)。靜音防盜的程序設(shè)計(jì)是主要是針對(duì)安靜的場(chǎng)合所設(shè)計(jì),比如有些地方是不允許嗚笛或發(fā)出有刺激的響聲。這時(shí)可以使用靜音防盜系統(tǒng),靜音防盜系統(tǒng)的工作方式是在有盜車者實(shí)施犯罪的時(shí)候靜音防盜程序啟用,此時(shí)
17、只有方向燈閃亮而喇叭不會(huì)發(fā)出響聲。求救程序的設(shè)計(jì)主要是針對(duì)盜車賊把汽車盜走,方便車主和警察快速找到汽車所設(shè)計(jì)的程序。車主發(fā)現(xiàn)自己的汽車已被盜走,此時(shí)車主可以按下尋車鍵,汽車通過傳感器接收到車主遙控器的指令,汽車會(huì)發(fā)出刺激的響聲同時(shí)LED燈同步閃亮。這時(shí)車主可以很快定位自己汽車的位置找到自己的汽車。還有一種情況是在汽車停車廠停放時(shí),停車廠的汽車肯定很多同時(shí)和自己汽車車型和品牌相同的車輛也很多。如果車主一時(shí)間又忘了自己汽車的停放位置會(huì)給車主帶來(lái)很我不必要的麻煩,浪費(fèi)車主的保貴時(shí)間。有了尋車程序的設(shè)計(jì),車主按下尋車鍵,自己的汽車?yán)葧?huì)發(fā)出響聲,同時(shí)LED燈也同步閃亮。車主可以方便的找到自己汽車的位置
18、,避免的不必要的麻煩。有了這幾種汽車防盜系統(tǒng)和尋車系統(tǒng)的設(shè)計(jì),車主在使用汽車時(shí)可以放心的使用。防盜系統(tǒng)和尋車系統(tǒng)的設(shè)計(jì)也使汽車的安全性有了很大的提高,這也就刺激了汽車行業(yè)的發(fā)展,同時(shí)根據(jù)本次設(shè)計(jì)的的要求,這幾種防盜系統(tǒng)的設(shè)計(jì)簡(jiǎn)單易懂,可以保證汽車的安全性。所以此軟件設(shè)計(jì)方案可行。第三章 總體電路原理及設(shè)計(jì)3.1 電路原理功能概述該汽車防盜報(bào)警系統(tǒng),采用PIC16F73單片機(jī),以其為核心,設(shè)計(jì)具有自動(dòng)設(shè)防、無(wú)線設(shè)防、振動(dòng)報(bào)警等功能模塊的汽車防盜報(bào)警系統(tǒng)。本課程設(shè)計(jì)中設(shè)計(jì)的汽車防盜報(bào)警器系統(tǒng)主要集合主機(jī)工作狀態(tài)遙控設(shè)置模塊,震動(dòng)信號(hào)的產(chǎn)生與采集模塊,發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)模塊,狀態(tài)聲、光控制模塊等,整
19、個(gè)系統(tǒng)處于協(xié)調(diào)工作的狀態(tài),實(shí)現(xiàn)汽車防盜報(bào)警功能。3.2 PIC16F73 單片機(jī)簡(jiǎn)介PIC系列單片機(jī)硬件系統(tǒng)設(shè)計(jì)簡(jiǎn)潔,指令系統(tǒng)設(shè)計(jì)精練。它有以下優(yōu)點(diǎn):1)哈佛總線結(jié)構(gòu)。PIC系列單片機(jī)內(nèi)部總線結(jié)構(gòu)不同于普通單片機(jī)的馮諾依曼結(jié)構(gòu),它采用的是哈佛結(jié)構(gòu)。這就意味著,在PIC 系列單片機(jī)的內(nèi)部,數(shù)據(jù)總線和地址總線是分離的,并且采用不同的寬度。這樣可以實(shí)現(xiàn)指令提取的“流水作業(yè)”,可以實(shí)現(xiàn)指令的單字節(jié)化、單周期化,提高指令的執(zhí)行速度。2)精簡(jiǎn)指令系統(tǒng)。PIC 系列單片機(jī)指令系統(tǒng)采用精簡(jiǎn)指令集RISC(Reduced Instruction Set Collection)技術(shù),不僅便于記憶和學(xué)習(xí),而且絕大部
20、分的指令都是單字節(jié)、單周期指令,有利于提高指令運(yùn)行速度。PIC16F73單片機(jī)采用13位指令系統(tǒng),使用4K14位可反復(fù)擦寫的FLASH存儲(chǔ)器。PIC16F73最高時(shí)鐘頻率為20MHZ,每條指令執(zhí)行周期200ns,由于大多數(shù)指令執(zhí)行時(shí)間為一個(gè)周期,因此速度相當(dāng)快。其內(nèi)含192字節(jié)的RAM,4K程序存儲(chǔ)器、5路A/D轉(zhuǎn)換及2路PWM波發(fā)生器,應(yīng)用時(shí)外圍電路極其簡(jiǎn)單。它的這個(gè)特點(diǎn)為其電路設(shè)計(jì)以及軟件調(diào)試帶來(lái)了極大的方便。PIC16F73單片機(jī)的工作頻率為DC20 MHz,RA0RA 5、RB0RB7、RC0RC7為 I/O 輸入輸出端口A、B、C,可以實(shí)現(xiàn)位控。有8位模數(shù)轉(zhuǎn)換模塊和5個(gè)輸入通道,能夠
21、進(jìn)行串行通信SSP和USART,有中斷端口。3個(gè)定時(shí)器,2個(gè)捕捉/比較/PWM 模塊。4K的flash ROM 程序存儲(chǔ)器(14位字)以及35條指令集。MCLR:主復(fù)位端,當(dāng)MCLR為高電平時(shí)對(duì)PIC16F73 單片機(jī)復(fù)位。OSC1:振蕩信號(hào)輸入端,這個(gè)端用于輸入外部振蕩器的信號(hào),用RC振蕩器時(shí),它接RC電路;在用石英振蕩器時(shí),它接石英晶體的一端。OSC2:振蕩信號(hào)輸入端,在用石英振蕩器或陶瓷振蕩器時(shí),通過一個(gè)串聯(lián)電阻RS接振蕩晶體的一個(gè)端。VDD:電源電壓,一般為5V,也可在2.56.26V之間選取。VSS:地端。這些基本特征和功能,完全滿足汽車防盜報(bào)警器系統(tǒng)設(shè)計(jì)的要求。3.3 PIC16F
22、73特點(diǎn) PIC16F73單片機(jī)為28 引腳微處理器,除了具有PIC 系列單片機(jī)的共同特點(diǎn)外,還具有以下特點(diǎn): (1) 具有4KB 的FLASH程序存儲(chǔ)器; (2) 22 條I/ O 口線; (3) 192 字節(jié)數(shù)據(jù)存儲(chǔ)器; (4) 3個(gè)定時(shí)器; (5) PIC16F73 有5 路8 位A/ D 通道; (6) PIC16F73 有5 路10 位A/ D 通道; (7) PIC16F73 有128 字節(jié)的EEPROM??梢? PIC16F73特別適用于步進(jìn)電機(jī)的驅(qū)動(dòng)控制。3.4硬件組成和功能用單片機(jī)控制一個(gè)檢測(cè)報(bào)警系統(tǒng),與以往用數(shù)字邏輯電路組成的控制系統(tǒng)相比,用單片機(jī)組成的檢測(cè)報(bào)警系統(tǒng),應(yīng)具有
23、更大的靈活性,功能也更強(qiáng),并具有智能性。本設(shè)計(jì)采用PIC16F73單片機(jī)實(shí)現(xiàn)聲光同時(shí)作用的汽車防盜報(bào)警器。PIC16F73系列單片機(jī)是由Microchip公司生產(chǎn)的一種低功耗、高速、全靜態(tài)CMOS 器件,內(nèi)含有E2PROM,ROM,I/O及一個(gè)中央處理單元, 具有引腳少、功能強(qiáng)、可帶LED 負(fù)載等特點(diǎn)。本設(shè)計(jì)汽車防盜報(bào)警器系統(tǒng)的主機(jī)功能模塊框圖如圖3.1所示。圖3.1功能能模塊框圖主機(jī)工作狀態(tài)遙控設(shè)置模塊,這一部分包括遙控信號(hào)編碼、發(fā)射,信號(hào)接收、解碼,遙控器身份(ID碼)學(xué)習(xí)等功能電路完成主機(jī)工作狀態(tài)的設(shè)置。用硬件編碼方式,編碼器為HCS301。用軟件解碼方式,相關(guān)硬件是CPU 和93LC4
24、6。遙控器上的編碼器和射頻發(fā)射模塊均是采用按鍵供電,無(wú)按鍵時(shí),耗電流為0mA ,這樣可延長(zhǎng)電池的使用時(shí)間。本部分按鍵和接收電路接收無(wú)線信號(hào)輸入各用1個(gè)I/O口,CPU對(duì)93LC46的操作用3個(gè)I/O口,共用單片機(jī)的5個(gè)I/O口。震動(dòng)信號(hào)的產(chǎn)生與采集模塊包括震動(dòng)信號(hào)的產(chǎn)生和采集電路。震動(dòng)信號(hào)由震動(dòng)傳感器產(chǎn)生,信號(hào)產(chǎn)生后經(jīng)過放大、濾波、硬件比較,產(chǎn)生一個(gè)500ms 的高電平脈沖。在信號(hào)采集電路中,把正脈沖取反。CPU的外部事件中斷口檢測(cè)到負(fù)電平后,產(chǎn)生中斷,進(jìn)行報(bào)警處理。本模塊使用了單片機(jī)1個(gè)外部事件中斷口RB0。剎車信號(hào)采集模塊部分包括手剎和腳剎電路,手剎電路產(chǎn)生高電平信號(hào),腳剎電路產(chǎn)生低電平信
25、號(hào),用硬件“與”電路把兩種信號(hào)相與,有剎車時(shí)單片機(jī)I/O口檢測(cè)到低電平。本部分僅采集是否有剎車信號(hào),在程序中做標(biāo)志位處理。使用了單片機(jī)的1個(gè)I/O口,具體的電路設(shè)計(jì)在單元設(shè)計(jì)電路中有詳細(xì)的論述與介紹。發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)模塊包括發(fā)動(dòng)機(jī)工作狀態(tài)檢測(cè)電路。在程序中,檢測(cè)發(fā)動(dòng)機(jī)的工作狀態(tài),配合其他部分的電路,實(shí)現(xiàn)不同功能,如車門的自動(dòng)開關(guān),遙控關(guān)車,設(shè)防狀態(tài)下的發(fā)動(dòng)機(jī)工作報(bào)警等。本部分模塊使用了單片機(jī)的2個(gè)I/O口。車門狀態(tài)檢測(cè)模塊電路通過檢測(cè)車門燈的電平來(lái)判斷車門的開關(guān)狀態(tài)。在設(shè)置防盜警戒時(shí),若車門被打開,則啟動(dòng)報(bào)警;在未設(shè)置防盜警戒時(shí),若上車或離車時(shí)車門未關(guān)妥,則車的方向燈一直閃,以提醒車主。本部
26、分模塊使用單片機(jī)的1個(gè)I/O口。狀態(tài)聲、光控制模塊為聲光報(bào)警電路。在防盜設(shè)置狀態(tài)下,檢測(cè)到有震動(dòng)信號(hào)、車門被打開或發(fā)動(dòng)機(jī)啟動(dòng)時(shí),本部分電路產(chǎn)生聲、光報(bào)警信號(hào);按尋車鍵尋車時(shí),此部分電路以聲、光信號(hào)提示車主車輛的位置;按防搶鍵時(shí),本部分電路產(chǎn)生聲、光信號(hào),發(fā)出警告和呼叫救援。本部分模塊使用了單片機(jī)的3個(gè)I/O口。在引擎控制和中央門鎖控制模塊中,包括引擎狀態(tài)控制電路和中央門鎖控制電路。在設(shè)置防盜時(shí),自動(dòng)上鎖車門和鎖定引擎,使汽車無(wú)法啟動(dòng);在解除防盜設(shè)置時(shí),車門自動(dòng)開鎖和引擎解鎖。由于不同的車輛的中央鎖控制的觸發(fā)方式不同,開關(guān)門各用了1個(gè)I/O口,本部分共使用了單片機(jī)的3個(gè)I/O口。3.5電源電路設(shè)
27、計(jì)電源電路由橋式整流、濾波電容。7805穩(wěn)壓芯片及電源指示燈組成。交流電經(jīng)過橋式整流變成直流電,再經(jīng)過電容濾波,7805穩(wěn)壓芯片穩(wěn)壓成為穩(wěn)定的5V電源,用一個(gè)發(fā)光二極管指示燈指示電源狀態(tài)。具體的電路設(shè)計(jì)如圖3.2所示:圖3.2 電源電路3.6報(bào)警器的線路設(shè)計(jì)報(bào)警器的線路原理圖由PIC16F73單片機(jī)、振動(dòng)傳感器、放大電路和聲光報(bào)警電路幾部分組成。振動(dòng)傳感器是自制器,當(dāng)汽車外殼被觸摸時(shí),它把接收到的信號(hào)傳送給放大電路。放大電路由二級(jí)放大器組成,用于把振動(dòng)傳感器傳送來(lái)的小信號(hào)電平放大成PIC芯片接口所要求的電平信號(hào)。為了提高電路抗干擾能力,減少失誤動(dòng)作的出現(xiàn),設(shè)計(jì)一個(gè)可調(diào)電位器RW,用于調(diào)節(jié)檢測(cè)信
28、號(hào)的靈敏度,它可根據(jù)汽車被觸摸程度的強(qiáng)弱而設(shè)定。聲光報(bào)警電路由發(fā)光二極管和蜂鳴器組成。按鍵S1是起觸發(fā)電路啟動(dòng)/復(fù)位的作用。系統(tǒng)上電后,PIC16F73單片機(jī)復(fù)位,完成對(duì)各I/O端口的初始化工作。按動(dòng)S1后,報(bào)警器進(jìn)入工作狀態(tài)。當(dāng)振動(dòng)傳感器檢測(cè)到振動(dòng)信號(hào),經(jīng)AR1、AR2放大后送入單片機(jī),單片機(jī)接受到信號(hào)后,接通聲光報(bào)警電路進(jìn)行聲光報(bào)警。此時(shí),即使振動(dòng)傳感器信號(hào)消失,報(bào)警電路也不會(huì)停止工作,只有再次觸發(fā)S1后,聲光報(bào)警電路才被切斷。具體的電路設(shè)計(jì)如圖3.3所示:圖3.3 聲光報(bào)警的線路原理圖3.7 剎車部分電路設(shè)計(jì)如圖3.4所示:Hbrake in為手剎開關(guān),F(xiàn)brake in為腳剎開關(guān),沒有
29、剎車信號(hào)時(shí),Hbrake in和Fbrake in懸空時(shí),芯片的采集端口brake out為4.2V的高電平。當(dāng)有腳剎信號(hào)時(shí),即Fbrake in接通12V電壓,則Q3工作在飽和區(qū),則brake out處的電壓即跳變?yōu)?.8V的低電平;當(dāng)有手剎信號(hào)時(shí),即Hbrake in接地,則D7導(dǎo)通,brake out處的電壓同樣跳變?yōu)?.8V。圖3.4 剎車電路設(shè)計(jì)3.8 PIC16F73單片機(jī)引腳及其功能引腳的復(fù)用功能和符號(hào)單片機(jī)的信號(hào)引腳是單片機(jī)外特性的體現(xiàn),在硬件上用戶只能使用引腳,通過引腳的連接組建單片機(jī)系統(tǒng)。PIC單片機(jī)系列和MCS51系列單片機(jī)一樣,其引腳除電源VDD、VSS為單一功能外,其
30、余的信號(hào)引腳常是多個(gè)功能,即引腳的復(fù)用功能。其封裝管腳圖如圖3.5所示。圖3.5 PIC16F73的管腳圖常見的引腳符號(hào)和主要功能如下:1.MCLR/Vpp清除(復(fù)位)輸入/編程電壓輸入。其中MCLR為低電平時(shí),對(duì)芯片復(fù)位。該腳上的電壓不能超過VDD,否則會(huì)進(jìn)入測(cè)試方法。Vpp代表編程電壓。 2.OSC1/CLKIN 振蕩器晶體/外部時(shí)鐘輸入端。3.OSC2/CLKOUT振蕩器晶體輸出端,在晶體振蕩方式接晶體,在RC方式輸出OSC1頻率的1/4信號(hào)CLKOUT。4.TOCK1TMRO計(jì)數(shù)器輸入端,如不用,為了減少功能應(yīng)接地或接VDD。5.TICK1TMR1時(shí)鐘輸入端。6.TIOSITMR1的振
31、蕩輸入端。7.TIOSOTMR1的振蕩輸出端。8.RD、WR、CS分別代表并行口讀信號(hào)、寫信號(hào)和片選控制線。9.AN0AN7A/D轉(zhuǎn)換的模擬量輸入端。AN0、AN1分別表示通道的個(gè)數(shù)。10.CCP捕捉/比較/脈寬調(diào)制等功能端。CCP是Capture/Compare/PWM的縮寫。有的PIC芯片內(nèi)有兩個(gè)CCP部件,其引腳用符號(hào)CCP1和CCP2表示。 11.SCK/SCL同步串行通信時(shí)鐘輸入端。12.TX/CK異步通信發(fā)送端/SCI同步傳輸?shù)臅r(shí)鐘端。13.SDI/SDASPI通信數(shù)據(jù)輸入端。14.SD0SPI通信數(shù)據(jù)輸出端。15.RD0/PSP0RD7/PSP7D口,雙向可編程,亦可作為并行口。
32、作并行口對(duì) TTL輸入,作I/O口時(shí)為斯米特輸入。第四章 PIC16F73單片機(jī)的內(nèi)部結(jié)構(gòu)4.1運(yùn)算器ALU及工作寄存器W運(yùn)算器ALU是一個(gè)通用算術(shù)、邏輯運(yùn)算單元,用它可以對(duì)工作寄存器W和任何通用寄存器中的兩個(gè)數(shù)進(jìn)行算術(shù)(如加、減、乘、除等)和邏輯運(yùn)算(如與、或、異或等)。16F73是八位單片機(jī),ALU的字長(zhǎng)是八位。在有兩個(gè)操作數(shù)的指令中,典型的情況是一個(gè)操作數(shù)在工作寄存器W中,而另一個(gè)操作數(shù)是在通用寄存器中,或者是一個(gè)立即數(shù)。在只有一個(gè)操作數(shù)的情況下,該數(shù)要么是在工作寄存器W中,要么是在通用寄存器中。W寄存器是一個(gè)專用于ALU操作的寄存器,它是不可尋址的。根據(jù)所執(zhí)行的指令,ALU還可能會(huì)影響
33、框圖中狀態(tài)寄存器STATUS的進(jìn)位標(biāo)志C、全零標(biāo)志Z等。4.2程序存儲(chǔ)器單片機(jī)內(nèi)存放程序指令的存儲(chǔ)器稱為程序存儲(chǔ)器。PIC16F73的所有指令字長(zhǎng)為14位。所以程序存儲(chǔ)器的各存儲(chǔ)單元是14位寬。一個(gè)存儲(chǔ)單元存放一條指令。16F73的程序存貯器有1024(28)個(gè)存儲(chǔ)單元(存儲(chǔ)容量為1k)。這些程序存儲(chǔ)器都是由FPEROM構(gòu)成的。程序存儲(chǔ)器是由程序計(jì)數(shù)器PC尋址的。16F73的程序計(jì)數(shù)器為13位寬,可尋址8K(81024)的程序存儲(chǔ)器空間,但16F73實(shí)際上只使用了1k的空間(單元地址為03FFH)。當(dāng)訪問超過這些地址空間的存儲(chǔ)單元時(shí),將導(dǎo)致循環(huán)回到有效的存儲(chǔ)空間。4.3 數(shù)據(jù)存儲(chǔ)器在單片機(jī)PI
34、C16F73中,除了有存放程序的程序存儲(chǔ)器外,還有數(shù)據(jù)存儲(chǔ)器。單片機(jī)在執(zhí)行程序過程中,往往需要隨時(shí)向單片機(jī)輸入一些數(shù)據(jù),而且有些數(shù)據(jù)還可能隨時(shí)改變。在這種情況下就需用數(shù)據(jù)存儲(chǔ)器。由于數(shù)據(jù)存儲(chǔ)器不但要能隨時(shí)讀取存放在其各個(gè)單元內(nèi)的數(shù)據(jù),而且還需隨時(shí)寫進(jìn)新的數(shù)據(jù),或改寫原來(lái)的數(shù)據(jù)。因此,數(shù)據(jù)存儲(chǔ)器需由隨機(jī)存儲(chǔ)器RAM構(gòu)成。RAM存儲(chǔ)器在斷電時(shí),所存數(shù)據(jù)隨即丟失,這在實(shí)際應(yīng)用中有時(shí)會(huì)帶來(lái)不便。但是,在16F73中有648位E2PROM數(shù)據(jù)存儲(chǔ)器。存放在E2PROM中的數(shù)據(jù)在斷電時(shí)不會(huì)丟失。16F73中的RAM數(shù)據(jù)存儲(chǔ)器可分為兩個(gè)存儲(chǔ)體:即存儲(chǔ)體0(Bank0)和存儲(chǔ)體1(Bank1)。每個(gè)存儲(chǔ)體均可
35、以直接用內(nèi)部總線傳送信息,所以它們都是以寄存器方式工作和尋址。這些八位寄存器,又可分為通用寄存器和專用寄存器兩個(gè)部分。通用寄存器存放數(shù)據(jù),專用寄存器存放控制單片機(jī)運(yùn)作的信息。每個(gè)存儲(chǔ)體最大可擴(kuò)展到7FH(128個(gè)字節(jié))。在每個(gè)存儲(chǔ)體中,專用寄存器被安排在低位地址空間,通用寄存器被安排在高位地址空間。通用寄存器用法單一,但專用寄存器卻各有各的用處,現(xiàn)將較基本的專用寄存器作一簡(jiǎn)單介紹。(1)程序計(jì)數(shù)器(PCL、PCLATH)。程序計(jì)數(shù)器PC是對(duì)程序進(jìn)行管理的計(jì)數(shù)器。PIC16F73的程序計(jì)數(shù)器為13位寬,最大可尋址的存儲(chǔ)空間為8k14位。實(shí)際上16F73只使用前1k14位(000003FFH)存儲(chǔ)
36、空間。因程序計(jì)數(shù)器有13位寬,而專用寄存器只有8位。因此PC由兩個(gè)專用寄存器構(gòu)成。其低八位PCL是一個(gè)可讀/寫寄存器(地址為02H或82H),而高字節(jié)PCH(有效位5位)不能直接進(jìn)行讀/寫操作,它是通過一個(gè)8位的保持寄存器PCLATH(地址為0A或8AH)把高5位地址傳送給程序計(jì)數(shù)器的高字節(jié)。當(dāng)執(zhí)行CALL、GOTO指寫PCL時(shí),PC值的高字節(jié)就從PCLATH寄存器中裝入。(2)狀態(tài)寄存器STATUS。狀態(tài)寄存器STATUS含有算術(shù)邏輯單元ALU運(yùn)算結(jié)果的狀態(tài)(如有無(wú)進(jìn)位等)、復(fù)位狀態(tài)及數(shù)據(jù)存儲(chǔ)體選擇位。功能如下:IRPRP1RP0TOPDZDCC 1.第0位。進(jìn)位/借位位C。執(zhí)行加、減運(yùn)算指
37、令2.第1位。輔助進(jìn)位/借位位DC。執(zhí)行加、減運(yùn)算指令后,若結(jié)果的低四位向高四位有進(jìn)位或借位,則DC置1,否則置0。3.第2位。零標(biāo)志位運(yùn)算結(jié)果為零,Z被置1;運(yùn)算結(jié)果不為零,Z被清零。4.第3位。低功耗標(biāo)志位PD。上電復(fù)位或執(zhí)行CLRWDT指令后置1,執(zhí)行SLEEP指令后被清零。5.第4位。定時(shí)時(shí)間到標(biāo)志位TO。上電復(fù)位或執(zhí)行CLRWDT、SLEEP指令后被置1,監(jiān)視定時(shí)器的定時(shí)時(shí)間到被清零。6.第5位和第6位(RP0、RP1)。這兩位是用于直接尋址時(shí)的寄存器體選擇位。即00選中Bank0(00H7FH);01選中Bank1(80HFFH),16F73只有兩個(gè)存儲(chǔ)體。故10、11不用。7.第
38、7位IRP。這是間接尋址的寄存體選擇位。0選中Bank0、1(00HFFH),1選中Bank2、3。16F73只有Bank0、1,所以此IRP位應(yīng)被置為0。(3)間接尋址INDF和FSR寄存器INDF寄存器不是一個(gè)物理寄存器,而是一個(gè)邏輯功能的寄存器(地址為00H或80H),當(dāng)對(duì)INDF寄存器進(jìn)行尋址時(shí),實(shí)際上是訪問FSR寄存器內(nèi)容所指的單元,即把FSR寄存器作為間接寄存器使用。FSR稱為“寄存器選擇”寄存器,地址為(04H或84H)。對(duì)INDF寄存器本身進(jìn)行間接尋址訪問,將讀出FSR寄存器的內(nèi)容,例如當(dāng)FSR=00H時(shí),間接尋址讀出INDF的數(shù)據(jù)將為00H。用間接尋址方式寫入INDF寄存器時(shí)
39、,雖然寫入操作可能會(huì)影響STATUS中的狀態(tài)字,但寫入的數(shù)據(jù)是無(wú)效的。 4.4堆棧單片機(jī)執(zhí)行程序時(shí),常常要執(zhí)行調(diào)用子程序。這樣就產(chǎn)生了一個(gè)問題:如何記憶是從何處調(diào)用的子程序,以便執(zhí)行子程序之后正確返回。此外,在程序執(zhí)行過程中,還可能會(huì)發(fā)生中斷,轉(zhuǎn)而執(zhí)行中斷子程序,這時(shí),又如何記憶從何處中斷,以便返回呢?滿足上述功能的方法就是“堆棧”技術(shù)?!岸褩!笔且粋€(gè)用來(lái)保存臨時(shí)數(shù)據(jù)的棧區(qū)。當(dāng)主程序調(diào)用子程序時(shí),單片機(jī)執(zhí)行到CALL指令或發(fā)生中斷時(shí),就自動(dòng)將下一條指令的地址“壓棧”保存到棧區(qū)。當(dāng)子程序結(jié)束,單片機(jī)執(zhí)行返回指令時(shí),就自動(dòng)地把棧區(qū)的內(nèi)容“彈出”,作為下步指令執(zhí)行的新地址。PIC16F73芯片內(nèi)有一
40、個(gè)8級(jí)13位寬(與PC同寬)的硬件堆棧,此堆棧既不占用程序存儲(chǔ)空間,也不占用數(shù)據(jù)存儲(chǔ)空間。當(dāng)執(zhí)行一條CALL指令或一個(gè)中斷被響應(yīng)后,程序計(jì)數(shù)器PC中的斷點(diǎn)地址就自動(dòng)被壓棧(PUSH)保護(hù),而當(dāng)執(zhí)行RETURN、RETLW或者RETFIE指令時(shí),堆棧中的斷點(diǎn)地址會(huì)彈回(POP)程序計(jì)數(shù)器PC中。無(wú)論是PUSH還是POP操作,都不影響PCLATH寄存器的內(nèi)容。4.5定時(shí)器/計(jì)數(shù)器TMROPIC單片機(jī)16F73中有一個(gè)定時(shí)器,此定時(shí)器也可用于計(jì)數(shù),因此稱為定時(shí)器/計(jì)數(shù)器,符號(hào)為TMRO。TMRO可用于定時(shí)控制、延時(shí)、對(duì)外部事件計(jì)數(shù)和檢測(cè)等場(chǎng)合。TMRO是一個(gè)8位增量(加1)計(jì)數(shù)器。它在數(shù)據(jù)存貯器中的
41、地址為01。定時(shí)器所用的時(shí)鐘源可以是內(nèi)部系統(tǒng)時(shí)鐘(OSC/4,即四倍振蕩周期),也可以是外部時(shí)鐘。若TMRO對(duì)內(nèi)部系統(tǒng)時(shí)鐘的標(biāo)準(zhǔn)脈沖系列進(jìn)行計(jì)數(shù)時(shí),就成為定時(shí)器;對(duì)外部脈沖進(jìn)行計(jì)數(shù)時(shí)TMRO就成為計(jì)數(shù)器。不管是定時(shí)還是計(jì)數(shù)方式,TMRO在對(duì)內(nèi)部時(shí)鐘或?qū)ν獠渴录?jì)數(shù)時(shí),都不占用CPU時(shí)間,除非TMRO溢出,才可能中斷CPU的當(dāng)前操作。可見,定時(shí)器是單片機(jī)16F84中效率高且工作靈活的部件。為了擴(kuò)大定時(shí)或計(jì)數(shù)的范圍,配合TMRO的使用,還有一個(gè)可編程預(yù)定標(biāo)器。此定標(biāo)器實(shí)際上是一個(gè)可編程分頻器。TMRO的工作方式由數(shù)據(jù)存儲(chǔ)器中的項(xiàng)選寄存器OPTION控制。OPTION是一個(gè)可讀/寫的寄存器。它含有配
42、置TMRO/WDT預(yù)定標(biāo)器、外部INT中斷、TMRO等的各種控制位。TMRO的定時(shí)、計(jì)數(shù)方式是由OPTION寄存器中的D5(即TOCS位)確定。當(dāng)TOCS=0時(shí),工作于定時(shí)器方式;當(dāng)TOCS=1時(shí),工作于計(jì)數(shù)器方式。作定時(shí)器時(shí),每個(gè)指令周期加1(無(wú)預(yù)分頻時(shí));而作計(jì)數(shù)器時(shí),則在每個(gè)RA4/TOCKI引腳上電平變化時(shí)加1。OPTION寄存器的位4(TOCS位)決定外部脈沖的觸發(fā)方式,當(dāng)TOSE=1,下降沿觸發(fā);TOSE=0,上升沿觸發(fā)。當(dāng)TMRO內(nèi)部計(jì)數(shù)器發(fā)生計(jì)數(shù)溢出(從FFh00h)時(shí),溢出位送入中斷控制寄存器INTCON。4.6中斷PIC單片機(jī)16F73具有實(shí)時(shí)處理功能,能對(duì)外界異常發(fā)生的事
43、件由中斷技術(shù)作及時(shí)處理。當(dāng)單片機(jī)的CPU正在處理某事件時(shí),若外部發(fā)生了某一事件(如定時(shí)器溢出、引腳上電平變化),請(qǐng)求CPU迅速去處理,于是CPU就暫時(shí)中止當(dāng)前的工作,轉(zhuǎn)去處理所發(fā)生的事件。中斷處理完該事件后,再回到原來(lái)被中止的地方,繼續(xù)執(zhí)行原來(lái)的工作。實(shí)現(xiàn)這種功能的部件稱為中斷系統(tǒng)。產(chǎn)生中斷的請(qǐng)求源稱為中斷源。中斷源向CPU提出的處理請(qǐng)求,稱為中斷請(qǐng)求或中斷申請(qǐng)。CPU暫時(shí)中斷自身的事務(wù),轉(zhuǎn)去處理事件的過程,稱為CPU的中斷響應(yīng)過程。對(duì)事件的整個(gè)處理過程,稱為中斷服務(wù)(或中斷處理)。處理完畢,再回到原來(lái)被中止的地方,稱為中斷返回。4.7中斷控制中斷主要由中斷控制寄存器INTCON來(lái)控制。INT
44、CON是一個(gè)可讀/寫寄存器,含有定時(shí)器TMRO溢出、RB口的變化和外部INT引腳中斷等各種允許控制和標(biāo)志位。全局中斷允許位GIE(D7)置1,將開放所有未被屏蔽的中斷,如將該位清零,將禁止所有的中斷。在響應(yīng)中斷時(shí),GIE位將被清零,以禁止其它中斷,返回的斷點(diǎn)地址被壓棧保護(hù),接著把中斷入口地址0004h裝入程序計(jì)數(shù)器PC。在中斷服務(wù)程序中,通過對(duì)中斷標(biāo)志位進(jìn)行查詢,確定中斷標(biāo)志位必須在重新開放中斷之前用軟件清零,以避免不斷地中斷申請(qǐng)而反復(fù)進(jìn)入中斷。(1)INT中斷。RBO/INT引腳上的外部中斷由邊沿觸發(fā),當(dāng)INTEDG位(OPTION寄存器第6位)被置1時(shí),選用上升沿觸發(fā),如該位被清零,則由下
45、降沿觸發(fā)。當(dāng)檢測(cè)到引腳上有規(guī)定的有效邊沿時(shí),便把INTE位(INTCON的D4位)置1。在重新開放這個(gè)中斷之前,必須在中斷服務(wù)程序中對(duì)INTE位清零。(2)TMRO中斷。當(dāng)定時(shí)器TMRO的計(jì)數(shù)器計(jì)滿溢出(即由FFH變成00H)時(shí),硬件自動(dòng)把TOIF(INTCON的D2位)置1。其中斷可以通過對(duì)TOIE(INTCOND的D5位)置1或清零來(lái)控制該中斷是否開放。(3)PORTB口引腳電平變化中斷。在PORTB口的D7D0引腳上一旦有電平變化,就會(huì)把RBIF(INTCON的D0位)置1。這個(gè)中斷可以通過對(duì)RBIE(INTCON的D3位)置1或清零來(lái)控制該中斷是否開放。(4)中斷的現(xiàn)場(chǎng)保護(hù)。在發(fā)生中斷
46、時(shí),只有返回?cái)帱c(diǎn)的地址被壓棧保護(hù)。若用戶還希望保護(hù)關(guān)鍵的寄存器(如W寄存器和STATUS寄存器)。4.8復(fù)位復(fù)位是單片機(jī)的初始化操作。其主要功能是把程序計(jì)數(shù)器PCL初始化為000H,可使16F73單片機(jī)從000H單元開始執(zhí)行程序。PIC16F73芯片有下列幾種不同的復(fù)位方式。(1)芯片上電復(fù)位POR。(2)正常工作狀態(tài)下通過外部MCLR引腳加低電平復(fù)位。(3)在省電休眠狀態(tài)下通過外部MCLR引腳加低電平復(fù)位。(4)監(jiān)視定時(shí)器WDT超時(shí)溢出復(fù)位。PIC16F73片內(nèi)集成有“上電復(fù)位”POR電路,對(duì)于一般應(yīng)用,只要把MCLR引腳接高電位即可。在正常工作或休眠狀態(tài)下用MCLR復(fù)位,只需在MCLR引腳
47、上加一按鍵瞬間接地即可。第五章 軟件設(shè)計(jì)5.1 軟件流程報(bào)警器軟件設(shè)計(jì)主要分為:主程序(報(bào)警器初始化、鍵控和解碼);報(bào)警器中斷處理程序。主程序這一部分主要完成對(duì)各中斷入口的設(shè)定,對(duì)各鎖定單元和報(bào)警存放單元的初始化,設(shè)定特殊的標(biāo)志值及對(duì)按鍵的中斷處理。主程序設(shè)計(jì)框圖5.1所示。開始程序初始化等待按鍵按鍵N軟件解碼Y結(jié)束嗎?NY結(jié)束 圖5.1 程序主流程圖報(bào)警器中斷處理程序防盜報(bào)警器的處理程序采用時(shí)間中斷查詢處理,每一次時(shí)間中斷,僅是去查詢各種控制標(biāo)志位,根據(jù)它的狀態(tài)來(lái)控制各路輸出。程序沒有采用有循環(huán)處理的方式,所以控制未結(jié)束時(shí),不能清除控制標(biāo)志位,僅是復(fù)位現(xiàn)場(chǎng),等待下一次時(shí)間中斷,再判斷是否控制
48、結(jié)束。該報(bào)警器安裝在汽車方向盤上。安裝好后,動(dòng)報(bào)警器,報(bào)警器自動(dòng)延遲2030s 開始工作,便讓使用人有足夠的時(shí)間鎖好門離開汽車。延時(shí)后報(bào)警器進(jìn)入值守工作狀態(tài),但車門被打開或窗玻璃被敲碎,動(dòng)傳感器檢測(cè)到信號(hào),時(shí)20s開始報(bào)警。延時(shí)的目的是使車主在開門進(jìn)入車內(nèi)能關(guān)閉報(bào)警器,免誤報(bào)警。系統(tǒng)軟件流程設(shè)計(jì)如圖5.2所示。開始現(xiàn)場(chǎng)保護(hù)車輛受撞擊?時(shí)間中斷N檢測(cè)剎車N檢測(cè)車門開關(guān)狀態(tài)提示設(shè)防自動(dòng)設(shè)防N提示設(shè)防處理Y自動(dòng)設(shè)防處理Y置撞擊標(biāo)志位新按鍵按鍵功能處理Y撞擊報(bào)警警?N報(bào)警處理Y尋車N尋車處理Y防搶N防搶處理Y引擎控制N控制引擎YLED顯示控制恢復(fù)現(xiàn)場(chǎng)返回Y圖5.2 系統(tǒng)程序框圖5.2 軟件詳細(xì)設(shè)計(jì)圖5
49、.3 系統(tǒng)功能框圖該程序設(shè)計(jì)有設(shè)防、撤防、靜音、求救四種防盜方式。當(dāng)按下設(shè)防鍵時(shí),方向燈閃亮初始化完成,自動(dòng)進(jìn)入設(shè)防狀態(tài)。如果汽車受到震動(dòng)或尾門有人想要打開時(shí),喇叭會(huì)長(zhǎng)時(shí)間報(bào)警達(dá)到警告作用,直到車主看到汽車是不是故意被震動(dòng)此時(shí)按下撤防鍵時(shí)才停止報(bào)警。為的避免誤報(bào),當(dāng)汽車第一次受到震動(dòng)后,在25秒內(nèi)車門沒打開或沒被觸發(fā),防盜系統(tǒng)會(huì)視為誤解除,會(huì)自動(dòng)回復(fù)到原防盜警戒狀態(tài)。當(dāng)車主需要使有汽車時(shí),可以按一下撤防鍵此時(shí)方向燈閃亮,喇叭不會(huì)長(zhǎng)時(shí)間報(bào)警。按下靜音防盜鍵時(shí),方向燈閃亮,此時(shí)汽車處于靜音防盜工作狀態(tài),軟件會(huì)自動(dòng)檢查汽車有無(wú)受到震動(dòng)是否需要報(bào)警。同設(shè)防工作狀態(tài)要樣當(dāng)汽車第一次受到震動(dòng)后,在25秒內(nèi)
50、車門沒打開或沒被觸發(fā),防盜系統(tǒng)會(huì)視為誤解除,會(huì)自動(dòng)回復(fù)到原防盜警戒狀態(tài)。如果在車輛較多的場(chǎng)合想要很快找到自己的汽車這也不是什么困難的事情,只要按一尋車鍵你就會(huì)快速找到自己的汽車。還有一種情況就是如果自己的汽車被盜,為了能很快找到被盜的汽車此時(shí)按下尋車鍵汽車?yán)葧?huì)長(zhǎng)時(shí)間報(bào)警并且LED警示燈同步閃亮。有了這四種防盜作用,車主會(huì)比較放心的停放自己的汽車,不用擔(dān)心汽車會(huì)被盜。以下分別介紹這幾種防盜系統(tǒng)的程序設(shè)計(jì)。-定義緩沖區(qū)-P_TMP_HEQU 2CHP_TMP_L EQU 2DHSUMHEQU 2EHSUMLEQU 2FHT1_LED EQU 32H ;LED計(jì)時(shí)T1_LOCK EQU 33H ;
51、鎖門計(jì)時(shí)T1_SPEAK EQU 34H ;喇叭計(jì)時(shí)T1_LIGHT EQU 35H ;方向燈計(jì)時(shí)-計(jì)數(shù)器-LED_COUNTEQU 38H ;LED閃爍次數(shù)LOCK_COUNTEQU 39H ;鎖門次數(shù)SPEAK_COUNTEQU 3AH ;喇叭報(bào)警次數(shù)LIGHT_COUNTEQU 3BH ;方向燈閃爍次數(shù)VIBRATION_COUNT EQU 3CH ;振動(dòng)次數(shù)FAN_COUNTH EQU 48H ;計(jì)時(shí),TMR2中加1FAN_COUNTL EQU 49H AD_COUNTH EQU 4AH ;AD計(jì)數(shù),TMR2中加1,AD_COUNTL EQU 4BH LED_COUNT EQU 4CH
52、 ;LED閃爍次數(shù)-狀態(tài)標(biāo)志寄存器-STATE_FLAGEQU 5AH ;狀態(tài)標(biāo)志寄存器F_SET EQU 0 ;設(shè)置標(biāo)志F_RELEASE EQU 1 ;解除標(biāo)志F_WHISHT_SET EQU 2 ;靜音設(shè)置標(biāo)志F_FIND_CAR EQU 3 ;尋車標(biāo)志F_HELP EQU 4 ;求救標(biāo)志F_ALL_RELEASE EQU 5 ;完全解除標(biāo)志-動(dòng)作標(biāo)志寄存器-STATE_FLAGEQU 5BH ;動(dòng)作標(biāo)志寄存器F_LOCK EQU 0 ;鎖門動(dòng)作標(biāo)志F_SPEAK EQU 1 ;喇叭動(dòng)作標(biāo)志F_LIGHT EQU 2 ;方向燈動(dòng)作標(biāo)志-設(shè)置標(biāo)志寄存器-STATE_FLAGEQU 5CH
53、;設(shè)置標(biāo)志寄存器F_PROMPT_AGAINST_THEFT EQU 0F_AUTO_AGAINST_THEFT EQU 1F_ELEC_LOCK EQU 2-端口定義-SETTING EQU 0 ;RA.0 設(shè)防端口RELEASE EQU 1 ;RA.1 解除端口WHISHT_SET EQU 2 ;RA.2 靜音設(shè)防端口HELP_FINDEQU 3 ;RA.3 尋車求救端口EXIGENCE_RELEASE EQU 4 ;RA.4 緊急解除端口VIBRATION_IN EQU 5 ;RA.5 振動(dòng)輸入端口INTEQU 0 ;RB.0 中斷輸入,用于無(wú)線接收LED EQU 1 ;RB.1 LED
54、燈BACK_BOXEQU 2 ;RB.2 尾門負(fù)觸發(fā)SOUND_RELAYEQU 3 ;RB.3 報(bào)警喇叭繼電器LIGHT_RELAYEQU 4 ;RB.4 方向燈繼電器OPEN_RELAYEQU 5 ;RB.5 開中控鎖繼電器CLOSE_RELAYEQU 6 ;RB.6 關(guān)中控鎖繼電器BOX_RELAYEQU 7 ;RB.7 行李箱繼電器PROMPT_THEFT EQU 0 ;RC.0 跳線,提示/不提示 開啟防盜AUTO_SET EQU 1 ;RC.1 跳線,自動(dòng)/不自動(dòng) 開啟防盜AIR_OR_ELEC EQU 2 ;RC.2 跳線,氣動(dòng)/電動(dòng) 鎖ACC_12V EQU 3 ;RC.3 接
55、鑰匙鎖打開后12V電源CAR_DOOR EQU 4 ;RC.4 邊門檢測(cè)BACK_DOOR EQU 5 ;RC.5 尾門檢測(cè)TX EQU 6 ;RC.6 串口發(fā)送RX EQU 7 ;RC.7 串口接收5.2.1 聲光防盜當(dāng)有盜車賊想要接近或?qū)嵤┓缸锏臅r(shí)候,聲光防盜會(huì)啟動(dòng)。首先,觸發(fā)聲光報(bào)警電路汽車?yán)葧?huì)通過聲光報(bào)警器發(fā)出提示“BI”的響聲。其次,汽車轉(zhuǎn)向燈也會(huì)同步的閃亮。此時(shí)車主手上的遙控裝置會(huì)提示車主自己的汽車現(xiàn)在受到振動(dòng),提示車主檢查自己的汽車現(xiàn)在是否安全。按一下設(shè)定鍵,車門上鎖,方向燈閃一下,喇叭發(fā)出“BI”一聲提示,LED警燈閃亮,自動(dòng)進(jìn)入聲光防盜警戒狀態(tài)。相關(guān)代碼分析如下:SET_A
56、GAINST_THEFT BSF RB, CLOSE_RELAY ;鎖門 MOVLW D1 MOVWF LOCK_COUNT BSF ACT_FLAG,F_LOCK ;鎖門標(biāo)志置位,主程序可以進(jìn)入 BSF RB, SOUND_RELAY ;喇叭報(bào)警 MOVLW D1 MOVWF SPEAK_COUNT BSF ACT_FLAG,F_SPEAK ;喇叭標(biāo)志置位,主程序可以進(jìn)入 BSF RB, LIGHT_RELAY ;方向燈亮 MOVLW D2 MOVWF LIGHT_COUNT BSF ACT_FLAG,F_LIGHT ;方向燈標(biāo)志置位,主程序可以進(jìn)入 BSF T1CON,TMR1ON ;打開
57、定時(shí)器1 BCF STATE_FLAG,F_SET ;設(shè)置標(biāo)志位復(fù)位,主程序不能進(jìn)入RETURN5.2.2 靜音防盜靜音防盜主要使用在需要安靜禁止汽車發(fā)出刺激性的聲響的場(chǎng)合。靜音防盜是在盜車賊實(shí)施犯罪的時(shí)候,會(huì)觸發(fā)靜音防盜電路,此時(shí)汽車?yán)炔粫?huì)發(fā)出響聲,但汽車方向燈會(huì)不停的閃亮。汽車會(huì)通過無(wú)線電把信號(hào)發(fā)送到車主手上的遙控裝置,此時(shí)車主可以根據(jù)實(shí)際情況動(dòng)處理。 按一下靜音鍵,車門上鎖,方向燈閃一下,LED警示燈閃亮,自動(dòng)進(jìn)入靜音防盜警戒狀態(tài)。相關(guān)代碼分析如下: WHISHT_SET BSF RB, CLOSE_RELAY ;鎖門 MOVLW D1 MOVWF LOCK_COUNT BSF ACT_FLAG,F_LOCK ;鎖門標(biāo)志置位,主程序可以進(jìn)入 BCF RB, SOUND_RELAY ;喇叭不報(bào)警 BSF RB, LIGHT_RELAY ;方向燈亮 MOVLW D1 MOVWF LIGHT_COUNT BSF ACT_FLAG,F_LIGHT ;方向燈標(biāo)志置位,主程序可以進(jìn)入 BSF T1CON,TMR1ON ;打開定時(shí)器1 BCF STATE_FLAG,F_WHISHT_SET ;靜音標(biāo)志位復(fù)位,主程序不能進(jìn)入RETURN5.2.3 觸發(fā)報(bào)警
- 溫馨提示:
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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)展?fàn)I銷環(huán)境
- 6應(yīng)有格物致知精神
- 血管緊張素轉(zhuǎn)換酶課件
- 讀書月班會(huì)主題課件
- 最新3.3-解一元一次方程(二)—去括號(hào)與去分母(第2課時(shí))(1)課件
- 檢測(cè)組織中的脂質(zhì)概要課件
- 基因工程論文答辯
- 公共衛(wèi)生項(xiàng)目資金管理
- 新華年主銷產(chǎn)品介紹及滿期客戶異議處理
- 稅制改革熱點(diǎn)問題
- 第八課 楊振寧:合璧中西科學(xué)文化的驕子 (2)(精品)(精品)
- 第五節(jié)美國(guó) (2)(精品)(精品)
- 譯林版小學(xué)英語(yǔ)三年級(jí)上冊(cè)(3A)《Project-1-My-family-and-friends》5課件
- 萊茵達(dá)地產(chǎn)中長(zhǎng)期激勵(lì)方案--haventan通用課件
- 辦公室環(huán)境與綠化管理