概述
啟動存儲器(Boot Memory)默認是作為BOOT模式用來存放原廠固化的啟動代碼。不過,在具有AP mode系列產品上,添加了新功能,啟動存儲器也可以選擇作為主存的擴展區(AP模式)用來存放用戶自定義代碼。
注意:啟動存儲器AP模式只能設置一次不可逆,設置后原啟動存儲器BOOT模式功能不可恢復。
本應用指南將介紹主存擴展的使用范例,下面以AT32F415系列為例,其中:
章節2.1介紹使用Artery ICP Programmer將啟動存儲器開啟AP模式,作為主存擴展的步驟。
章節2.2介紹項目run_in_boot_memmory在啟動存儲器執行應用程序的示例。
例程放在BSP標準庫
utilitiesat32xx_boot_memmory_ap_demorun_in_boot_memmory目錄
范例程序
使用Artery ICP Programmer將啟動存儲器作為主存擴展使用
要使用ICP Programmer,請參照以下步驟:
連接J-Link或AT-Link仿真器到AT32F415并上電;
開啟ICP programmer,選擇用J-Link或AT-Link做連接;
通過菜單欄:“設備操作”-“啟動程序存儲區AP模式”,如下圖:
圖1. ICP操作界面
為防止誤操作,需按照提示手動輸入啟用秘鑰0xA35F6D24,操作后“存儲器信息”表格中會有成功或失敗的提示信息。
關于ICP Programmer的詳細說明,請參閱ICP Programmer用戶手冊。
run_in_boot_memmory:在啟動存儲器執行應用程序
在此例程中,硬件從主存儲器啟動,主存儲器的代碼會從串口(USART1)輸出信息,啟動存儲器中的代碼會初始化LED燈并讓LED2閃爍。要在啟動存儲器執行應用程序,需對Keil進行如下設置:
設置啟動存儲器的起始位置及范圍。
圖2. 設置bootmem地址范圍到IROM2
范例程序把要載入啟動存儲器的應用代碼編寫成單獨的c文件,范例中是把LED燈閃爍的相關代碼放在run_in_boot_memmory.c,右鍵點擊.c文件在Options選項中將地址編到IROM2。
圖3. 選擇配置c文件
圖4. 配置c文件編譯地址
編譯后查看分散加載描述文件(scatter file),可以看到目標文件(object file) run_in_boot_memory.o放置到了啟動存儲器。
圖5. 分散加載描述文件
添加啟動存儲器flash算法。
圖6. FLASH算法文件添加
下載并運行后可以看到對應執行結果LED閃爍。
來源:AT32 MCU 雅特力科技
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理
審核編輯 黃宇
-
mcu
+關注
關注
146文章
16990瀏覽量
350307 -
存儲器
+關注
關注
38文章
7452瀏覽量
163605 -
AT32
+關注
關注
1文章
113瀏覽量
2073
發布評論請先 登錄
相關推薦
評論