ZHCU778AB January   2014  – September 2022 MSP430FR2032 , MSP430FR2033 , MSP430FR2110 , MSP430FR2111 , MSP430FR2153 , MSP430FR2155 , MSP430FR2310 , MSP430FR2311 , MSP430FR2353 , MSP430FR2355 , MSP430FR2433 , MSP430FR2532 , MSP430FR2533 , MSP430FR2632 , MSP430FR2633 , MSP430FR4131 , MSP430FR4132 , MSP430FR4133 , MSP430FR5041 , MSP430FR5043 , MSP430FR50431 , MSP430FR5847 , MSP430FR58471 , MSP430FR5848 , MSP430FR5849 , MSP430FR5857 , MSP430FR5858 , MSP430FR5859 , MSP430FR5867 , MSP430FR58671 , MSP430FR5868 , MSP430FR5869 , MSP430FR5887 , MSP430FR5888 , MSP430FR5889 , MSP430FR58891 , MSP430FR5947 , MSP430FR59471 , MSP430FR5948 , MSP430FR5949 , MSP430FR5957 , MSP430FR5958 , MSP430FR5959 , MSP430FR5967 , MSP430FR5968 , MSP430FR5969 , MSP430FR5969-SP , MSP430FR59691 , MSP430FR5986 , MSP430FR5987 , MSP430FR5988 , MSP430FR5989 , MSP430FR5989-EP , MSP430FR59891 , MSP430FR6041 , MSP430FR6043 , MSP430FR60431 , MSP430FR6877 , MSP430FR6879 , MSP430FR68791 , MSP430FR6887 , MSP430FR6888 , MSP430FR6889 , MSP430FR68891 , MSP430FR6927 , MSP430FR69271 , MSP430FR6928 , MSP430FR6972 , MSP430FR6977 , MSP430FR6979 , MSP430FR69791 , MSP430FR6987 , MSP430FR6988 , MSP430FR6989 , MSP430FR69891

 

  1.   摘要
  2.   商标
  3. 1引言
    1. 1.1 BSL 限制
    2. 1.2 其他实用文档
  4. 2BSL 特性概览
  5. 3BSL 架构
    1. 3.1 通信接口
      1. 3.1.1 UART BSL
      2. 3.1.2 I2C BSL
    2. 3.2 BSL 存储器
      1. 3.2.1 BSL 存储器布局
      2. 3.2.2 BSL Z 区
      3. 3.2.3 BSL 存储器注意事项
    3. 3.3 调用 BSL
      1. 3.3.1 软件 BSL 调用
        1. 3.3.1.1 从外部软件应用程序启动 BSL
        2. 3.3.1.2 BSL 操作
          1. 3.3.1.2.1 BSL 操作函数 2
      2. 3.3.2 硬件 BSL 调用
        1. 3.3.2.1 阻止硬件调用 BSL 的因素
      3. 3.3.3 空白器件检测
    4. 3.4 BSL 超时特性
    5. 3.5 BSL 版本号
    6. 3.6 BSL(用户)配置
      1. 3.6.1 配置 BSL
        1. 3.6.1.1 BSL 用户配置示例
        2. 3.6.1.2 在应用程序代码中实现 BSL 配置
  6. 4BSL 协议
    1. 4.1 BSL 数据包
      1. 4.1.1 UART 外设接口包装器
      2. 4.1.2 I2C 外设接口包装器
      3. 4.1.3 BSL 确认
      4. 4.1.4 BSL 内核响应和 BSL 内核消息
      5. 4.1.5 BSL 内核命令
        1. 4.1.5.1 RX 数据块
        2. 4.1.5.2 RX 密码
        3. 4.1.5.3 批量擦除
        4. 4.1.5.4 CRC 校验
        5. 4.1.5.5 加载 PC
        6. 4.1.5.6 TX 数据块
        7. 4.1.5.7 TX BSL 版本
        8. 4.1.5.8 RX 数据块快速模式
        9. 4.1.5.9 更改波特率
    2. 4.2 BSL 安全
      1. 4.2.1 受保护命令
      2. 4.2.2 RAM 擦除
      3. 4.2.3 进入 BSL
  7. 5常见的 BSL 用例
    1. 5.1 概述和流程图
    2. 5.2 建立连接
    3. 5.3 擦除器件
    4. 5.4 下载应用程序
    5. 5.5 验证应用程序
    6. 5.6 运行应用程序
  8. 6定制 BSL
  9. 7引导加载程序版本
    1. 7.1 FR2xx BSL 版本
    2. 7.2 FR4xx BSL 版本
    3. 7.3 FR57xx BSL 版本
    4. 7.4 FR58xx 和 FR59xx BSL 版本
    5. 7.5 FR6xx BSL 版本
  10. 8修订历史记录

CRC 校验

结构 BSL 内核命令

BSL 命令是否受保护CMDALAMAH数据BSL 内核响应
CRC 校验0x16(AL)(AM)(AH)长度(低字节),长度(高字节)

描述

MSP430 根据 CCITT 标准执行一次16 位 CRC 校验。指定的地址为 CRC 校验的第一个字节。两个字节用于表示长度。请参阅每个系列用户指南(请参阅Topic Link Label1.2)中的 CRC 一章,了解关于所采用的 CRC 硬件计算的更多详细信息。

保护

此命令受密码保护,如果未发送密码,则会失败。

命令

0x16

命令地址

要开始 CRC 校验的地址。

命令数据

CRC 校验的 16 位长度。D1 是长度的低字节,而 D2 是长度的高字节。

命令返回

BSL 确认和带有 CRC 值的 BSL 内核响应。请参阅Topic Link Label4.1.4,了解更多有关 BSL 内核响应的信息。

UART PI 示例

从地址 0x4400 到 0x4800(大小为 1024)执行 CRC 校验:

标头长度长度CMDALAMAHD1D2CKLCKH
0x800x060x000x160x000x440x000x000x040x9C0x7D

BSL 响应,其中 0x55 是所计算校验和的低字节,而 0xAA 是所计算校验和的高字节:

ACK标头长度长度CMDD1D2CKLCKH
0x000x800x030x000x3A0x550xAA0x120x2B

I2C PI 示例

从地址 0x4400 到 0x4800(大小为 1024)执行 CRC 校验:

I2C标头长度长度CMDALAMAHD1D2CKLCKH
S/A/W0x800x060x000x160x000x440x000x000x040x9C0x7D

BSL 响应,其中 0x55 是所计算校验和的低字节,而 0xAA 是所计算校验和的高字节:

I2CACK标头长度长度CMDD1D2CKLCKHI2C
S/A/R0x000x800x030x000x3A0x550xAA0x120x2B停止