ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
调试子系统支持多种方法来限制通过 SWD 接口访问器件。调试访问策略由 NONMAIN 闪存区域中指定的用户配置决定。
表 30-3 中列出了 4 种访问控制级别。默认情况下,从 TI 发货的产品在器件完全打开的情况下处于“启用调试”状态。不建议在生产环境中使用此状态。对于生产环境,TI 建议将调试配置更改为受密码保护、调试禁用或 SWD 禁用。
| DEBUGSS 函数 | 调试配置 | |||
|---|---|---|---|---|
| 启用调试(默认) | 使用密码启用调试 | 禁用调试 | SWD 已禁用 | |
| SW-DP(调试端口) | EN | EN | EN | DIS |
| CFG-AP | EN | EN | EN | DIS |
| SEC-AP | EN | EN | EN | DIS |
| ET-AP | EN | EN w/ PW | DIS | DIS |
| AHB-AP(CPU 调试) | EN | EN w/ PW | DIS | DIS |
| 调试配置 | SWDP_MODE | DEBUGACCESS |
|---|---|---|
| 启用调试(默认) | AABBh | AABBh |
| 使用密码启用调试 | AABBh | CCDDh |
| 禁用调试 | AABBh | 5566h |
| SWD 已禁用 | 5566h | 5566h |
将调试设置为使用密码启用时,必须将调试访问命令与用户指定的调试访问密码一起提供给 DEBUGSS 邮箱,并且必须发出 BOOTRST。访问控制密码使用 PWDDEBUGLOCK 寄存器存储在 NONMAIN 中。根据 SOC 实现方式,密码为 128 位明文或 256 位 SHA-256 哈希值。有关器件特定的功能,请参阅数据表。
禁用调试时,会在引导过程中禁用 SW-DP,并在引导期间忽略之前发送到邮箱的任何命令。引导后,将忽略任何连接到 SW-DP 的尝试。
通过将 NONMAIN 闪存区域配置为禁用调试访问,同时将 NONMAIN 闪存区域配置为受静态写保护(锁定),永久锁定对器件的调试访问。锁定 NONMAIN 配置可提高安全性,防止引导加载程序 (BSL) 和应用程序代码更改调试安全策略。
| 调试功能 | 调试访问控制 | 恢复出厂设置 | 批量擦除 |
|---|---|---|---|
| 寄存器名称 | PWDDEBUGLOCK | PWDFACTORYRESET | PWDMASSERASE |
要为调试功能启用密码,请将一个 128 位十六进制值拆分为 4 个 32 位字并写入相应的密码寄存器。
示例:恢复出厂设置密码配置
要为调试功能启用密码,请将 128 位明文密码的 SHA-256 摘要写入相应的寄存器。
示例:恢复出厂设置密码配置
确定所需的 128 位明文密码
0xCAFECAFE12345678A5A5C3C30000FFFF