您的位置 首页 胎压OE替换件

NXP TPMS芯片之-访问错误和块保护

NXP TPMS芯片之-访问错误和块保护

访问错误

只要违反命令执行协议,就会发生访问错误。

以下任何特定操作都将导致设置FSTAT中的访问错误标志(FACCERR)。在处理任何命令之前,必须通过在FSTAT中将1写入FACCERR来清除FACCERR。

•在通过写入FCDIV寄存器设置内部闪存时钟频率之前写入闪存地址

•未设置FCBEF时写入闪存地址(在命令缓冲区为空之前,无法启动新命令。)

•在启动前一个命令之前,第二次写入闪存地址(每个命令只有一次写入闪存)

•在启动前一个命令之前,第二次写入FCMD(每个命令只有一次写入FCMD)

•写入闪存地址后,写入除FCMD以外的任何闪存控制寄存器

•将五个允许代码(0x05、0x20、0x25、0x40或0x41)以外的任何命令代码写入FCMD

•将命令写入FCMD后,访问(读取或写入)除写入FSTAT之外的任何闪存控制寄存器(清除FCBEF并启动命令)。

•当程序或擦除命令正在执行时,MCU进入停止模式(命令被中止)

•在MCU处于安全状态时,使用后台调试命令写入字节程序、突发程序或页面擦除命令代码(0x20、0x25或0x40)(后台调试控制器只能在MCU处于安全状态时执行空白检查和批量擦除命令)

•将0写入FCBEF以取消部分命令。

flash块保护功能

块保护功能可防止闪存的受保护区域发生编程或擦除更改。块保护是

通过闪存保护寄存器(FPROT)控制。启用时,块保护从闪存最后一个地址0xFFFF下方的任何512字节边界开始。

退出复位后,FPROT加载闪存非易失性寄存器块中NVPROT位置的内容。无法直接从应用软件更改FPROT,因此失控程序无法更改块保护设置。由于NVPROT在闪存的最后512字节内,因此如果任何内存量受到保护,则NVPROT本身受到保护,并且不能被应用软件更改(有意或无意)。FPROT可以通过后台调试命令写入,该命令允许擦除和重新编程受保护的闪存。

块保护机制如下所示。FPS位用作未受保护内存最后一个地址的高位。如图所示,该地址由FPS7:FPS1与逻辑1位串联而成。例如,为了保护内存的最后8192字节(地址0xE000到0xFFFF),必须将FPS位设置为1101 111,这将导致值0xDFFF作为未受保护内存的最后地址。除了将FPS位编程为适当的值外,FPDIS(NVPROT的位0)必须编程为逻辑0以启用块保护。因此,必须将值0xDE编程到NVPROT中,以保护地址0xE000到0xFFFF。

NXP TPMS芯片之-访问错误和块保护 胎压OE替换件 第1张

块保护的一个用途是为引导加载程序块保护闪存区域。然后,该引导加载程序可用于擦除闪存的其余部分并对其重新编程。由于Bootloader受到保护,即使MCU电源在擦除和重编程操作的中间丢失,它仍然保持完整。

注:整理自网络

 

版权所有,如未注明,均为原创,转载请注明
齐东汽车电子博客 qidongyy.com
本文标题:NXP TPMS芯片之-访问错误和块保护
如有疑问:请转到这里联系我
网站建设:推荐老薛主机-优质海外主机服务商

热门文章