一種短信控制的水浸報警系統設計
2 軟件設計
2.1 軟件流程
軟件流程如圖3所示,主要分為以下幾部分:?jiǎn)纹瑱C及TC35初始化,濾波檢測,發(fā)送報警短信,接收短信并解碼處理,低功耗模式。本文引用地址:http://dyxdggzs.com/article/159667.htm
2.2 AT指令集
AT指令集是GSM模塊與外部處理器之間的通信協(xié)議。用戶(hù)可以通過(guò)AT指令進(jìn)行呼叫、短信、電話(huà)本、數據業(yè)務(wù)、傳真等方面的控制。所有單片機對TC35的控制都是通過(guò)UART串口發(fā)送AT指令完成的,AT指令的發(fā)送要按照規定的語(yǔ)法格式,每一個(gè)命令行的開(kāi)始都要以AT(或at)開(kāi)頭,結尾要以CR>結束。發(fā)送AT指令后通常會(huì )受到返回字符,字符格式為CR>LF>返回字符>CR>LF>。CR>是回車(chē)字符(ASCII碼為16進(jìn)制0d,即0x0d),LF>是換行字符(ASCII碼為16進(jìn)制0a,即0x0a)。系統用到的AT指令見(jiàn)表1。
2.3 初始化過(guò)程
初始化過(guò)程分為單片機初始化和TC35初始化。單片機初始化包括關(guān)閉看門(mén)狗,系統時(shí)鐘初始化,端口(Port)初始化,UART串口初始化和ADC模塊初始化;TC35初始化包括發(fā)送AT指令“ATF”,“AT+CMGF=1”,“AT+CNMI=3,1,0,2”,“AT+CMGD=1”。
單片機的初始化系統時(shí)鐘為16 MHz,采用外部時(shí)鐘源。端口初始化包括I/O的輸入輸出方向配置,初始化端口值配置。當從單片機系統接收串口數據時(shí),TC35模塊可以從300 b/s~115 Kb/s自適應傳輸速率。但是,單片機系統不能自適應TC35的串口速率。因此,單片機與TC35模塊應設置同一傳輸速率,如單片機系統的UART串口設置9 600 b/s。UART串口選擇移位寄存器低位優(yōu)先(LSB first),8位數據位,1位停止位,UART同步模式,傳輸速率為9 600 b/s。ADC參考電壓選擇2.5 V。TC35初始化在單片機與TC35模塊之間要通過(guò)AT指令進(jìn)行配置,發(fā)送“AT+CMGF=1”設置短信格式為T(mén)EXT,發(fā)送“AT+CNMI=3,1,0,2”設置新短信提示,當TC35收到新短信后主動(dòng)向單片機報告并顯示存儲地址,如“+CMTI:“SM”,1”。發(fā)送“AT+CMGD=1”刪除地址1的短信,每次TC35使用時(shí)都要清空地址1的短信,當接收到新短信時(shí),可以將短信存儲到地址1的位置,解碼短信后也要執行刪除短信的命令。需要說(shuō)明的是,一個(gè)已注冊網(wǎng)關(guān)的SIM卡不需要設置短信中心號碼。
評論