基于uBASE-Ⅲ的短信通信程序開發(fā)設(shè)計

2013-08-30 14:10 來源:電子信息網(wǎng) 作者:鈴鐺

隨著嵌入式及通信技術(shù)的發(fā)展,移動手持設(shè)備出現(xiàn)在很多應(yīng)用場合,比如天然氣公司開始采用智能化的方式來管理用戶的用氣情況,如何在服務(wù)端和表具終端間進行通信,成為系統(tǒng)的主要考慮因素。本文對系統(tǒng)進行需求分析后,以移動手持設(shè)備進行小規(guī)模通信為出發(fā)點,提出使用短信通信的方式來解決這一問題的方法。這種方式不僅使通信質(zhì)量能夠得到保證,而且價格合理,易于操作員來管理和維護,是一種行之有效的通信方式。

1研究背景及系統(tǒng)框架

短信通信示意圖如圖1所示。PC機表示服務(wù)器端運行程序的平臺,是操作員對表具和手持設(shè)備操作的環(huán)境;表具表示天然氣表具,在里面配置了接收命令的固化程序;手持設(shè)備表示本論文研究的平臺,是短信通信程序運行環(huán)境的主要部分。三者之間均可進行通信,它們之間已經(jīng)有完整的命令幀格式,下面討論如何設(shè)計并實現(xiàn)這樣的通信子系統(tǒng),而不研究具體的命令幀格式,假定是在統(tǒng)一的幀格式下完成的。

50e8251a0fe53-thumb


現(xiàn)場操作員需要設(shè)備有與表具進行通信的功能,能夠測試表具的通信狀況。因此,需要解決的主要有以下幾個問題:圖1短信通信示意圖①選取合適的手持設(shè)備,能夠有運行短信通信程序的基本硬件配置(需要配備GPRS模塊)。

②選取合適的嵌入式操作系統(tǒng),保證程序的穩(wěn)定運行。

③如何進行有效的收發(fā)短信來完成通信功能,以測試表具的通信狀況。

④需要有對文件操作的支持,操作員是需要上傳和保存文件的。

嵌入式系統(tǒng)的開發(fā)既要實現(xiàn)程序的功能性,也要選取特定的硬件平臺,嵌入式系統(tǒng)是為了完成某一項或有限項功能,系統(tǒng)功能可以根據(jù)產(chǎn)品的設(shè)計要求進行裁剪、調(diào)整[1]。并具體闡述了選取硬件設(shè)備與完成程序的功能。

2系統(tǒng)軟硬件環(huán)境

2.1硬件平臺

NLS-PT850是新大陸公司的一款基于嵌入式處理器的智能手持設(shè)備,它的基本硬件配置為ARM7處理器、32位RISC、74MHz頻率以及標(biāo)準(zhǔn)手機鍵盤和掃描儀;內(nèi)存為8MRAM、2MNORFlash和32MNandFlash(可擴展至128M)。上面搭載uBASE-III嵌入式實時多任務(wù)操作系統(tǒng)。嵌入式硬件設(shè)備的考慮應(yīng)該完全滿足目標(biāo)系統(tǒng)的圖2手持設(shè)備硬件結(jié)構(gòu)框圖要求,在功能上很容易滿足,但是在性能上,尤其是在功耗上應(yīng)最適合系統(tǒng),而不是越充分越好。

1


手持設(shè)備硬件結(jié)構(gòu)框圖如圖2所示。

該手持設(shè)備配備了GPS模塊,具有SIM卡接口,存儲容量合適,程序下載方便,因此選取該設(shè)備來作為短信通信系統(tǒng)的硬件平臺。

2.2uBASE-III嵌入式操作系統(tǒng)

uBASE-III是一個嵌入式實時多任務(wù)操作系統(tǒng),主要有多任務(wù)內(nèi)核模塊、內(nèi)存管理模塊、文件系統(tǒng)、設(shè)備管理模塊、應(yīng)用程序管理模塊等[2]。uBASE-III之所以在很多嵌入式設(shè)備上廣泛使用,有一個很重要的原因是它提供了一個C++類庫“UFCL(ubaseFoundationClassLibrary)”。

另外,它還提供了大量的API,供程序員調(diào)用。這里選取該嵌入式操作系統(tǒng)的原因是它支持文件操作和短信通信。

文件系統(tǒng)用于文件操作,將程序中的相關(guān)數(shù)據(jù)以二進制文件的形式存放在Flash存儲器中。uBASE-III采用了zfile2.0文件系統(tǒng),zfile2.0是專為嵌入式系統(tǒng)設(shè)計的Flash文件系統(tǒng),常用的函數(shù)有:◆打開一個文件以便讀寫其內(nèi)容ZFILE*zfopen(constchar*filename,constchar*pmode);◆從當(dāng)前文件指針位置開始寫入size*count個字節(jié)的數(shù)據(jù)intzfwrite(constvoid*buf,intsize,intcount,ZFILE*stream);◆從當(dāng)前文件指針位置讀入size*count個字節(jié)intzfread(void*buf,intsize,intcount,ZFILE*stream);◆關(guān)閉打開的文件intzfclose(ZFILE*stream);uBASE-III系統(tǒng)對文件的支持相比其他環(huán)境也有一些不足之處,在嵌入式設(shè)備上使用文件操作有很多的限制,比如uBase-III的文件系統(tǒng)僅有單層目錄結(jié)構(gòu),即不能創(chuàng)建子目錄、文件系統(tǒng)API,不區(qū)分文本模式和二進制模式的概念,都當(dāng)作是二進制模式。

1 2 > 
uBASE-Ⅲ 短信通信

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門