基于MSP43O單片機的家用煙霧報警器的設(shè)計
2.3 報警電路
系統(tǒng)報警電路采用RE46C100來驅(qū)動壓電蜂鳴器,該芯片電壓工作范圍寬(6~16V),低功耗(空閑電流小于100nA),采用9V電池供電。該芯片使能端HRNEN與MSP430的P2.6口連接,當(dāng)HRNEN為高電平時,壓電蜂鳴器產(chǎn)生自激振蕩而發(fā)出報警聲音。通過軟件設(shè)置Timer A不同的定時輸出,可使之發(fā)出煙霧檢測、電池欠壓兩種不同方式的報警信號。
2.4 電源電路
系統(tǒng)需要提供9v和3.3V兩個工作電壓,9V供給RE46C100,3.3V是單片機MSP430F2012的工作電壓,本電路選用穩(wěn)壓器TPS715333。
TPS71533是一款采用SC-70封裝的高輸入電壓LDO(低壓降)穩(wěn)壓器,其與微處理芯片MSP430F1232同屬于美國的TI公司。該穩(wěn)壓器的特點是:高輸入、低壓降、低功耗和小型封裝。芯片的輸入電壓范圍為2.5~24V,低壓降和低靜態(tài)電流(最大靜態(tài)電流為3.2 μA)使該芯片的功耗處于極低的水平,適用于電池供電的場合。
同時系統(tǒng)還實現(xiàn)了電池欠壓檢測,將電源電壓直接引入MSP430F2012 ADC模塊的輸入P1.2口,與程序中預(yù)先設(shè)定的閥值電壓進行比較,當(dāng)電源電壓過低時,通過報警電路提醒用戶及時更換電池。
3 系統(tǒng)軟件的設(shè)計與實現(xiàn)
為了便于系統(tǒng)維護和功能擴展,系統(tǒng)軟件采用了模塊化的設(shè)計方法,采用了C語言編程。系統(tǒng)軟件包括主程序、中斷喚醒子程序、煙霧信號檢測子程序和電池電壓檢測子程序。主程序流程圖如圖3所示。
初始化時,將校準的1MHz DCO值送入DCO控制寄存器,再根據(jù)已校準的DCO時鐘源校準VLO,MCU工作在低功耗模式LPM3。TA0每8s中斷一次,MCU退出LPM3模式,調(diào)用煙霧信號檢測子程序。為了避免誤報警,系統(tǒng)只有連續(xù)3次探測到煙霧信號,才啟動報警電路報警。第1次探測到煙霧信號后,VLO時鐘源經(jīng)4分頻作為定時器A信號源,即第2次采樣間隔4s;如果第2次仍探測到煙霧信號,定時器A時鐘源直接由VLO輸入1s采樣;如果第3次仍探測到煙霧信號,系統(tǒng)開始警報,煙霧探測器繼續(xù)以1s周期進行采樣。為了降低系統(tǒng)功耗,在煙霧采樣轉(zhuǎn)換期間,MCU進入LPM3模式。
在煙霧信號檢測子程序中,首先通過P2.7和P1.4口分別打開LED和運放,將ADC10設(shè)定成4次單通道連續(xù)轉(zhuǎn)換,通過ADC10的DTC特性將轉(zhuǎn)換結(jié)果暫存到MCU的RAM中,運放經(jīng)延時穩(wěn)定后啟動ADC,MCU進入LPM3模式,在完成4次AD轉(zhuǎn)換后DTC中斷,DTC中斷服務(wù)程序返回,MCU進入活動模式,然后紅外發(fā)射管打開,同樣延時穩(wěn)定后再進行一輪4次連續(xù)AD轉(zhuǎn)換,采樣結(jié)束后關(guān)閉運放、紅外發(fā)射管、ADC及發(fā)光二極管,最后調(diào)用計算平均值子程序,計算兩次連續(xù)4次AD轉(zhuǎn)換的平均值,主程序調(diào)用計算結(jié)果確定是否探測到煙霧信號。
4 結(jié)束語
本文設(shè)計了一款基于MSP430單片機的家用煙霧報警器,實現(xiàn)了對煙霧信號和電池欠壓的精確檢測。在硬件選型和軟件設(shè)計中,充分考慮家用系統(tǒng)低成本、低功耗的要求。此系統(tǒng)符合國標GB20517-2006《獨立式感煙火災(zāi)探測報警器》認證的要求。實踐證明,此系統(tǒng)具有體積小、功耗低、靈敏度高、應(yīng)用靈活、可靠性高、實時性強等特點,是高性能家用煙感的最佳選擇方案。
評論