嵌入式系統(tǒng)中運(yùn)行參數(shù)修改的設(shè)計(jì)和實(shí)現(xiàn)
出處:譚?!≈R洪茂 周鑫琴 發(fā)布于:2011-09-02 13:19:24
1、引言
以太網(wǎng)是當(dāng)今現(xiàn)有局域網(wǎng)采用的通用的通信協(xié)議標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)定義了在局域網(wǎng)(LAN)中采用的電纜類型和信號(hào)處理方法。以太網(wǎng)在互聯(lián)設(shè)備之間以10~100Mbps的速率傳送信息包,雙絞線電纜10 Base T以太網(wǎng)由于其低成本、高可靠性以及10Mbps的速率而成為應(yīng)用為廣泛的以太網(wǎng)技術(shù)。直擴(kuò)的無線以太網(wǎng)可達(dá)11Mbps,許多制造供應(yīng)商提供的產(chǎn)品都能采用通用的軟件協(xié)議進(jìn)行通信,開放性。
近來發(fā)展起來的方法是利用嵌入式Web Server和TCP/IP協(xié)議,技術(shù)人員可以通過CGI網(wǎng)頁(yè)對(duì)嵌入式系統(tǒng)的參數(shù)進(jìn)行瀏覽和修改,這種方法雖然有著良好的人機(jī)界面,使用起來也非常方便,但嵌入式Web Server 需要處理器有較強(qiáng)的數(shù)據(jù)處理能力,一般的MCU并不支持。
WebServer中文名稱叫網(wǎng)頁(yè)服務(wù)器或web服務(wù)器。WEB服務(wù)器也稱為WWW(WORLDWIDEWEB)服務(wù)器,主要功能是提供網(wǎng)上信息瀏覽服務(wù)。Web服務(wù)器傳送(serves)頁(yè)面使瀏覽器可以瀏覽,然而應(yīng)用程序服務(wù)器提供的是客戶端應(yīng)用程序可以調(diào)用(call)的方法(methods)。確切一點(diǎn),你可以說:Web服務(wù)器專門處理HTTP請(qǐng)求(request),但是應(yīng)用程序服務(wù)器是通過很多協(xié)議來為應(yīng)用程序提供(serves)商業(yè)邏輯(businesslogic)。
在大量實(shí)踐的基礎(chǔ)上,本文詳細(xì)闡述了嵌入式系統(tǒng)采用UDP協(xié)議來對(duì)參數(shù)進(jìn)行配置修改的技術(shù),較好的解決了嵌入式系統(tǒng)中參數(shù)修改問題。
2、系統(tǒng)原理
嵌入式系統(tǒng)是"控制、監(jiān)視或者輔助裝置、機(jī)器和設(shè)備運(yùn)行的裝置"(devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。從中可以看出嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。目前國(guó)內(nèi)一個(gè)普遍被認(rèn)同的定義是:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
嵌入式系統(tǒng)一般由PC管理機(jī)和嵌入式終端組成。PC管理機(jī)主要對(duì)數(shù)據(jù)進(jìn)行讀寫和管理。終端負(fù)責(zé)數(shù)據(jù)的采樣并把數(shù)據(jù)傳給PC機(jī)。系統(tǒng)結(jié)構(gòu)如圖1所示,終端和主機(jī)通過以太網(wǎng)相連,每個(gè)終端都有自己的機(jī)號(hào)和IP地址。因此,PC機(jī)不僅要對(duì)這些設(shè)備進(jìn)行管理,還要進(jìn)行數(shù)據(jù)通信。當(dāng)終端收到PC機(jī)的命令和數(shù)據(jù)后,把數(shù)據(jù)存放在EEPROM的存儲(chǔ)器里,然后更新系統(tǒng)參數(shù)。本文主要闡述系統(tǒng)的數(shù)據(jù)通信部分的具體實(shí)現(xiàn),包括上位機(jī)和下位機(jī)的實(shí)現(xiàn)過程。
3、應(yīng)用協(xié)議
3.1 UDP用戶數(shù)據(jù)報(bào)協(xié)議
UDP是UserDatagramProtocol的簡(jiǎn)稱,中文名是用戶數(shù)據(jù)包協(xié)議,是OSI參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡(jiǎn)單不可靠信息傳送服務(wù)。它是IETFRFC768是UDP的正式規(guī)范。UDP是ISO參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡(jiǎn)單不可靠信息傳送服務(wù)。UDP協(xié)議基本上是IP協(xié)議與上層協(xié)議的接口。UDP協(xié)議適用端口分別運(yùn)行在同一臺(tái)設(shè)備上的多個(gè)應(yīng)用程序。UDP數(shù)據(jù)報(bào)格式如圖2所示。
3.2應(yīng)用數(shù)據(jù)幀封裝格式
應(yīng)用數(shù)據(jù)是以幀的格式封裝在UDP數(shù)據(jù)里面的,它的幀格式是:幀開頭(1字節(jié))+數(shù)據(jù)長(zhǎng)度(1字節(jié))+機(jī)號(hào)(2字節(jié))+命令(1字節(jié))+數(shù)據(jù)+效驗(yàn)(1字節(jié))+幀結(jié)尾(1字節(jié))。幀以0x02開頭,數(shù)據(jù)長(zhǎng)度表示機(jī)號(hào)、命令和數(shù)據(jù)總的長(zhǎng)度字節(jié),效驗(yàn)是對(duì)前面數(shù)據(jù)和效驗(yàn),幀結(jié)尾是0x03.

4、程序?qū)崿F(xiàn)
4.1上位機(jī)程序
上位機(jī)采用VC6.0進(jìn)行程序設(shè)計(jì),網(wǎng)絡(luò)通信部分主要由套接字Socket完成,在UDP應(yīng)用編程中,一般調(diào)用Socket的RecvFrom() 和SendTo()兩個(gè)主要函數(shù)即可完成數(shù)據(jù)通信,其工作流程如圖3所示。

