在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 手機與無線通信 > 設計應用 > 基于GPRS的嵌入式系統(tǒng)軟件的遠程在線升級

      基于GPRS的嵌入式系統(tǒng)軟件的遠程在線升級

      作者: 時間:2009-05-11 來源:網(wǎng)絡 收藏
      0 引 言
      隨著電子技術、計算機技術和通信技術的迅猛發(fā)展,已經廣泛應用于工業(yè)、軍事、通信、信息家電等領域,但是面對新技術的不斷涌現(xiàn)和對功能、性能以及規(guī)模要求的不斷提高,開發(fā)者必須能夠針對客戶的需求及時對進行升級或維護,以延長系統(tǒng)使用周期,改善系統(tǒng)性能,增強系統(tǒng)適應性。
      傳統(tǒng)的系統(tǒng)升級方式通常由維護人員到達設備現(xiàn)場,開箱重寫或者更換FLASH存儲部件,當設備數(shù)目龐大并且分布范圍廣泛時,這種升級維護方式的工作量將非常大,而且耗費的時間長、成本高。近年來通過以太網(wǎng)和在FLASH上建立TFFS文件系統(tǒng)的方法,能很好地解決批量升級的問題。但對于野外偏遠地區(qū)或海上等有線網(wǎng)絡無法到達的地方,此方法也難以實現(xiàn)。
      在此提出系統(tǒng)方案,利用網(wǎng)絡無需現(xiàn)場布線和“實時在線”、“按量計費”、“快捷登錄”、“高速傳輸”的特點,只要終端在移動公網(wǎng)覆蓋的范圍內,均可實現(xiàn)升級數(shù)據(jù)的傳輸;為了克服無線網(wǎng)絡相對有線網(wǎng)絡因地形或環(huán)境等因素造成誤碼或掉線的不足,采用應答機制與斷點續(xù)傳技術,確保數(shù)據(jù)傳輸?shù)臏蚀_性和可靠性;通過對嵌入式芯片內部FLASH存儲器的存儲空間進行劃分和升級文件傳輸?shù)臄?shù)據(jù)格式進行定義,再利用IAP技術實現(xiàn)系統(tǒng),較好地解決了數(shù)量龐大并且分布范圍較廣的設備或維護的問題。

      1 系統(tǒng)結構
      系統(tǒng)結構如圖1所示,由服務器和遠程終端組成,其中遠程終端包括ARM內核的嵌入式控制芯片(以下簡稱ARM芯片)和 Modem模塊,兩者之間通過RS 232總線連接;服務器與遠程終端通過GPRS進行通信。用戶需要升級遠程終端時,首先將服務器端的升級標志位置1,通過GPRS將升級標志位傳給遠程終端,遠程終端上電后將自動檢測升級標志位,若標志位為1表示需要升級,否則不升級。然后,服務器將升級文件通過GPRS透明的下載到遠程終端,實現(xiàn)數(shù)據(jù)的傳輸及更新,從而達到遠程終端的嵌入式系統(tǒng)的在線升級的目的。

      本文引用地址:http://www.biyoush.com/article/158058.htm

      2 遠程終端軟件升級的關鍵技術
      2.1 FLASH存儲器編程

      遠程終端的升級主要是對ARM芯片內部FLASH存儲器的數(shù)據(jù)進行擦除及下載,目前很多ARM芯片支持多種方式對FLASH進行編程,ARM芯片內部FLAsH存儲器的編程有JTAG,ISP和IAP三種方式:JTAG編程主要用于產品開發(fā)期的調試;ISP需要提供一定的硬件資源和中止應用軟件的運行,適用于便攜式設備的升級;IAP與ISP非常相似.主要區(qū)別是IAP允許在應用程序正常運行的情況下,對FLASH存儲器中另外一段程序進行讀/寫操作,甚至可以控制對某段、某頁的讀/寫操作,為數(shù)據(jù)存儲和固件的自動升級帶來了極大的靈活性。該方案通過GPRS網(wǎng)絡傳輸升級文件的程序代碼,利用ARM內部的FLASH存儲器及其IAP編程,實現(xiàn)終端的嵌入式系統(tǒng)軟件的遠程無線在線升級。有關IAP的命令碼、狀態(tài)碼和命令詳解以及IAP功能的詳細應用見參考文獻。
      2.2 遠程終端的程序設計
      為了在線升級,將ARM芯片內部FLASH存儲器按圖2所示劃分為啟動區(qū)、用戶代碼跳轉區(qū)、用戶代碼1區(qū)和用戶代碼2區(qū)。其中啟動區(qū)用于存放系統(tǒng)初始化和啟動代碼,用戶代碼跳轉區(qū)用于存放跳轉到相應用戶代碼區(qū)的指令.用戶代碼1區(qū)和用戶代碼2區(qū)用于交替存放當前終端正在執(zhí)行的用戶代碼和升級的用戶代碼。若當前終端執(zhí)行的用戶程序存放在1區(qū),則將接收到的升級程序存放到2區(qū);待升級程序接收結束后,更改用戶代碼跳轉區(qū)的指令,使其指向升級程序,即用戶代碼2區(qū);此后用戶代碼2區(qū)的程序成為當前終端指向的用戶程序,而用戶代碼1區(qū)則用于下次升級代碼的存放區(qū)。
      遠程終端上電后首先進入啟動區(qū)進行系統(tǒng)的初始化;接著終端從片外的E2PROM中讀取升級配置,包括升級標志位、已接收到的最后一個數(shù)據(jù)包的ID等。若終端處于升級狀態(tài),則如圖3所示,向服務器發(fā)所要升級數(shù)據(jù)的指令,而且指令中將包含終端上次已接收到的最后一個數(shù)據(jù)包的ID,這樣可以避免已接收的數(shù)據(jù)包的重復發(fā)送,并實現(xiàn)續(xù)傳的功能。終端從GPRS網(wǎng)絡接收數(shù)據(jù)包后對數(shù)據(jù)包進行解析和校驗判斷,并與服務器形成一問一答的應答機制。FLASH中進行數(shù)據(jù)編程的最小單位是頁(512個字節(jié)),當接收到的升級數(shù)據(jù)達到1頁后.通過IAP進行編程。如果當前運行的用戶程序代碼在1區(qū),則把升級數(shù)據(jù)保存到2區(qū),否則保存到1區(qū)。編程成功后,將最后一條數(shù)據(jù)包的ID保存到E2PROM中。所有升級數(shù)據(jù)發(fā)送結束并編程成功后,通過IAP修改用戶代碼跳轉區(qū)的指令,使遠程終端運行新的升級代碼。

      linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

      存儲器相關文章:存儲器原理



      上一頁 1 2 下一頁

      評論


      相關推薦

      技術專區(qū)

      關閉