新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Q2403A的單片機短消息收發系統

        基于Q2403A的單片機短消息收發系統

        作者: 時間:2007-11-27 來源:網絡 收藏
        引言

          GSM的業務不需要建立撥號連接,只需把待發的消息加上目的地址發送至中心,再由中心轉發到最終目標。GSM 短消息業務以其連接簡單、費用低廉、覆蓋范圍廣、實現方便等優點得到了廣泛的應用。運用 GSM 短消息實現遠程測控的可靠性較高、信號傳播距離遠、覆蓋面積廣,并且可以節省建網初期的巨額投資。

          本文對GSM短消息的設計與實現作了具體描述,給出了的軟硬件設計方案,對主要硬件,即GSM模塊 和8051作了重點介紹。給出了的軟件設計,包括PC與通信部分和短消息部分。最后實現系統監控功能。

          系統硬件實現

          總體系統結構

          該系統硬件主要由8051擴展電路、手機模塊、RS-232總線接口電路、電源轉換器等部分組成。圖1為系統結構框圖。

        系統結構框圖

        圖1 系統結構框圖

          其中,電源轉換器將PC端口的12V電壓轉換成3.6V和5V穩壓,使系統中的芯片處于正常工作狀態。RS-232總線接口電路包括電平轉換和串口擴展電路。8051單片機實現存儲器擴展之后,通過RS-232總線接口電路與P

        C進行數據通信;以中斷方式對數據進行處理后,控制手機模塊進行短消息,實現系統的監控功能。

          單片機擴展電路設計

          MCS-51單片機的內部雖已集成了很多資源,這些資源都是折中配置的,片內程序存儲器、數據存儲器的容量都不大,并行I/O端口的數量也不是很多。此外,在有些應用中,片內定時器、中斷、串行口等也顯得不足。因此,根據需要,本系統選用8051單片機并對其進行擴展。

          讀寫存儲器擴展

          本文選用SRAM芯片6264。容量為8K8bit。其地址線有13條,即A12~A0。8條數據線D7~D0。再加上其他引腳,總共有28個引腳,其中有2個標注為Nc的空引腳。把Nc引腳分別作為地址線A13~A14使用,就是容量為16k8bit和32k8bit的SRAM存儲芯片。

          接口方案采用地址完全譯碼設計。 使用74138譯碼器為擴展的存儲器分配地址空間。給6264數據存儲器分配惟一的地址空間是:0000H~1FFFH。

          只讀存儲器擴展

          本文選用AT24C02進行數據存儲。它使用兩根信號線進行數據傳輸,一根是串行數據線(SDA),另一根是串行時鐘線(SCL)。

          RS-232接口電路設計

          MAX202是單電源、雙RS-232發送/接收器,適用于各種EIA-232E和V.28/V.24的通信接口。MAX202芯片有一個電壓轉換器,可以把輸入的+5V電源轉換成RS-232C輸出所需的10V電壓,所以,用此芯片接口的串行通信系統只要單一的+5V即可。

          本文選用通用異步接收/發送器MAX3100對單片機串行口進行擴展,將單片機與RS-232總線相連。

          MAX3100供電電源范圍寬、功耗低、在+2.7V~+5.5V的電源中僅吸收0.5mA的電流,具有零功耗的停機模式,并能由接收信號喚醒,使用SPI/Microwire接口與主微控制器進行通信。MAX3100不僅適合于速率高達230kbps的RS-232和RS-485數據鏈路,而且支持速率為2.4kbps~115.2kbps的紅外線數據協會(IrDA)SIR格式,在微控制器的小型系統設計中具有良好的應用前景。圖2為串口擴展電路圖。

        串口擴展電路圖

        圖2 串口擴展電路圖

          電源部分

          由于PC端口提供的電壓為12V, 系統中的芯片有3.6V和5V兩種。因此,電源部分采用美國國家半導體公司輸出電壓可調的三端集成穩壓芯片LM1085-ADJ。

          LM1085是一款單芯片集成的電壓轉換器。提供3 A電流輸出,具備過流保護,過溫保護,有可靠的工作性能、較高的工作效率,能夠為芯片提供穩定的3.6V、5V電壓,為芯片工作提供了強有力的保證。圖3為電源電路原理圖。
        電源電路原理圖
        圖3電源電路原理圖
        手機模塊部分

          Q2403A GSM/GPRS模塊支持雙頻EGSM/GPRS 900MHz/1800MHz模式,支持AT指令,短消息功能完備。Q2403A模塊具有60引腳的通用接口,非常容易集成到應用產品中;具有SIM卡確認、供電、時鐘、復位及I/O的3V SIM卡接口,包括SIMVCC、SIMRST、SIMDATA、SIMCLK和SIMPRES等。另外,模塊提供一個符合V24協議的6線串行通信接口,包括TX、RX、RTS、CTS、DTR、DSR;同時提供DCD和RI信號接口、上電信號PowerON/OFF和復位信號RST。模塊正常工作要求提供兩路電源,其中,VBATT提供給RF部分,電壓范圍為3.3V~4.5V,最大功率為2 W;VDD提供給基帶部分,電壓范圍為3.1V~4.5V,最大功率為0.5W。圖4為手機模塊與SIM卡外圍電路設計。

        手機模塊與SIM卡外圍電路圖

        圖4 手機模塊與SIM卡外圍電路圖

          系統軟件設計

          主程序流程

          主程序主要負責系統的初始化,包括單片機時鐘設置、端口工作方式設置、串口設置(波特率、中斷允許等)、默認系統數據的恢復(如時間設置、標志位清零等)、GPRS模塊的初始化、中斷初始化等。然后反復查詢SIM卡網絡注冊情況,直到注冊成功。最后進入低功耗模式,等待中斷。流程如圖5所示。

         系統主程序流程

        圖5 系統主程序流程

          PC與單片機通信部分

          該部分包括機組工作數據的采集和反向控制命令的發送,由串口RXD/TXD完成。

          PC控制器通過RS-232總線傳送多幀數據,數據內容包括機組運行狀態、全部溫度數據和輸入/輸出狀態信息,以及故障信息等。短消息控制器內的單片機在串口RXD/TXD接收中斷過程中判斷并處理接收到的數據。

          短消息收發

          本部分要實現的功能有:接收控制方發來的短消息并提取有效命令詞、組裝控制幀;采集到緊急故障信息時,或是需要反饋執行結果時,向控制方發送短消息。采用中斷方式接收來自Q2403A模塊的信息。圖6為串口RX/TX的接收和發送中斷流程。

        串口RX/TX接收/發送中斷流程

        圖6 串口RX/TX接收/發送中斷流程

          Q2403A支持的功能相當完備,本系統主要使用了短消息功能。單片機與Q2403A模塊間主要通過串口RX/TX進行通信,以AT命令來實現接收及發送的功能。用到的AT命令主要有:查詢注冊狀態AT+CREG;短消息列表AT+CMGL;短消息發送AT+CMGS;短消息刪除AT+CMGD。

          結語

          本文在提出總體設計方案的基礎上,完成了系統的硬件和軟件設計、應用程序的編寫及調試,經實際運行驗證,取得了滿意的效果。就目前的測試結果而言,結合遠程監控的優勢,具有較強的實用性。對軟硬件作適當擴充修改后,還可應用于環境監測、石油開采設備的監測與控制、農作物生長狀況的監測、交通管理系統及安防系統等諸多領域。

          參考文獻:

          1. 李華,等.MCS51系列單片機實用接口技術.第9版.北京:北京航空航天大學出版社,2002

          2. 馬中梅,籍順心,張凱等.單片機的C語言應用程序設計.北京航空航天大學出版社,1999

          3. 龔建偉,等.Visual C++/Turbo C串口通信編程實踐[M].北京:電子工業出版社,2004





        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 衡山县| 江油市| 龙泉市| 南雄市| 郑州市| 随州市| 观塘区| 翁源县| 遂平县| 海宁市| 德兴市| 永吉县| 铜陵市| 建始县| 怀仁县| 尉犁县| 上饶市| 丹寨县| 陈巴尔虎旗| 昌黎县| 安乡县| 凤庆县| 南投县| 东港市| 霍山县| 慈利县| 县级市| 玛纳斯县| 临江市| 北票市| 彰武县| 沛县| 大石桥市| 宝清县| 清水河县| 东乡| 永善县| 海盐县| 赞皇县| 宣汉县| 醴陵市|