下面代碼是解析下位機(jī)所返回信息。
iRecv =Socket.ReceiveFrom(m_temp,sizeof(m_temp),
m_nip,uPort,0);
if (iRecv)
{ if(m_temp[4]==0x3e)
MessageBox("設(shè)置成功");
else if(m_temp[4]==0x3f)
MessageBox("設(shè)置失敗");
else
MessageBox("通信錯(cuò)誤");
iRecv=0;
}
4.2下位機(jī)程序
終端正確的接收完一幀數(shù)據(jù)后,根據(jù)命令來處理相應(yīng)的事務(wù)。系統(tǒng)提供基本的5個(gè)命令:0x50(設(shè)置系統(tǒng)參數(shù)),0x51(讀取配置參數(shù)),0x43 (初始化EEPROM,0x3e (正確操作應(yīng)答),0x3f(不正確操作應(yīng)答),工作流如圖4所示。

5、在"家校通"中的具體應(yīng)用
"家校通"是為實(shí)現(xiàn)學(xué)校、家庭和老師之間有著快捷、實(shí)時(shí)溝通而研發(fā)的先進(jìn)教育網(wǎng)絡(luò)互動(dòng)平臺(tái),是集計(jì)算機(jī)技術(shù)、互聯(lián)網(wǎng)技術(shù)、無線通訊技術(shù)和考勤信息化技術(shù)于一體的現(xiàn)代信息化管理系統(tǒng)。利用這一平臺(tái),家、校雙方能夠及時(shí)方便地傳遞信息,有效解決家校之間溝通難的矛盾與問題,使學(xué)生在成長(zhǎng)過程中得到隨時(shí)隨地的關(guān)愛服務(wù),給學(xué)校、班主任老師提供方便、快捷、高效率的溝通渠道,交流起來無拘無束,暢所欲言,充分實(shí)現(xiàn)了社會(huì)、學(xué)校、家庭和諧共育的教育格局。
近年來,智能IC卡得到了廣泛的應(yīng)用,除了應(yīng)用于信用卡、收費(fèi)卡、保險(xiǎn)卡、密鑰卡等外,在學(xué)校也得到廣泛使用,像校園"一卡通","家校通"到處隨處可見。"家校通"是利用現(xiàn)代信息技術(shù)實(shí)現(xiàn)家庭與學(xué)校快捷、實(shí)時(shí)溝通的教育網(wǎng)絡(luò)平臺(tái),是一套可以有效解決老師和家長(zhǎng)之間溝通,幫助孩子健康成長(zhǎng)的、集先進(jìn)的計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)于一體的信息交流系統(tǒng)。它可以讓家長(zhǎng)每天都能了解到自己孩子在學(xué)校的情況,也可以讓家長(zhǎng)隨時(shí)隨地的向老師提出建議或反映孩子在家里的表現(xiàn)。系統(tǒng)硬件主要采用網(wǎng)絡(luò)型讀卡機(jī),它主要由主控MCU89C52、讀卡模塊RC500、8位LED和網(wǎng)絡(luò)通組成。它不能單獨(dú)工作,必須聯(lián)網(wǎng)與PC機(jī)進(jìn)行通信,圖5是"家校通"典型拓?fù)鋱D。

