• No : 8882
  • 公開日時 : 2021/10/17 16:29
  • 印刷

【NXP:Auto】 S32K1xx Flash Configuration field内のFPROT0~3をイレースする方法

S32K1xxのFlash Configuration field(@0x400-0x40F)内のFPROT0~3に0x00(protected)を書いてしまったため、この領域をイレース出来なくなりました。復旧する方法を教えてください。
カテゴリー : 

回答

Flash Configuration fieldでFPROT0~3で保護に設定された領域は、セクターイレースとブロックイレースが出来なくなります。また、FTFCのFPROT0~3レジスタは、リファレンスマニュアル 823ページのレジスタの説明のように、保護状態を解除するような設定へ変更(0から1へ)できません。
そのため、復旧させるためには、マスイレースコマンド(セクターイレースコマンドやブロックイレースコマンドではなく)を実行してFlash Configuration fieldの0x408 - 0x40Bを0xFFにする必要があります。
 
なお、デバッガからマスイレースを行うためには、Flash Configuration fieldのFlash Security (@0x40C)のbit 5-4のMEEN(Mass Erase Enable Bits)が有効(10b以外)の設定になっている必要があります。もしMEENが10bの設定になっており無効になっている場合、解除する方法はありませんので注意してください。
 
- 812ページ:36.4.1 Flash configuration field description
- 823~825ページ:36.4.4.1.7 Program Flash Protection Registers (FPROT0 - FPROT3)