1 引言 隨著社會(huì)經(jīng)濟(jì)的發(fā)展和人民生活水平的不斷提高.同時(shí)引發(fā)入室搶劫、盜竊等暴力事件頻頻發(fā)生.不法分子的作案手段也是越來(lái)越向高科技化、高智能化發(fā)展。同時(shí),智能家居內(nèi)部的安防系統(tǒng)通常價(jià)格不低.因此必須有一種價(jià)格適中且工作穩(wěn)定的智能安防系統(tǒng)來(lái)最大限度的減小損失。本文主要針對(duì)前述現(xiàn)象設(shè)計(jì)基于ARM技術(shù)的智能安防系統(tǒng),該系統(tǒng)主要采用ARM系列芯片中的LPC2210嵌入式微處理器.選用可同時(shí)處理多任務(wù)的ucos-Ⅱ操作系統(tǒng)。 2 系統(tǒng)的總體設(shè)計(jì)方案 系統(tǒng)的總體設(shè)計(jì)體系圖如圖1所示.本系統(tǒng)主要由物業(yè)管理中心機(jī)、公用電話網(wǎng)、以太網(wǎng)、RS485網(wǎng)、室內(nèi)嵌入式安防控制器、報(bào)警檢測(cè)和可視對(duì)講設(shè)備組成。其中485網(wǎng)構(gòu)成室內(nèi)網(wǎng)絡(luò),以太網(wǎng)和公用電話網(wǎng)構(gòu)成外部通信網(wǎng)。整個(gè)系統(tǒng)分防盜、防災(zāi)報(bào)警和可視對(duì)講三大部分。其中防盜部分主要防盜報(bào)警、緊急呼救系統(tǒng)等;防災(zāi)部分主要包括防火災(zāi)發(fā)生、防煤氣(可燃?xì)怏w)泄露。系統(tǒng)一旦有任何異常情況發(fā)生,則通過(guò)485網(wǎng)將預(yù)先設(shè)計(jì)好的指令發(fā)送到嵌入式安防控制器上,控制器對(duì)接收到的指令進(jìn)行解析同時(shí)自身發(fā)出警戒信號(hào)然后可以通過(guò)公用電話網(wǎng)遠(yuǎn)程報(bào)警給用戶,也可以通過(guò)以太網(wǎng)遠(yuǎn)程報(bào)警給物管中心報(bào)警.同時(shí)物業(yè)管理中心的主機(jī)將會(huì)記錄下這些信息;可視對(duì)講部分包括門(mén)口機(jī)、電控門(mén)、監(jiān)視、監(jiān)聽(tīng)設(shè)備等,主要完成對(duì)來(lái)訪客人的身份確認(rèn)和電控門(mén)的控制,以及與小區(qū)對(duì)講主機(jī)、小區(qū)大門(mén)對(duì)講主機(jī)進(jìn)行對(duì)講等功能。 圖1 系統(tǒng)總體設(shè)計(jì)體系圖 3 系統(tǒng)的硬件設(shè)計(jì) LPC2210是基于支持實(shí)時(shí)仿真和嵌入式跟蹤的16/32位ARM7TDMI-STM CPU.并帶有16kB嵌入式RAM,1個(gè)128位寬度的外部存儲(chǔ)器接口和1個(gè)獨(dú)特的加速器架構(gòu),使得32位代碼可在最大時(shí)鐘頻率下運(yùn)行。同時(shí),對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用.可選用16位Thumb TM模式和32位的ARM模式,ThumbTM下可減少代碼30%,而性能的損失卻很小。系統(tǒng)的結(jié)構(gòu)圖如圖2所示。 圖2 系統(tǒng)結(jié)構(gòu)框圖 3.1 系統(tǒng)時(shí)鐘與復(fù)位電路 系統(tǒng)時(shí)鐘使用11Mhz基準(zhǔn)品振,連接LPC2100的X1和X2管腳。由于ARM芯片的高速、低功耗、低電壓導(dǎo)致其噪聲容限低。對(duì)電源的紋波、瞬態(tài)響應(yīng)性能等方面要求更高,本系統(tǒng)采用帶I2C存儲(chǔ)器的電源監(jiān)控芯片GAT1025JI-30以提高系統(tǒng)的可靠性。 3.2 JTAG接口電路與存儲(chǔ)器接口電路 采用ARM公司提供的標(biāo)準(zhǔn)20腳JTAG防真調(diào)試接口。本系統(tǒng)擴(kuò)展了2MB的NOR FLASH(SST39VF160)、8MBPSRAM(MT45W4MW 16)、16MB的NAND FLASH(K9F2808UOC)與一片帶I2C的E2PROM存儲(chǔ)器(CAT1025)。 3.3 LED與A/D接口 分別采用P2.28-P2.33作為前端探測(cè)器的信號(hào)指示,其中亮表示有警情,否則,燈滅。LPC2210具有4路lO位的A/D轉(zhuǎn)換器.其參考電壓為3.3V。 3.4 以太網(wǎng)接口電路 本系統(tǒng)設(shè)計(jì)以RTL8019AS芯片為核心的以太網(wǎng)接口電路.以16位總線的方式對(duì)RTL8019AS進(jìn)行訪問(wèn). 3.5 電話接口電路 選用接收發(fā)送集成芯片MT8880.MT8880是MITEL公司推出的DTMF發(fā)送接收器,分為振鈴檢測(cè)與模擬摘機(jī)電路、雙音多頻接收與發(fā)送電路. 3.6 485接口電路 通過(guò)LPC2210的UART口實(shí)現(xiàn),具體電路如圖3。在系統(tǒng)中選用SP3485來(lái)擴(kuò)展RS485電路.SP3485是+3.3v低功耗半雙工收發(fā)器件,完全滿足RS 485標(biāo)準(zhǔn)的要求。這一芯片與SP485管腳完全兼容,并同時(shí)滿足工業(yè)標(biāo)準(zhǔn)。SP3485的RE與DE腳與LPC2214的P0.10連接。當(dāng)P0.10管腳為高電平時(shí)允許DI腳上的數(shù)據(jù)發(fā)送,DI腳與LPC2214的UARTI輸出腳P0.8TXD連接。當(dāng)P0.10管腳為低電平時(shí).允許RD腳讀取485線上的數(shù)據(jù)。RD腳與LPC2214的UARTI輸入腳P0.9RXD連接。圖中兩個(gè)電阻R3、R4為偏置電阻.用于保證無(wú)連接的SP485芯片處于空閑狀態(tài),提供網(wǎng)絡(luò)失效保護(hù),以提高RS485節(jié)點(diǎn)與網(wǎng)絡(luò)的可靠性。DWl、DW2是用來(lái)保護(hù)RS485總線的,避免RS485總線在受外界干擾時(shí)(雷擊、浪涌)產(chǎn)生的高壓,損壞RS485收發(fā)器。 圖3 485接口電路 4 系統(tǒng)軟件設(shè)計(jì) 本系統(tǒng)的軟件設(shè)計(jì)主要包括ARM的應(yīng)用程序設(shè)計(jì)和ucos-Ⅱ操作系統(tǒng)的移值。ARM的應(yīng)用程序按照系統(tǒng)所要實(shí)現(xiàn)的功能。整個(gè)系統(tǒng)被劃分為幾個(gè)并行存在的任務(wù),主要包括報(bào)警檢測(cè)、電話報(bào)警、LED顯示、485應(yīng)用程序等,應(yīng)用程序采用ANSI C語(yǔ)言編寫(xiě)。由于占先式操作系統(tǒng)塒任務(wù)的調(diào)度是按優(yōu)先權(quán)的高低進(jìn)行的,將系統(tǒng)的所有任務(wù)按其優(yōu)先級(jí)從高到低順序排列依次是:報(bào)警檢測(cè)、LED顯示、通信、數(shù)據(jù)分析等,由于多個(gè)任務(wù)可能會(huì)出現(xiàn)對(duì)共享資源的同時(shí)操作。從而造成數(shù)據(jù)的破壞或丟失,為了防止數(shù)據(jù)的破壞或丟失,出現(xiàn)使用信息出現(xiàn)互斥操作現(xiàn) 圖4 系統(tǒng)主流程圖 ucos-Ⅱ操作系統(tǒng)主要是協(xié)調(diào)LPC2210對(duì)程序的任務(wù)管理和調(diào)度.ucos-Ⅱ是源碼公開(kāi)的著名實(shí)時(shí)內(nèi)核。是一個(gè)完整的、可移植的、可固化、可裁剪的占先式實(shí)時(shí)多任務(wù)內(nèi)核,主要使用ANSI C語(yǔ)言編寫(xiě)程序,使用ADS編譯和調(diào)試程序。操作系統(tǒng)的移植既是使實(shí)時(shí)內(nèi)核在其他的微處理器或微控制器卜運(yùn)行。因?yàn)閡cos-Ⅱ大部分代碼是用C語(yǔ)言編寫(xiě)的,所以其移植性較好,但是部分代碼是用匯編編寫(xiě)的。ucos-Ⅱ的結(jié)構(gòu)及與硬件的關(guān)系圖見(jiàn)圖5。 ucos-Ⅱ的移植需要滿足下面五個(gè)條件: * 處理器的C編譯器能產(chǎn)生可重入型代碼。 * 用c語(yǔ)言就可以打開(kāi)和關(guān)閉中斷。 * 處理器支持中斷。并且能產(chǎn)生定時(shí)中斷(通常在10至100Hz之M)。 * 處理器支持能夠容納一定量數(shù)據(jù)(可能是幾千字節(jié))的硬件堆棧。 * 處理器有將堆棧指針和其它CPU寄存器讀出和存儲(chǔ)到堆棧或內(nèi)存中的指令。 ucos-Ⅱ的移植工作。主要與三個(gè)文件相關(guān):處理器相關(guān)c文件(OS_CPU.H,os_CPU C.C)和匯編文件(OS_CPU_A.s)文件,其中在OS_CPU.H中需要針對(duì)處理器的字長(zhǎng)重新定義一系列數(shù)據(jù)類(lèi)型、設(shè)置常量來(lái)標(biāo)志堆棧增長(zhǎng)方向及聲明用于開(kāi)關(guān)中斷和任務(wù)切換的宏。在OS_CPU C.C中需要對(duì)任務(wù)堆棧初始化,主要涉及到任務(wù)初始化時(shí)的一個(gè)堆棧設(shè)計(jì),也就是在堆棧增長(zhǎng)方向上如何定義每個(gè)需要保存的寄存器位置。OS_CPU_A.S主要涉及4個(gè)匯編語(yǔ)言.其中函數(shù)OSStartHighRdy()在OSStart()多任務(wù)啟動(dòng)之后.負(fù)責(zé)從最高優(yōu)先級(jí)任務(wù)的TCB控制塊中獲得該任務(wù)的堆棧指針sp,通過(guò)sp依次將CPU現(xiàn)場(chǎng)恢復(fù),這時(shí)系統(tǒng)就將控制權(quán)交給用戶創(chuàng)建的該任務(wù)進(jìn)程,直到該任務(wù)被阻塞或者被其他更高優(yōu)先級(jí)的任務(wù)搶占;OSCtxsw()實(shí)現(xiàn)任務(wù)級(jí)的任務(wù)切換,它是當(dāng)任務(wù)因?yàn)楸蛔枞鲃?dòng)請(qǐng)求CPU調(diào)度時(shí)被執(zhí)行.由于此時(shí)的任務(wù)切換都是在非異常模式下進(jìn)行的,因此區(qū)別于中斷級(jí)別的任務(wù)切換,它的工作是先將當(dāng)前任務(wù)的cpu現(xiàn)場(chǎng)保存到該任務(wù)堆棧中然后獲得最高優(yōu)先級(jí)任務(wù)的堆棧指針,從該堆棧中恢復(fù)此任務(wù)的CPU現(xiàn)場(chǎng).使之繼續(xù)執(zhí)行。這樣就完成了一次任務(wù)切換;OSIntCtxSw()實(shí)現(xiàn)中斷級(jí)的任務(wù)切換.它是在時(shí)鐘中斷ISR(中斷服務(wù)例程)中發(fā)現(xiàn)有高優(yōu)先級(jí)任務(wù)等待的時(shí)鐘信號(hào)到來(lái),則需要在中斷退出后并不返回被中斷任務(wù).而是直接調(diào)度就緒的高優(yōu)先級(jí)任務(wù)執(zhí)行。這樣做的目的主要是能夠盡快地讓高優(yōu)先級(jí)的任務(wù)得到響應(yīng),保證系統(tǒng)的實(shí)時(shí)性能;OSTicklSR()是時(shí)鐘中斷處理函數(shù),它的主要任務(wù)是負(fù)責(zé)處理時(shí)鐘中斷,調(diào)用系統(tǒng)實(shí)現(xiàn)的OSTimeTick函數(shù),如果有等待時(shí)鐘信號(hào)的高優(yōu)先級(jí)任務(wù),則需要在中斷級(jí)別上調(diào)度其執(zhí)行。完成上述工作以后,UCOS一Ⅱ就可以正常運(yùn)行在ARM處理器了。 圖5 ucos-Ⅱ的結(jié)構(gòu)及與硬件的關(guān)系圖 5 結(jié)語(yǔ) 安防系統(tǒng)就是運(yùn)用科技手段與犯罪作斗爭(zhēng)。是人防和物防系統(tǒng)的延續(xù)和發(fā)展,可以提高迅速處置非法闖入、破壞、盜竊等突發(fā)事件的能力,起到預(yù)防和延遲警情的發(fā)生.安防系統(tǒng)采用的技術(shù)設(shè)備、措施等都蘊(yùn)含著較高的科技水平.本文提出采用嵌入式ARM技術(shù)和ucos一Ⅱ操作系統(tǒng)作為新一代安防控制系統(tǒng)的新架構(gòu).它具有功能強(qiáng)大、價(jià)格合適、運(yùn)行穩(wěn)定可靠、抗干擾性強(qiáng)、實(shí)時(shí)性較強(qiáng)、網(wǎng)絡(luò)功能強(qiáng)大的特點(diǎn),預(yù)計(jì)是新型安防控制系統(tǒng)的發(fā)展方向。隨著嵌入式硬件平臺(tái)的不斷發(fā)展。其程序可以很方便地向其他性能更好、價(jià)格更合適的硬件平臺(tái)移植,并且可以配置更加強(qiáng)大的功能組件。 本文作者創(chuàng)新點(diǎn):采用ARM系列芯片中的LPC2210嵌入式微處理器,選用可同時(shí)處理多任務(wù)的uCOS-Ⅱ操作系統(tǒng).完成家居安防的控制,本系統(tǒng)將有效消除家居的安全隱患。并在警情不可避免發(fā)生時(shí),能實(shí)現(xiàn)快速響應(yīng),及時(shí)通知報(bào)警的功能。最大限度降低危害的發(fā)生率,大大提高家居生活的質(zhì)量與智能化水平。 項(xiàng)目經(jīng)濟(jì)效益:每套系統(tǒng)節(jié)約成本4000元左右。 作者:汪海燕 來(lái)源:《微計(jì)算機(jī)信息》(嵌入式與SOC)2009年第7-2期 |