如何将安全LPC804 MCU芯片配置编程呢?仅可通过ISP模式么?

2023-03-07  

LPC804 MCU具有CRP(代码读取保护)功能。

该CRP位于地址0x0000 02FC,并且存在NO_ISP/CRP1/CRP2/CRP3这些不同的安全级别。

82dafbbc-a730-11ed-bfe3-dac502259ad0.png

如何将安全配置编程呢?仅可通过ISP模式么?

82f6f9de-a730-11ed-bfe3-dac502259ad0.png

也可以在项目工程,如下图 MCUXpresso IDE中配置, 使能 CRP:

8349821c-a730-11ed-bfe3-dac502259ad0.png

836eeda4-a730-11ed-bfe3-dac502259ad0.png

在 MCUXpresso 工程里面配置CRP。

•定义设置适当的 CRP值

•使用自定义脚本配置链接器以将该常量放置在CRP内存地址(0x2FC),下面定义分配给其所需CRP级别的常量。attribute 指令确保链接器将常量(CRP_WORD)放置在内存的特殊“.crp”部分中,参考代码如下。

#define CRP_NO_CRP 0xFFFFFFFF

#define CRP_NO_ISP_MAGIC 0x4E697370

#define CRP1_MAGIC 0x12345678

#define CRP2_MAGIC 0x87654321

/**注意:当设置 CRP3,将会锁定器件的读写**/

/*** #define CRP3_MAGIC 0x43218765 ***/

#define CURRENT_CRP_SETTING CRP_NO_CRP

__attribute__ ((section(".crp"))) const uint32_t CRP_WORD = CURRENT_CRP_SETTING;


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。