SemiDrive E3 系列 MCU SSDK (二): XIP 模式

關鍵字 :E3MCU SSDKXIP

一、 前言

本文介紹基於 SSDK3.0 調試 XIP 運行模式。

硬體平台:芯馳 E3_LQFP176_E3200_A03_048 開發板

軟體平台:SemiDrive SSDK3.0

 

 

二、   模式簡介

        SF Core 的程序 XIP 運行在 FLASH 上,XIP 程序啟動前,需先在 IRAM 中運行 SF Core 的 BootLoader 程序,對 XSPI 以及 FLASH 進行初始化,然後啟動 SF Core 的 XIP 程序;通常客戶會有使用 CAN 進行 OTA 升級的需求,這時可以參考 XIP 例程,在 BootLoader 程序中接收升級文件,寫入 FLASH 中,升級完成後跳轉至 FLASH XIP 模式運行。


三、  測試過程

1.  BootLoader 程序分析

例程路徑:E3_SSDK_PTG3.0_Source_Code\ssdk\boards\e3_176_ref\app_demo\xip\bootloader





BootLoader 中做了時鐘、IO、FLASH 的初始化,以及跳轉命令。跳轉地址為

       SF_MEM_BASE 0x10140000,與 iar_flashboardcfg_bootloader.board 文件中描述的 sf.flash 文件地址一樣。在跳轉前會輸出 log:SSDK E3 Bootloader Success!

 

2.  Sf 程序分析

Sf 程序初始化時鐘、PIN 腳、輸出 log:SSDK E3 XIP Demo, SF Boot Success。





3.  編譯

首先在 debug 模式編譯 sf 程序,並配置生成 sf.bin 文件。

        然後在 flashdebug 模式編譯 BootLoader 程序,Linker 文件會把 BootLoader、SFS、sf.bin 一起合併成一個 .out 文件。



下載到板子中,重新啟動,可以看到 log

       說明程序先從 bootloader 啟動,然後跳轉至 flash XIP 運行。

 

四、   參考文檔

  • 《AppNote_E3_Boot_and_OTA_Rev01.03.pdf》
  • 《SemiDrive_E3_SSDK_User_Guide_Rev1.03.pdf》

歡迎在博文下方留言評論,我們會及時回復您的問題。如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com

作者:Chelsea / 佟強

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論