1.引言
本文利用支持語音、短消息SMS ( ShortM es.sage Service)、數據通信、傳真等業務的嵌入式無線CPU, 結合已有的單片機系統通過RS- 232接口連接嵌入式無線CPU, 從而利用GSM網絡實現數據的無線傳輸。嵌入式無線CPU 在短信息方面的應用具有永遠在線、不需撥號、價格便宜、覆蓋范圍廣等特點, 特別適用于需頻繁傳送小流量數據的應用, 實現無線數據的雙向傳送。對軟件和硬件加以改動還可以實現數據采集系統、GPS /GSM ( SMS)移動車輛監控定位系統、移動POS機、移動收費系統、移動性數據和Internet接入、機房監控、遠程維護系統、移動性數據查詢證券交易和信息查詢系統、無線遠程檢測和控制等。
2. 系統硬件設計
本設計選用的是西門子TC35i嵌入式無線CPU。TC35i是西門子為適應各個專業領域對無線數據傳輸、語音傳輸及可開發性的需求推出的基于GSM 900移動通信網絡系統的OEM 模塊, TC35 i與GSM 2 /2+ 兼容、雙頻( GSM900 /GSM1800) , RS232數據口、符合ETS I標準GSM07. 07和GSM07. 05 、提供標準的AT 命令接口。MCU 采用CygnalC8051F020單片機。
基于TC35i嵌入式無線CPU 應用系統硬件的設計包括TC35 i的IGT電路、穩壓電源電路、SYNC /S IM 卡指示燈電路、C8051F020 與TC35 i相連的串行口電路、C8051F020與PC 機的串行接口等幾部分的設計, 應用系統硬件框圖如圖1 所示。其中TC35 i的IGT電路和C8051F020與PC 機的串行接口電路的設計需特別注意。
![](/article/UploadPic/2011-1/201111010205197862.jpg)
圖1. 應用系統硬件框圖
2. 1. TC35 i的IGT電路的設計
對于TC35 i模塊的控制, IGT 信號非常的重要,只有正確的IGT信號才可以使TC35 i模塊正常的運行, 模塊工作時序如圖2所示。
![TC35 i模塊工作時序](/article/UploadPic/2011-1/2011110102053943.gif)
圖2. TC35 i模塊工作時序
啟動電路由開漏極三極管和上電復位電路組成。模塊上電10m s后(電壓須大于3V ) , 為保證整個系統正常啟動, 要求在電源加電時GT 必須在保持大于100毫秒的低電平后再階躍到高電平。在電路板中是依靠RC電路來完成的且該信號下降沿時間小于lms。啟動后15腳的信號應保持高電平。電源通電后, + 5V電源通過電阻R 對C 充電, 使電容正極上的電壓慢慢上升, 大約經過100ms達到高電位使施密特觸發器翻轉、使系統被復位。電路設計如圖3所示。
![TC35i的IGT電路](/article/UploadPic/2011-1/2011110102054153.gif)
圖3. TC35i的IGT電路
2. 2. C8051F020與PC 機的串口電路的設計
串行接口E IA - RS- 232C 標準對電器特性、邏輯電平和各種信號線功能都作了規定, RS- 232- C采用負邏輯規定邏輯電平。RS- 232C 不能和單片機的TTL電平( TTL 以高低電平表示邏輯狀態)直接相連, 否則將使TTL 電路燒壞。本設計中C8051F020與PC 機的串行接口數據通信電路以SP3223E 芯片為核心, 實現電平轉換及串口通信功能。SP3223E 芯片供電電壓為3~ 5. 5V , 符合TIA /E IA - 232- F和ITUV. 28 /V. 24 標準。兼容5V 邏輯輸入, 內含2路接收、2路發送串行通信接口, 數據傳輸速率可達240 kbit/ s。具有低功耗、高數據速率、增強型ESD保護等特性。增強型ESD結構為所有發送器輸出和接收器輸入提供保護, 可承受?
15kV IEC 1000- 4- 2氣隙放電、? 8kV IEC 1000-4- 2接觸放電和? 15kV 人體放電模式。芯片的最大特點是, 在串行口無數據輸入的情況下, 可以靈活的進行電源管理, 即當ONLINE 為低電平、SHUT.
DOWN 為高電平時, ON - LINE 功能有效。在正常運行模式下, 若芯片在接收引腳沒有檢測到有效信號, 將自動進入SHUTDOWN 模式, 此時耗電luA。
在ON - LINE 功能有效時, 如果檢測到接收或發送引腳有信號輸入, 該芯片自動被激活, 轉入正常工作狀態。電路設計如圖4所示。
![C8051F020與PC 機的串口電路](/article/UploadPic/2011-1/2011110102054686.gif)
圖4. C8051F020與PC 機的串口電路
3. 系統軟件設計
軟件的編寫分為底層驅動程序和應用層程序。
為了方便軟件編程, 需要針對硬件編寫一些底層驅動程序。首先是串行口的驅動函數: 打開串口( OpenComm )、關閉串口( C loseComm )、讀串口數據( fteADComm)、寫串口數據(W riteComm) 等, 本系統中通過控件MSCCOMM 來完成。然后在這些串口函數的基礎上編寫TC35i的驅動函數。單片機通過串行口控制TC35i,控制方法采用標準的AT 命令集。在進行短消息的發送時, 還要對用戶數據按PDU 格式進行編碼, 函數分別為Encode和Decode,在此基礎之上再編寫應用層程序。這些底層的驅動函數將會使上層協議的編寫很方便, 更重要的是, 它提供了一個硬件抽象層。當底層硬件改動時, 只需要對底層的驅動函數改動, 而上層函數的代碼不變。
軟件層次結構如圖5所示。
![軟件層次結構圖](/article/UploadPic/2011-1/2011110102054478.gif)
圖5. 軟件層次結構圖
3. 1. 上位機軟件設計
上位機軟件是一個短信息通信的管理器, 運行在PC機上, 通過串口與單片機和TC35 i通信。上位機軟件由RS - 232串口參數設置、接收信息、發送信息、歷史記錄、發送命令等部分組成。上位機軟件用戶界面如圖6所示。
![上位機軟件用戶界面](/article/UploadPic/2011-1/2011110102054928.gif)
圖6. 上位機軟件用戶界面
( 1) 發送短信息程序流程。
對于SIM 卡中的短信息, 可以顯示其編號、類型、發送者號碼、信息正文和發送時間, 當發送短信息時應該先設置并檢查串口是否打開和TC35 i模塊是否正確連接, 還要判斷目的手機和短信息中心號碼位數是否正確, 之后再發送AT 命令, 發送短信息程序流程圖如圖7所示。
![發送短信息程序流程圖](/article/UploadPic/2011-1/2011110102054600.gif)
圖7. 發送短信息程序流程圖
( 2) 接收短信息程序流程。
若TC35 i接收到一條短信息, 將會發送一個提示信息, 串口*程序收到此提示信息, 就把短信息的內容顯示到文本框中, 短信息內容包括接收時間、發送時間、發送手機號、短信息正文。接收短信息程序流程圖如圖8所示。
![接收短信息程序流程圖](/article/UploadPic/2011-1/2011110102054614.gif)
圖8. 接收短信息程序流程圖
3. 2. 下位機軟件設計
下位機采用C ygna l公司的C8051F020單片機,它具有2 個串口UART0 和UART1, 設計時UART0連接PC 上位機(接收端)或數據采集系統(發送端) , UART1連接TC35 i模塊, 兩個串口都是雙向通道, 這樣單片機既可以控制TC35 i發送數據, 又可通過TC35 i接收數據, 數據傳輸流向如圖9所示。
![單片機數據傳輸流向圖](/article/UploadPic/2011-1/2011110102054568.gif)
圖9. 單片機數據傳輸流向圖
由于UART0的中斷優先級比UART1要高得多, 如果用查詢的方式先處理UART0的請求, 再處理UART1的請求, 比中斷方式更有效率, 并且程序設計更為簡單, 故本系統在單片機串口程序設計中采用了查詢方式。下位機軟件程序流程圖如圖10所示。
![下位機軟件程序流程圖](/article/UploadPic/2011-1/2011110102054887.gif)
圖10. 下位機軟件程序流程圖
4. 結束語
本文圍繞基于嵌入式無線CPU 短信息通信終端設計這一熱點課題, 闡述了相應的GSM 無線終端的設計方案、開發方法和開發過程。實現了能收發短信的無線CPU 終端, 完成了IGT啟動電路以及單片機與TC35 i和PC 機的串行接口等硬件電路的設計。采用面向對象的設計方法完成了上位機軟件設計, 在單片機程序設計中, 用C51進行編程, 對兩個串口的讀寫采用輪詢方式, 由于篇幅有限程序代碼省略, 給出了程序設計流程圖。
在本終端平臺的基礎上, 對硬件和軟件進行適當的調整和擴充就能設計成各種應用系統。
評論