荊世勇,周景龍,劉明鑫,楊 婷
(電子科技大學電子工程學院,四川成都 611731)
GSM是目前應用較為成熟和完善的一種通信系統。它可以提供短消息、語音、數據傳送等多種業務。其中短消息的傳送是GSM網絡的一種重要業務,已得到廣泛應用。如在變電站、電表、水塔等監測數據的無線傳輸和遠程無線控制系統中都需要一種功耗小、性能穩定、抗干擾能力強的無線裝置。迄今為止,無論是藍牙技術,還是其他的無線電波遙控裝置能滿足以上條件的較少,而GSM系統可以很好地滿足上述要求[1-2]。
設計一個基于GSM通信模塊的無線傳輸系統,選用SIM900A通信模塊和LPC2378控制器制成一款無線Modem,與串口終端協同收發短信數據,以此Modem和GSM網絡為紐帶可實現遠距離的數據傳送。設計框圖如圖1所示。

圖1 系統硬件結構框圖
控制模塊核心芯片為LPC2378,是一個恩智浦半導體(NXP)公司推出的32位、具有精簡指令集、超低功耗的基于ARM7TDMI-S的微控制器,適用于為各種目的而需要進行串行通信的應用。由于它具有低功耗、豐富的片內外設和方便靈活的開發手段,已成為眾多單片機系列中一個研究熱點。其主要特點有:低電壓、超低功耗;工作電壓范圍為3.0~3.6 V;片內有10位的A/D轉換器;4個32位的定時器,具有靈活的時鐘設置;片內晶振的工作頻率在1~24 MHz之間。具有4個UART串口,方便用戶多機通信。提供P0.0~P4.0共5個數據端口,能為用戶提供更多的處理功能。在提供的外圍數據端口中,有4個具有中斷功能。具有JTAG仿真調試接口,便于軟件的調試。片內可提供較多的存儲器,片內Flash為512 kB,同時還提供較多的 RAM 以便進行運算處理[3-5]。
1.2.1 電源部分
在該系統中LPC2378單片機需要用3.3 V和1.8 V供電,因而用National公司的LM117-33和LM117-18芯片實現由5~3.3 V和3.3~1.8 V的降壓處理,而LED燈,是在電源通電后變亮,指示電源的通斷;電容是用來濾波,減小對輸入端的干擾。電源供電原理圖如圖2所示。

圖2 LPC2378電源供電原理圖
1.2.2 串口通信和按鍵
LPC2378有兩個串口,USART1與SIM900A的連接,USART0與上位機連接,通過串口0將上位機要傳輸的數據暫存在單片機中,然后通過串口1最終傳到SIM900A模塊中,從而實現數據的無線傳輸。雖然SIM900A模塊的串口管腳的工作電平是CMOS電平,單片機的串口管腳的工作電壓是TTL電平,但由于單片機的高低電平的邏輯判斷電平可以實現與SIM900A的管腳進行連接,因此SIM900A模塊的串口線可以直接與單片機的串口1相連,而串口0需要一個MAX3232進行電平轉換與上位機通訊[6],如圖 3所示。

圖3 PC串口電路
SIM900A是芯訊通(SIMCom)公司推出的新一代無線通信GSM/GPRS模塊,可以快速安全可靠地實現系統方案中的數據、語音傳輸、短消息服務(Short Message Service)和傳真。模塊的工作電壓為3.2~4.8 V,工作的頻段為 EGSM 900 MHz和 DCS 1 800 MHz。SIM900A支持GPRS multi-slot class 10/class 8(可選)和GPRS編碼格式 CS-1,CS-2,CS-3 and CS-4。所在頻段最大功耗分別為2 W(900 MHz)和1 W(1 800 MHz)。
SIM900 A采用省電技術設計,所以在Sleep模式下最低耗流只有1.0 mA。常用工作模式有Sleep、Idle、Talk等模式。由于尺寸只有24 mm×24 mm×3 mm,所以SIM900A幾乎可以滿足所有用戶應用中對空間尺寸的要求,例如 M2M,數據傳輸系統等。SIM900A為SMT封裝,基于STE的單芯片方案,采用ARM926EJ-S架構,實現電源連接、指令、數據、語音信號、及控制信號的雙向傳輸。
鍵盤和SPI顯示接口可以使用戶靈活地設計定制應用。主串口和調試串口可以幫助用戶輕松地進行開發應用。一路音頻接口,包含一個麥克風輸入和一個揚聲器輸出。可編程的通用輸入輸出接口(GPIO)。SIM900A內嵌TCP/IP協議,擴展的TCP/IP AT命令讓用戶能夠容易的使用TCP/IP協議,而且在數據傳輸方面應用廣泛[7]。
1.3.1 電源部分
SIM900A采用VBAT為3.4~4.5 V的單電源供電。在一些情況下,信號傳輸的猝發會導致電壓跌落,這時電流損耗的峰值會達到2 A。因此,電源必須能提供足夠2 A的電流。給SIM900A供電,采用Micrel公司的LDO—MIC29302BT實現由5~4 V的降壓處理,如圖4所示。

