NESU004 February   2023 MSPM0L1227 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L2227 , MSPM0L2228 , MSPM0L2228-Q1

 

  1.   摘要
  2.   註冊商標
  3. 1BSL 功能概覽
  4. 2詞彙
  5. 3BSL 架構
    1. 3.1 設計
      1. 3.1.1 逾時特性
        1. 3.1.1.1 介面自動偵測
        2. 3.1.1.2 命令接收
    2. 3.2 BSL 叫用
      1. 3.2.1 空裝置
      2. 3.2.2 應用程式請求
      3. 3.2.3 基於 GPIO 的叫用
      4. 3.2.4 偵錯信箱命令
      5. 3.2.5 其他
        1. 3.2.5.1 預開機應用程式驗證
    3. 3.3 記憶體
      1. 3.3.1 SRAM 記憶體使用量
    4. 3.4 BSL 配置
    5. 3.5 BSL 狀態
  6. 4開機載入程式協定
    1. 4.1 封包格式
    2. 4.2 UART 和 I2C BSL 協定
      1. 4.2.1 BSL 確認
      2. 4.2.2 周邊設備配置
        1. 4.2.2.1 UART
        2. 4.2.2.2 I2C
        3. 4.2.2.3 CRC
    3. 4.3 開機載入程式核心命令
      1. 4.3.1  通訊
      2. 4.3.2  取得裝置資訊
      3. 4.3.3  解鎖開機載入程式
      4. 4.3.4  程式資料
      5. 4.3.5  程式資料快速
      6. 4.3.6  讀回資料
      7. 4.3.7  快閃記憶體範圍清除
      8. 4.3.8  大量清除
      9. 4.3.9  原廠重設
      10. 4.3.10 獨立驗證
      11. 4.3.11 啓動應用程式
      12. 4.3.12 變更傳輸速率
    4. 4.4 BSL 核心回應
      1. 4.4.1 BSL 核心訊息
      2. 4.4.2 詳細錯誤
      3. 4.4.3 記憶體讀回
      4. 4.4.4 裝置資訊
      5. 4.4.5 獨立驗證
    5. 4.5 開機載入程式安全性
      1. 4.5.1 受密碼保護的命令
        1. 4.5.1.1 安全警示
      2. 4.5.2 BSL 輸入項
  7. 5使用開機載入程式的程式流範例
  8. 6二次開機載入程式
    1. 6.1 二次開機載入程式範例
  9. 7介面外掛程式
    1. 7.1 實作
      1. 7.1.1 初始化
      2. 7.1.2 接收
      3. 7.1.3 傳輸
      4. 7.1.4 反初始化
      5. 7.1.5 重要注意事項
    2. 7.2 Flash 外掛程式類型
    3. 7.3 覆寫現有介面
      1. 7.3.1 UART 介面 Flash 外掛程式範例
  10. 8參考
  11. 9修訂記錄

命令接收

在命令接收階段,如果 10 秒內未收到有效命令,則開機載入程式將進入 SLEEP 睡眠模式。若要從 SLEEP 睡眠模式喚醒裝置,應在作用介面上進行資料交易。

進入睡眠模式前,開機載入程式將會鎖定,以縮小攻擊面。因此,從低功耗模式喚醒後,需要透過傳送 256 位元 BSL 密碼 (請參見解鎖開機載入程式命令) 重新解鎖開機載入程式。

註: 開機載入程式使用者 LFCLK 用於逾時檢查。如果應用程式將外部時鐘配置爲 LFCLK 的來源,則 BSL 在透過應用程式 BSL 請求叫用時會使用相同的時鐘