1 系統(tǒng)設(shè)計
本系統(tǒng)主要是利用CDMA移動通信網(wǎng)絡(luò)的短信息業(yè)務(wù)完成數(shù)據(jù)的無線傳輸,免去了現(xiàn)場組網(wǎng)的初期建設(shè)費用以及日后的網(wǎng)絡(luò)維護費用。通過數(shù)據(jù)終端,將采集到的現(xiàn)場數(shù)據(jù)以短信息的形式發(fā)送到監(jiān)控中心,在監(jiān)控中心進行數(shù)據(jù)處理、存儲、并提供相應(yīng)的查詢、統(tǒng)計、報表功能。監(jiān)控中心也可以通過向數(shù)據(jù)終端發(fā)送短信息,設(shè)定監(jiān)控終端配置信息或控制命令,更新數(shù)據(jù)終端的實時數(shù)據(jù)。系統(tǒng)組成包括現(xiàn)場設(shè)備、采集器、數(shù)據(jù)終端、監(jiān)控中心。原理框圖如圖1所示。
2 數(shù)據(jù)終端的硬件設(shè)計
數(shù)據(jù)終端采用Cygnal C8051F020作為控制主芯片,該芯片具有集成度高、功耗低(供電電壓為2.7~3.6V,典型工作電流為12mA,并具有多種節(jié)電休眠和停機模式)、處理能力強(采用流水線結(jié)構(gòu),機器周期由標準的12個系統(tǒng)時鐘周期降為1個系統(tǒng)時鐘周期,峰值性能可達25MIPS)的特點,使其很適合應(yīng)用于需要高可靠性、低功耗的控制系統(tǒng)中。Cygnal C8051F為兼容:MCS-51內(nèi)核的單片機,內(nèi)置64kB FLASH程序存儲器和4352B數(shù)據(jù)RAM,具有2個雙全工的UART。正是利用這2個串口實現(xiàn)了單片機與手機模塊和PC機的同時通訊。數(shù)據(jù)終端硬件結(jié)構(gòu)框圖如圖2所示。
2.1 通信單元電路設(shè)計
通信單元采用CDMA無線模塊來實現(xiàn)。CDMA無線模塊作為終端的無線收發(fā)模塊,把單片機接收到的數(shù)據(jù)信息進行編碼后以短信息的格式發(fā)送出去。CDMA的無線模塊采用ZTEiT的MG801A模塊,MG801A-CDMA模塊是內(nèi)置軟件支持CDMA2000 1X REV0標準和GoTa協(xié)議的工業(yè)級應(yīng)用模塊,工作頻段為800MHz。能完成語音、數(shù)據(jù)、傳真、短信息服務(wù)以及多種附加業(yè)務(wù)的功能。具有容量大、輻射小、低功耗、體積小等特點。模塊通過80腳的插座與外圍電路進行接口,電路如圖3所示。該模塊的供電電壓為3.3~4.25V,典型值為3.8V。
2.1.1 開關(guān)機控制
有兩種方法可以使模塊開機,第一種方法是通過系統(tǒng)連接器上的ON/OFF引腳,第二種方法是使用外部充電器。
系統(tǒng)連接器上的第51引腳是ON/OFF引腳,在此引腳上加一瞬時低電平會使模塊開機,模塊關(guān)機是通過AT指令實現(xiàn)的,關(guān)機指令為AT+ZPWROFF。第二種方法是使用外部充電器為模塊供電,如果外部電壓同時加于V_MAIN(Pin 71,72,73,74,75)和VCHG(Pin 79)就會使模塊開機,當充電電源移走后,模塊會關(guān)機。
2.1.2通訊
MG801A模塊提供串行異步通訊接口UART(他與串口的數(shù)據(jù)通訊遵從RS232接口協(xié)議),因為單片機與模塊都是3V左右的供電電壓,都符合TTL電平標準,所以可以直接連接,實現(xiàn)通訊功能。
2.1.3 UIM卡
UIM卡是CDMA手機運用的一種智能卡。UIM卡提供個人認證信息,可以允許MS或手機連接網(wǎng)絡(luò)。UIM卡可以允許用戶撥打或接聽電話和收發(fā)短信息。UIM卡固定在卡座上,通過卡座的6個引腳與外部連接。MG801A模塊為了減少功耗為UIM提供了一個使能引腳,在此可以不用,使UIM卡一直處于工作狀態(tài)。
2.2 穩(wěn)壓電源電路
數(shù)據(jù)終端的工作電壓為5 V DC。另外,電源的指標不僅僅有電壓的要求,而且功率容限等指標都要滿足要求。故采用圖4的設(shè)計方案。在該系統(tǒng)中,開關(guān)電源芯片LM7805完成12V到5V的轉(zhuǎn)換,加兩個二極管起降壓保護的作用,為模塊供電。電源電路主要由LM7805和AS117—3.O這兩個三端穩(wěn)壓電源模塊構(gòu)成,電源模塊AS117—3.O接收LM7805輸入的5V電壓,輸出為整個單片機系統(tǒng)和UIM卡的3V供電電壓。電源的輸出基本不會受外部輸入變動的干 擾,而且有效地消除了電磁干擾。
2.3 單片機外圍電路
單片機采用Cygnal公司的帶雙串口的C8051F020,一方面實現(xiàn)了對無線模塊的初始化和控制,另一方面實現(xiàn)了與帶有標準RS232串口的通訊。需要說明的是要加電平轉(zhuǎn)換電路,把TTL電平轉(zhuǎn)化為RS232電平,在本設(shè)計中選用的是SP3223芯片。C8051F020單片機在功能、性能上比以往的傳統(tǒng)單片機有了很大的提高,但復(fù)位和時鐘電路和以前單片機沒有區(qū)別。增加了JTAG接口,能實現(xiàn)在線下載,在下調(diào)試功能,從而使整個開發(fā)過程簡單、可靠。
3 系統(tǒng)軟件設(shè)計與實現(xiàn)
系統(tǒng)軟件設(shè)計就在于單片機的編程,通過向MG801A模塊發(fā)送不同的AT指令來實現(xiàn)不同的功能,如讀取短信息的內(nèi)容,刪除短信息、列出模塊中還未讀的短信息等。下面主要介紹AT指令和雙串口CPU同時通訊的實現(xiàn)。
3.1 AT指令
AT(Attention)指令最初由Hayes公司推出,主要用于對調(diào)制解調(diào)器的控制,現(xiàn)在已演化為一種標準,所有移動模塊都支持AT指令。雖然不同廠家的手機模塊都參照GSM協(xié)議,但格式還是有所不同,開發(fā)過程中一定要認真參考廠家給的資料。同時在開發(fā)過程中發(fā)現(xiàn)指令的執(zhí)行過程需要單片機與手機交互應(yīng)答完成,每一次發(fā)送或接收的字節(jié)數(shù)有嚴格的規(guī)定,二者必須依據(jù)這些規(guī)定實現(xiàn)數(shù)據(jù)交換,否則,通信就是失敗的。筆者經(jīng)過對幾種手機模塊反復(fù)測試,總結(jié)出一些規(guī)律,以下是對幾個問題的說明:
所有AT指令的指令符號、常數(shù)、PDU數(shù)據(jù)包等都是以ASCⅡ編碼形式傳送的,比如“A”的ASCⅡ編碼為41H,“T”的ASCⅡ編碼為54H數(shù)字,“O”的ASCⅡ編碼為30H等。
單片機控制手機工作,如果要發(fā)送中文短信,使用的是GSM模塊必須短信息工作模式設(shè)置為PDU格式,即通過指令A(yù)T+CMGF=0完成。使用MG801A模塊必須設(shè)置為中文UNICODE碼格式,即通過AT+ZMSGL=6,4完成。
單片機向手機發(fā)送一條指令后,必須以回車符作為該條指令的結(jié)束,回車的ASCⅡ編碼為ODH,回車符表示該條指令結(jié)束,如果沒有這個回車符,手機將不識別這條指令。
當手機接收到一條完整的AT指令后,手機并不立即執(zhí)行這條指令,而是:先把剛才接收到的AT指令的全部ASCⅡ編碼序列全部反發(fā)送出來(含ODH);其次發(fā)送一個回車符和換行符的ASCⅡ編碼,即ODH和OAH;最后才執(zhí)行該條指令。
3.2 單片機雙串口同時通訊的實現(xiàn)
由于C8051F020單片機實現(xiàn)和上位機與手機模塊的同時通訊,所以采用一片具有雙串口的CPU,該CPU具有2個串口和2個串口中斷,串口1中斷處理與上位機的通訊,串口2中斷處理與手機模塊的通訊,串口1中斷設(shè)置為高優(yōu)先級中斷,每接收到或發(fā)送完1個字節(jié)都進人中斷處理,處理完畢立即退出中斷,通訊波特率都為115 200 b/s,1個起始位和1個停止位。
編程語言采用C51語言,盡量采用模塊化、結(jié)構(gòu)化、對象化編程,使串口通訊程序和其他程序之間、2個串口通訊程序之間相互獨立,以減少發(fā)生錯誤的機會。另外在串口通訊中,還要增加通訊超時處理機制,中斷處理中要注意數(shù)據(jù)和程序狀態(tài)的保護,完善出錯處理程序等。同時要解決時間沖突問題,硬件接收或發(fā)送一個字節(jié)的時間與軟件接收或發(fā)送一個字節(jié)的時間有很大的不同,這就為雙串口同時通訊提供了條件。其次要解決數(shù)據(jù)沖突問題,2個串口通訊分別使用各自的接收發(fā)送數(shù)據(jù)緩沖區(qū)和控制變量,以減少中斷保護數(shù)據(jù)量和防止數(shù)據(jù)沖突。當主程序、串口2中斷處理程序和其他中斷處理程序向存儲器(與上位機的通訊用存儲器)中寫數(shù)據(jù)時,需在盡量短的時間內(nèi)關(guān)閉串口1中斷,關(guān)閉中斷時間應(yīng)小于幾μs,防止其他程序數(shù)據(jù)沒有寫完之前串口1讀此數(shù)據(jù)。
4 結(jié)語
隨著通訊技術(shù)、微電子技術(shù)的進步和智能化建設(shè)的發(fā)展,越來越多的設(shè)備,如家電、電表、工業(yè)終端等,都有了聯(lián)網(wǎng)的需要,并且有大量的數(shù)據(jù)需要傳輸;而且在很多場合有線連接的方式已經(jīng)不能滿足人們的需要。無線接入以其方便、快捷和廉價的優(yōu)勢,彌補了有線方式的不足。覆蓋全國的CDMA網(wǎng)絡(luò)已經(jīng)成為一種可持續(xù)利用和開發(fā)的資源,因而在此基礎(chǔ)上利用CDMA的短信息業(yè)務(wù)開發(fā)出滿足需要的無線接入產(chǎn)品已成為可能。