圖4 SIM900A電源電路圖
1.3.2 SIM卡電路
SIM卡的接口電平由模塊內部的電壓穩壓器提供,正常電壓值為2.8 V或者1.8 V。復位后,所有引腳輸出低電平。6腳SIM卡電路如圖5所示。

圖5 6引腳SIM卡電路圖
1.3.3 LCD和鍵盤交互
控制模塊的操作結果可以通過LCD顯示出來,并通過鍵盤對期進行調試和設置。
系統程序流程軟件設計的重點在于單片機的編程。通過向SIM900A寫入不同的AT指令能完成多種功能,如網絡登錄、讀取SIM卡上電話號碼、發送接收消息、刪除消息等。在此重點討論中文短信的發送。
目前,發送短消息常用Text和PDU(Protocol Data Unit,協議數據單元)模式。使用Text模式收發短信代碼簡單,實現容易,但最大的缺點是不能收發中文短信;而PDU模式不僅支持中文短信,也能發送英文短信。PDU模式收發短信可以使用3種編碼:7-bit、8-bit和 UCS2編碼。7-bit編碼用于發送普通的ASCII字符,8-bit編碼通常用于發送數據消息,UCS2編碼用于發送Unicode字符。一般的PDU編碼由A,B,C,D,E,F,G,H,I,J,K,L,M這 13 項組成[8]。在GSM標準中,中文采用PDU編碼,故漢字需要在編碼之后才可以發送出去。
A:短信息中心地址長度,2位16進制數(1 Byte);B:短信息中心號碼類型,2位16進制數;C:短信息中心號碼,B+C的長度將由A中的數據決定;D:文件頭字節,2位16進制數;E:信息類型,2位16進制數;F:被叫號碼長度,2位16進制數;G:被叫號碼類型,2位16進制數,取值同B;H:被叫號碼,長度由F中的數據決定;I:協議標識,2位16進制數;J:數據編碼方案,2位16進制數;K:有效期,2位16進制數;L:用戶數據長度,2位16進制數;M:用戶數據,其長度由L中的數據決定。J中設定采用UCS2編碼,這里是中英文的Unicode字符。

圖6 算法框圖
本系統調試完成,在調試過程中運行穩定。設計成本和使用成本低,它可以廣泛應用于遠程安防監控、PLC數據采集和傳輸、智能電表、車載通信、無線POS、無線醫療、家庭防盜等無線傳輸和自動報警系統中。在即將到來的物聯網時代,無線通信系統的應用將起到關鍵性作用。
[1]夏華.無線通信模塊設計與物聯網應用開發[M].北京:電子工業出版社,2011.
[2]馬潮.嵌入式GSM短信息接口的軟硬件設計[J].單片機及嵌入式系統應用,2003(8):15-17.
[3]林粵偉,魏權利.基于GSM短通信的無線網絡環保監測系統的研制[J].微計算機信息,2005(1):71-72.
[4]NXP Semiconductors.LPC2377 - 78 Data Sheet[M/OL].(2010-04-10)[2012-02-01]http://www.cn.nxp.com.
[5]曹尉青,韓冰.利用GSM短消息實現遠程監控[J].無線電工程,2002,32(10):21 -23.
[6]徐光憲,劉建輝,陳萬志.串行通信在監控系統中的應用研究[J].微計算機信息,2004,20(7):25 -27.
[7]SIM Technology.SIM900_HD_CN_V1.01[M/OL].(2010-04-13)[2012-02-01]http://www.sim.com/wm.
[8]李鴻.用單片機控制手機收發短信息[J].電子技術應用,2003(8):32-34.