一種基于SMS的智能家居遠(yuǎn)程監(jiān)控系統(tǒng)
圖3 主程序流程圖。
4 軟件系統(tǒng)設(shè)計
Atmega 128 芯片集成的指令功能豐富,內(nèi)存等資源也都比較豐富, 為了提高編程效率、代碼的可讀性、可移植性和可維護(hù)性, 本系統(tǒng)使用C 語言開發(fā)系統(tǒng)軟件。
4.1 主程序流程
系統(tǒng)上電后, 首先初始化各底層硬件(包括LCD 設(shè)備、串口參數(shù)等)和系統(tǒng)I /O, 然后并通過RS- 2 3 2 端口向短信模塊發(fā)送AT E 命令查詢短信模塊是否正常工作? 若收到應(yīng)答后, 則順序發(fā)送"A T + CMG F "、"A T + C NM I "、"AT+CSCA"等AT 命令(可參考AT 命令集),設(shè)置或獲取相關(guān)參數(shù), 完成短信預(yù)處理。然后進(jìn)入循環(huán)等待狀態(tài),定時查詢短信模塊是否收到新短信,檢測各個傳感器的信號輸入以及鍵盤操作等。若查詢到有新短信, 則判斷它是否來自授權(quán)手機(jī)? 若是, 核查該手機(jī)號碼的權(quán)限后, 對該短信進(jìn)行分析, 根據(jù)具體命令( 見表1-3)作出響應(yīng)。一旦檢測到煙感、CO 傳感等傳感器有異常,則立即切斷主要電器的電源,輸出報警信號并向指定手機(jī)發(fā)送短信。
4.2 GSM 短信息設(shè)計
4.2.1 短信收發(fā)模式選擇
Saro 310 GSM Modem 模塊使用AT 命令集控制短信的收發(fā),它支持TEXT 和PDU 兩種短信收發(fā)模式。
前者不支持非ASCII 碼字符,不能收發(fā)中文短信,而后者支持多種不同的編碼格式, 因此在本系統(tǒng)采用PDU 模式來收發(fā)短信息。手機(jī)中文字顯示使用國標(biāo)碼,在CPU中需要先將U C S 2 編碼轉(zhuǎn)換為國標(biāo)碼以便于輸出。
UCS2 編碼與國標(biāo)碼之間轉(zhuǎn)換不能依靠算法完成,只能通過查表來實(shí)現(xiàn)轉(zhuǎn)換。
蜂鳴器相關(guān)文章:蜂鳴器原理 燃?xì)鈭缶飨嚓P(guān)文章:燃?xì)鈭缶髟?/a>
評論