freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

講述iap功能在實際使用過程中的應用方法以及相關(guān)解決方案-資料下載頁

2025-05-25 22:12本頁面
  

【正文】 被 4整除 向扇區(qū) 7寫入 512個字節(jié)的數(shù)據(jù),扇區(qū) 7可以作為一個 E2PROM來使用,如存儲一些系統(tǒng)的配置信息。 ? 函數(shù)主體 define DestAddr 0x00007000 int main (void) { __align(4) uint8 SendData[512]。 uint32 i。 for(i = 0。 i 512。 i++) { SendData[i] = i。 } SelSector(7, 7)。 EraseSector(7,7)。 SelSector(7, 7)。 RamToFlash(DestAddr, (uint32)SendData, 512)。 while(1)。 } 以字對齊定義變量區(qū) 扇區(qū) 7的起始地址 初始化變量區(qū)數(shù)據(jù) 選擇扇區(qū) 7 擦除扇區(qū) 7 選擇扇區(qū) 7 寫入數(shù)據(jù)到 Flash 編程后的 Flash區(qū)域 擦除后的 Flash區(qū)域 ?概述 ?Boot簡介 ?片內(nèi) Flash存儲系統(tǒng) ?數(shù)據(jù)存儲解決方案 ?在線升級解決方案 在線升級解決方案 ? 系統(tǒng)概述 “在線升級 ” 實際上是 Flash數(shù)據(jù)存儲的一個應用特例。系統(tǒng)開發(fā)完畢后,在應用過程中,如果需要增加部分功能,那么為了避免重新拆裝設(shè)備,可以借助“ 在線升級 ” 方式。 目前,在線升級是很多系統(tǒng)都必需的一個功能,對于 LPC2300來說,利用 IAP函數(shù)即可實現(xiàn)在線升級。用戶程序接收新的代碼,然后調(diào)用 IAP函數(shù)將新的代碼編程到 Flash扇區(qū)中,實現(xiàn)在線升級。 系統(tǒng)通過串口接收升級代碼,然后調(diào)用 IAP函數(shù)實現(xiàn)在線升級。為了實現(xiàn)在線升級,本系統(tǒng)將芯片的片內(nèi) Flash重新分區(qū): ?Boot代碼區(qū):又叫固件區(qū),存放系統(tǒng)的BootLoader,可完成代碼升級,首地址位于0x0000 0000; LOW區(qū)和 HIGH區(qū):用戶代碼分為兩個區(qū), LOW區(qū)和 HIGH區(qū),當程序位于 LOW區(qū)時,可以對HIGH區(qū)進行升級。反之,如果程序位于 HIGH區(qū),可以對 LOW區(qū)進行升級。 LOW區(qū)的首地址為:0x0000 8000, HIGH區(qū)的首地址為: 0x0001 0000,每個用戶代碼區(qū)的容量為 32kB; 程序標志區(qū):標記當前用戶程序運行的區(qū),程序標志區(qū)的首地址為: 0x0000 4000。對于這個區(qū)間,僅僅使用了前 4個字節(jié),用來保存當前用戶代碼區(qū)的首地址。如程序標志= 0x0000 8000,則當前程序運行在 LOW區(qū);如程序標志 = 0x0001 00,則當前程序運行在 HIGH區(qū);如程序標志為其它值,則當前程序運行在固件區(qū)域。 ARM7 處理器核 RAM FLASH UART0 串口 ? 升級 HIGH區(qū)代碼 通過 IAP對Flash編程 處理器核HIGH區(qū) 0x0000 0000 0x0000 4000 0x0000 8000 0x0001 0000 LOW區(qū) 程序標志區(qū) 用戶 Boot區(qū) 0x0001 0000 0000 8000程序運行在LOW區(qū) 于低電平 串口接收升級代碼 修改程序標志,標識程序運行在高區(qū) CPU運行HIGH區(qū)的用戶代碼 處理器核此處為用戶編寫的Boot代碼,有別于由芯片廠商固化在片內(nèi)的 Boot代碼。 復位后 CPU運行用戶 Boot代碼 ? 軟件設(shè)計 初始化串口; 根據(jù)程序標志發(fā)送提示信息; 清空數(shù)據(jù)緩沖區(qū); 系統(tǒng)復位 引腳 ? 用戶代碼運行在 HIGH區(qū)? 接收串口數(shù)據(jù) 用戶代碼運行在 LOW區(qū)? 更新用戶程序標志區(qū) 根據(jù)用戶程序標志運行程序 將新的用戶代碼編程到 LOW區(qū) 將新的用戶代碼編程到 HIGH區(qū) Y N N Y Y N ? “ 在線升級 ” 模板 為了實現(xiàn)在線升級,我們專門設(shè)計了一套新的模板。該模板具有兩個編譯選項: HIGH和LOW。 ?當需要升級 HIGH區(qū)時,就使用 HIGH選項進行編譯,用戶代碼位于 HIGH區(qū); ?當需要升級 LOW區(qū)時,就使用 LOW選項進行編譯,用戶代碼位于 LOW區(qū)。 編譯選項及其位置 用戶程序代碼編寫區(qū),代碼量不得超過 16K 位于系統(tǒng) Boot代碼區(qū),用戶不能隨便修改 ? 升級方法 使用 “ 在線升級模板 ” 建立工程,編譯以后產(chǎn)生樹狀的文件結(jié)構(gòu)。 LOW和 HIGH選項都會生成兩個二進制文件 SYSTEM和 USER。 Boo tLo ad er TestBoo tLo ad er _ Test _ DataLOWOb jectCod eLOWHIGHOb jectCod eHIGHsrc LOW選項編譯結(jié)果 HIGH選項編譯結(jié)果 當前程序運行在 LOW區(qū),那么只能升級HIGH區(qū)。系統(tǒng)復位后,將 ,使用串口終端軟件將 HIGH選項編譯生成的 USER文件發(fā)送給系統(tǒng)即可。 當前程序運行在 HIGH區(qū),那么只能升級LOW區(qū)。系統(tǒng)復位后,將 ,使用串口終端軟件將 LOW選項編譯生成的 USER文件發(fā)送給系統(tǒng)即可。 ? 總結(jié) “在線升級 ” 解決方案并不是唯一的,本方案使用 UART0進行升級,當然也可以使用其它的手段進行升級,而且片內(nèi) Flash的分區(qū)方式也不是唯一的,因此本方案并不是唯一的解決方法。 在 ADS編譯器中,通過 “ 分散加載文件 ” 可以實現(xiàn)代碼定位,有關(guān) “ 分散加載文件 ” 和 “ ADS編譯器 ” 方面的介紹請參考其它相關(guān)書籍。
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1