2026 / 07 / 22
RA 系列:ID 代码保护(通过 127 位=0 启用保护的情况)

Question:

ID 代码保护被启用,且ALeRASE指令被禁用的情况下,如何连接调试器或编程器?


Answer:

注意:如果MCU受此方式保护,不会检查ID代码,也就是说ID代码始终不匹配,设备无法连接到调试器或者串行编程器,但是可以使用ALeRASE指令擦除用户闪存区域的内容。

如何设置 ID 代码

FSP 配置器中不支持该设置。如下图所示,在 C 预处理器设置中添加 BSP_ID_CODE_PERMANENTLY_LOCKED 定义后方可启用。

 

 
OSIS 寄存器中的 ID 代码值

为了便于理解 ID 代码值与 OSIS 寄存器之间的关系,下面我们将ID 代码按每 4 个字节为一组用不同的颜色做标记,如:00112233445566778899AABBCCDDEEFF

如下所示,设置会输出到 ra_cfg/fsp_cfg/bsp/bsp_mcu_family_cfg.h 中,且ID代码被设置为了全00h

/*

 ID Code

 Note: To permanently lock and disable the debug interface define the BSP_ID_CODE_PERMANENTLY_LOCKED in the compiler settings.

 WARNING: This will disable debug access to the part and cannot be reversed by a debug probe.

 */

#if defined(BSP_ID_CODE_PERMANENTLY_LOCKED)

            #define BSP_CFG_ID_CODE_LONG_1 (0x00000000)

            #define BSP_CFG_ID_CODE_LONG_2 (0x00000000)

            #define BSP_CFG_ID_CODE_LONG_3 (0x00000000)

            #define BSP_CFG_ID_CODE_LONG_4 (0x00000000)

            #else

/* ID CODE: 00112233445566778899AABBCCDDEEBF */

#define BSP_CFG_ID_CODE_LONG_1 (0x33221100)

#define BSP_CFG_ID_CODE_LONG_2 (0x77665544)

#define BSP_CFG_ID_CODE_LONG_3 (0xBBAA9988)

#define BSP_CFG_ID_CODE_LONG_4 (0xBFEEDDCC)

#endif


ID 代码在程序镜像文件(program image file)中生成,如下所示。具体会因OSIS寄存器的地址不同而有差异:

RA2L1为例

S3150101001800000000FFFFFFFF00000000FFFFFFFFD8

S3110101002800000000FFFFFFFF00000000C8

 
 RA6M3为例:

S3150100A15000000000000000000000000000000000F8

 
RA4E2为例:

S3150100A1200000000000000000000000000000000028


e2 studio 
中的调试器连接(ID 代码验证)

由于 ID 代码验证始终不匹配,因此会跳出验证错误对话框,如下图所示。

J-Link调试器:

 

 
E2/E2 Lite 调试器:

 


e2 studio 中的调试器连接(执行ALeRASE

如果是 E2 E2 Lite,即使将 ID 代码设为ALeRASE ID 代码(FFFFFFFFFFFFFFFFFF45534152654C41) ,也不会执行擦除。如下图所示,对话框会显示擦除闪存进程失败。使用 J-Link 时无法执行擦除指令。 


在此模式(*1)下可用ALeRASEMCU产品上,可通过将 ID 代码设置为ALeRASE ID 代码(FFFFFFFFFFFFFFFFFF45534152654C41) 来擦除整个内部闪存 ROM。如果设置了要加载的程序镜像,则将在执行 ALeRASE 之后加载镜像。

 

 


*
1: "RA2A1 Group, RA2L1 Group, RA2E1 Group, RA4M1 Group, RA4W1 Group, RA6M1 Group, RA6M2 Group, RA6M3 Group, RA6T1 Group, Note on ALeRASE command” (TN-RA*-A0014A/E)

通过RFP连接(ID 代码验证)

由于 ID 代码验证总是不匹配,因此会跳出验证错误对话框,如下图所示。

 


通过
R
FP连接(执行ALeRASE

输入ALeRASE ID 代码(414C6552415345FFFFFFFFFFFFFFFFFF) ,可以成功执行ALeRASE,如下所示。

 

 

文件下载
隐私条款

一、接受条款 使用者(也称"您")在访问或使用本网站及其服务时,即已经表示同意并不加修改地接受本《用户协议》、本网站的《隐私声明》、《法律声明》以及其关或相链接的网页和网站的条件和条款的规定。我们强烈建议:在您阅读和接受本《用户协议》时,也应阅读并接受本《用户协议》中所提到《隐私声明》、《法律声明》及其相关或相链接网页或网站所包含的资料,因为《隐私声明》、《法律声明》及其它相关网页或网站可能包含对您适用的进一步规定。(请注意:点击划有底线的词句即可链接到上述《隐私声明》、《法律声明》及其它相关或相链接的网页和网站。

 

二、使用者的资格要求 在本网站中"使用者"指的是浏览、阅读、使用本网站信息或服务的任何个人或组织。本网站的服务仅适用于根据相关法律的规定具有签订有约束力的合同的个人或组织并仅由其使用。本网站的服务不向18周岁以下的个人使用者提供,也不向临时被本网站中止或取消使用者资格的使用者提供。如果使用者不符合本条规定,请停止使用本网站或本网站的服务。

样品
申请

应用
资源

微信