<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 低壓電力載波抄表終端遠(yuǎn)程升級系統(tǒng)開發(fā)

          低壓電力載波抄表終端遠(yuǎn)程升級系統(tǒng)開發(fā)

          作者: 時間:2009-11-12 來源:網(wǎng)絡(luò) 收藏


          3 LPC2214的IAP功能及FLASH Boot裝載程序

          LPC2214的FLASH存儲器包含256 KBFLASH器件的17個扇區(qū)。FLASH存儲器從地址0開始并向上增加。Boot裝載程序控制復(fù)位后的初始化操作,并提供實現(xiàn)FLASH編程的方法。Boot裝載器可啟動對空片的編程、已編程器件的擦除和再編程以及在運行中由應(yīng)用程序?qū)LASH存儲器進(jìn)行編程。
          對于IAP來說,應(yīng)當(dāng)通過寄存器r0中的字指針指向存儲器(RAM)包含的命令代碼和參數(shù),以調(diào)用IAP程序。IAP的命令結(jié)果返回到寄存器r1所指向的返回表。用戶可通過傳遞寄存器r0和r1中的相同指針重用命令表來得到結(jié)果。參數(shù)表應(yīng)當(dāng)大到足夠保存所有的結(jié)果,以防結(jié)果的數(shù)目大于參數(shù)的數(shù)目。參數(shù)和結(jié)果的數(shù)目根據(jù)IAP命令而有所不同。參數(shù)的最大數(shù)目為5,由“將RAM內(nèi)容復(fù)制到FLASH”命令傳遞;結(jié)果的最大數(shù)目為2,由“扇區(qū)查空”命令返回。命令處理程序在接收到一個未定義的命令時發(fā)送狀態(tài)代碼IN-VALID_COMMAND。IAP程序是thumb代碼,位于地址0x7FFFFFF0。

          本文引用地址:http://www.ex-cimer.com/article/152286.htm

          4 軟件設(shè)計
          首先,對SIM300模塊進(jìn)行初始化,然后連接服務(wù)器,接著通過POP3協(xié)議登錄郵件服務(wù)器,并下載新程序,主ARM將下載的程序進(jìn)行Base 64解碼,最后通過IAP將解碼后的程序?qū)懙紸RM的FLASH中,以完成的目的。詳細(xì)流程圖如圖2所示。由于遠(yuǎn)程升級需要抄表抄表主程序的配合,因此這里給出了遠(yuǎn)程升級相關(guān)的部分。在IAP寫FLASH的過程中,需要注意FLASH存儲器在寫或擦除操作過程中不可被訪問。執(zhí)行FLASH寫/擦除操作的IAP命令使用片內(nèi)RAM頂端的32個字節(jié)空間。用戶程序不應(yīng)使用該空間。IAP擦除FLASH的部分源碼如下:

          5 結(jié) 語
          針對各相關(guān)企業(yè)和公司需要大量的工程人員現(xiàn)場維護(hù)抄表的問題,提出基于POP3的遠(yuǎn)程升級系統(tǒng),該系統(tǒng)可以通過GPRS連接到遠(yuǎn)程的升級服務(wù)器,下載最新的程序,并對齊進(jìn)行Base64解碼,最后利用IAP將其寫于電力抄表中.實現(xiàn)低壓電力載波抄表終端遠(yuǎn)程升級功能。該系統(tǒng)解決了工程人員必須現(xiàn)場維護(hù)的問題,為企業(yè)和公司節(jié)省了人力、物力資源,并提高了效率。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();