<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于GPRS的嵌入式系統軟件的遠程在線(xiàn)升級

基于GPRS的嵌入式系統軟件的遠程在線(xiàn)升級

作者: 時(shí)間:2009-05-11 來(lái)源:網(wǎng)絡(luò ) 收藏

3 服務(wù)器端的設計
3.1 升級文件傳輸的數據格式
為了達到快速準確升級的目的,首先對原始的升級代碼(Intel Hex文件)進(jìn)行打包,然后加人相應的數據包ID號和校驗碼,并定義數據包長(cháng)度≤256個(gè)字節,以適應G:PRS通信方式對數據包長(cháng)度的要求,避免出現頻繁掉線(xiàn)和發(fā)送不出去的問(wèn)題。具體的數據包格式如下:數據包格式:PacklD+起始地址+長(cháng)度+數據+校驗碼;PackID:一個(gè)完整的數據包為一個(gè)記錄,下一個(gè)數據包的記錄號自動(dòng)加1;起始地址:燒寫(xiě)數據的FLASH首地址。即數據部分中包含的第一條數據的記錄地址+線(xiàn)性擴展地址;長(cháng)度:該包數據部分的字節數;數據:同一個(gè)擴展線(xiàn)性地址記錄內且地址連續的數據記錄的數據域。當讀到一個(gè)擴展線(xiàn)性地址記錄號后,將此擴展線(xiàn)性地址記錄號內的數據區域打包成256個(gè)字節之內的數據包,超過(guò)256個(gè)字節或讀到下一個(gè)擴展線(xiàn)性記錄號時(shí)則另起一個(gè)新的數據包;校驗碼:CRC循環(huán)冗余校驗碼。
3.2 服務(wù)器端主要程序流程
服務(wù)器端主要程序流程圖如圖4和圖5所示。服務(wù)器先把升級文件的路徑配置完畢,并將要升級的目標程序代碼按照第3.1節所示的數據包格式進(jìn)行打包。并對每個(gè)數據包進(jìn)行編號。

接著(zhù)如圖4所示,服務(wù)器發(fā)送升級指令,并通過(guò)網(wǎng)絡(luò )透明傳輸到終端。如果當前運行的用戶(hù)程序代碼在1區,則將2區升級數據發(fā)送給終端,否則將2區升級數據發(fā)送給終端。由于地形和環(huán)境因素的影響,網(wǎng)絡(luò )在遠程通信過(guò)程中可能出現阻塞或斷開(kāi)的情況。
如果服務(wù)器在一定的時(shí)間內沒(méi)有收到遠程終端的應答信號,則重發(fā),如果三次重發(fā)失敗則保存成功接收到的數據塊ID號和數據校驗碼,進(jìn)入斷點(diǎn)續傳。升級文件傳輸完畢則發(fā)送跳轉指令,使遠程終端執行新的程序代碼。
3.3 服務(wù)器端西己置表
服務(wù)器端升級配置表中重要字段的配置如下:
這些字段將服務(wù)器和遠程終端緊密地聯(lián)系起來(lái),使得編程思路更加清晰,Update ID標志了用戶(hù)程序目前所在存儲區;Update User Zone為升級做好文件配置準備工作,LastOrder為斷點(diǎn)續傳做好準備,保證整個(gè)程序的緊密性以及可靠性。

4 結 語(yǔ)
該方案采用應答機制、斷點(diǎn)續傳、CRC校驗等技術(shù),充分利用ARM芯片內部FLASH存儲器資源,通過(guò)網(wǎng)絡(luò ),實(shí)現對ARM終端的進(jìn)行遠程,解決了大型分布式監控遠程終端和維護問(wèn)題。該方案已經(jīng)成功地應用在南京航道局的航標自動(dòng)監測系統中,該系統有600多盞安裝有終端的航標燈,對該系統進(jìn)行僅耗時(shí)20 min,且一次性升級成功。實(shí)踐證明,該方案的實(shí)施可有效降低工程復雜度,縮短升級時(shí)間,節約升級、維護成本,同時(shí)具有升級成功率高和升級速度快的特點(diǎn)。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

存儲器相關(guān)文章:存儲器原理



上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>