5.1 "家校通"基本工作原理
網(wǎng)絡(luò)型讀卡器是由網(wǎng)絡(luò)通和讀卡器組成,網(wǎng)絡(luò)通有自己的IP地址,讀卡器有自己的機(jī)號(hào),通信服務(wù)器也有自己的IP地址和機(jī)號(hào)。
當(dāng)讀卡器有數(shù)據(jù)時(shí),會(huì)通過網(wǎng)絡(luò)通送到嵌入通信服務(wù)器,嵌入通信服務(wù)器收到數(shù)據(jù)后,提取網(wǎng)絡(luò)通的地址和讀卡器的機(jī)號(hào),做成一個(gè)動(dòng)態(tài)的IP地址和機(jī)號(hào)對(duì)應(yīng)表。當(dāng)PC機(jī)有數(shù)據(jù)給通信服務(wù)器時(shí),提取數(shù)據(jù)中的機(jī)號(hào),查找IP地址和機(jī)號(hào)對(duì)應(yīng)表,然后按照查到IP地址發(fā)送數(shù)據(jù)給讀卡器,這樣完成了讀卡器和PC機(jī)之間的通信。
5.2 "家校通"參數(shù)修改及其實(shí)現(xiàn)
為確保"家校通"系統(tǒng)的正常運(yùn)行,系統(tǒng)要維護(hù)每個(gè)網(wǎng)絡(luò)型讀卡機(jī)的網(wǎng)絡(luò)參數(shù)(IP地址)和黑名單,這些參數(shù)的維護(hù)工作既煩瑣又必不可少,應(yīng)用我們的研究成果,這些參數(shù)可以通過我們的研究成果快速方便進(jìn)行。
圖6所示的軟件可以通過網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng)的參數(shù)在線更新,包括IP地址的設(shè)置和黑名單的更新,使得系統(tǒng)維護(hù)更方便靈活。

6、結(jié)論
本文作者創(chuàng)新點(diǎn)采用UDP協(xié)議來對(duì)嵌入式系統(tǒng)中參數(shù)進(jìn)行配置修改,在現(xiàn)實(shí)當(dāng)中具有很大的意義,為嵌入式系統(tǒng)維護(hù)人員提供良好的應(yīng)用程序接口,體現(xiàn)了系統(tǒng)的人性化程序設(shè)計(jì)和以人為本的思想。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開發(fā)實(shí)踐指南2026/1/6 10:40:19
- 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計(jì)實(shí)踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時(shí)代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識(shí)2025/7/14 16:59:04









