MSP43O實現(xiàn)家用煙霧報警器
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é)束語
此系統(tǒng)符合國標GB20517-2006《獨立式感煙火災(zāi)探測報警器》認證的要求。實踐證明,此系統(tǒng)具有體積小、功耗低、靈敏度高、應(yīng)用靈活、可靠性高、實時性強等特點,是高性能家用煙感的最佳選擇方案。
蜂鳴器相關(guān)文章:蜂鳴器原理
評論