Hi,
I use the TRK-S12ZVFP64 development board and CodeWarrior Version: 10.6.4
I want to secure the MCU and unsecure it via Verify Backdoor Access Key Command.
I configured the Flash Config Field as follow:
#define FLASHSECURITYBYTE 0xBD
/* configure flash configuration field */
const unsigned char FCF_FlashConfigurationField_a[] @0xFFFE00 = {0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFA, FLASHSECURITYBYTE };
Before i execute the Verify Backdoor Access Key Command i check the FSEC register like that
if(((*(unsigned char *)0x0381)) == FLASHSECURITYBYTE )
{
/* do something */
}
But FLASHSECURITYBYTE and the Value in the FSEC register arent the same...
When i use 0xBD for FLASHSECURITYBYTE, then 0xFF is stored in FSEC (MCU secured but no Backdoor Access Key)
When i use 0xBC or 0xBF for FLASHSECURITYBYTE, then 0xBE is stored in FSEC (MCU is unsecured)
That's why the Verify Backdoor Access Key Command fails every time (ACCERR is set in FSTAT)
Is there any solution to get 0xBD in the FSEC register?
Regards
Oliver