您在[讨论]MC9S12的保密问题帖子中有如下回复,请您告诉我解密那一段用什么能写入?资料上说用串口,请问串口怎么写?万分感谢
加密后,FLASH和RAM被加密,无法读出 直接页寄存器,高页寄存器和背景调试控制器仍可读出,未被加密 在加密的存储器中的程序可以访问所有的MCU资源 从未被加密的存储器中的程序无法访问被加密的程序 (返回值全为0) 背景调试控制器也无法访问被加密的程序(返回值全为0) 加密通过FOPT寄存器的SEC01:SEC00位来设置(0:0, 0:1, 1:1为加密) 复位时,FLASH中NVOPT的内容将会被拷贝到高页寄存器FOPT中 在对FLASH编程同时,对NVOPT地址也编入数据即可加密 加密后,FLASH仍可以全部擦除
解密 Flash 存储器 对 FCNFG中的 KEYACC置1
写正确的4个 16位字到 Flash 存储器。
清除 KEYACC 位。
通过SEC[1:0]位强制解锁 MCU 。
若4个16位字中任一个不与flash中的匹配,则MCU不被解锁且一个解锁违例信号被发送到CPU。
在prm文件中:
VECTOR ADDRESS 0xFFBE 0x00C0 // engage security, allow backdoor to disengage security VECTOR ADDRESS 0xFFB0 0x1234 // backkey VECTOR ADDRESS 0xFFB2 0x5634 // backkey VECTOR ADDRESS 0xFFB4 0x1212 // backkey VECTOR ADDRESS 0xFFB6 0x1212 // backkey
在对FLASH编程时,会将以上数据放到以上FLASH地址中
只有NVOPT中KEYEN位为1时,才能对FLASH解密
|