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 機的串行接口電路的設計需特別注意。
圖1. 應用系統硬件框圖
2. 1. TC35 i的IGT電路的設計
對于TC35 i模塊的控制, IGT 信號非常的重要,只有正確的IGT信號才可以使TC35 i模塊正常的運行, 模塊工作時序如圖2所示。
圖2. TC35 i模塊工作時序
啟動電路由開漏極三極管和上電復位電路組成。模塊上電10m s后(電壓須大于3V ) , 為保證整個系統正常啟動, 要求在電源加電時GT 必須在保持大于100毫秒的低電平后再階躍到高電平。在電路板中是依靠RC電路來完成的且該信號下降沿時間小于lms。啟動后15腳的信號應保持高電平。電源通電后, + 5V電源通過電阻R 對C 充電, 使電容正極上的電壓慢慢上升, 大約經過100ms達到高電位使施密特觸發器翻轉、使系統被復位。電路設計如圖3所示。
圖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所示。
圖4. C8051F020與PC 機的串口電路
3. 系統軟件設計
軟件的編寫分為底層驅動程序和應用層程序。
為了方便軟件編程, 需要針對硬件編寫一些底層驅動程序。首先是串行口的驅動函數: 打開串口( OpenComm )、關閉串口( C loseComm )、讀串口數據( fteADComm)、寫串口數據(W riteComm) 等, 本系統中通過控件MSCCOMM 來完成。然后在這些串口函數的基礎上編寫TC35i的驅動函數。單片機通過串行口控制TC35i,控制方法采用標準的AT 命令集。在進行短消息的發送時, 還要對用戶數據按PDU 格式進行編碼, 函數分別為Encode和Decode,在此基礎之上再編寫應用層程序。這些底層的驅動函數將會使上層協議的編寫很方便, 更重要的是, 它提供了一個硬件抽象層。當底層硬件改動時, 只需要對底層的驅動函數改動, 而上層函數的代碼不變。
軟件層次結構如圖5所示。
圖5. 軟件層次結構圖
3. 1. 上位機軟件設計
上位機軟件是一個短信息通信的管理器, 運行在PC機上, 通過串口與單片機和TC35 i通信。上位機軟件由RS - 232串口參數設置、接收信息、發送信息、歷史記錄、發送命令等部分組成。上位機軟件用戶界面如圖6所示。
圖6. 上位機軟件用戶界面
( 1) 發送短信息程序流程。
對于SIM 卡中的短信息, 可以顯示其編號、類型、發送者號碼、信息正文和發送時間, 當發送短信息時應該先設置并檢查串口是否打開和TC35 i模塊是否正確連接, 還要判斷目的手機和短信息中心號碼位數是否正確, 之后再發送AT 命令, 發送短信息程序流程圖如圖7所示。
圖7. 發送短信息程序流程圖
( 2) 接收短信息程序流程。
若TC35 i接收到一條短信息, 將會發送一個提示信息, 串口*程序收到此提示信息, 就把短信息的內容顯示到文本框中, 短信息內容包括接收時間、發送時間、發送手機號、短信息正文。接收短信息程序流程圖如圖8所示。
圖8. 接收短信息程序流程圖
3. 2. 下位機軟件設計
下位機采用C ygna l公司的C8051F020單片機,它具有2 個串口UART0 和UART1, 設計時UART0連接PC 上位機(接收端)或數據采集系統(發送端) , UART1連接TC35 i模塊, 兩個串口都是雙向通道, 這樣單片機既可以控制TC35 i發送數據, 又可通過TC35 i接收數據, 數據傳輸流向如圖9所示。
圖9. 單片機數據傳輸流向圖
由于UART0的中斷優先級比UART1要高得多, 如果用查詢的方式先處理UART0的請求, 再處理UART1的請求, 比中斷方式更有效率, 并且程序設計更為簡單, 故本系統在單片機串口程序設計中采用了查詢方式。下位機軟件程序流程圖如圖10所示。
圖10. 下位機軟件程序流程圖
4. 結束語
本文圍繞基于嵌入式無線CPU 短信息通信終端設計這一熱點課題, 闡述了相應的GSM 無線終端的設計方案、開發方法和開發過程。實現了能收發短信的無線CPU 終端, 完成了IGT啟動電路以及單片機與TC35 i和PC 機的串行接口等硬件電路的設計。采用面向對象的設計方法完成了上位機軟件設計, 在單片機程序設計中, 用C51進行編程, 對兩個串口的讀寫采用輪詢方式, 由于篇幅有限程序代碼省略, 給出了程序設計流程圖。
在本終端平臺的基礎上, 對硬件和軟件進行適當的調整和擴充就能設計成各種應用系統。
評論
查看更多