[S32K3xx] - Program a byte in UTEST sector

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

[S32K3xx] - Program a byte in UTEST sector

ソリューションへジャンプ
9,461件の閲覧回数
atranzillo93
Contributor III

Hi,

I'm trying to write a byte in UTEST sector in this block:

atranzillo93_0-1700150357982.png

NB: API is called at init with interrupts disabled.

 

This is my code:

 HostFlash_Program((uint32_t )0x1B000780U, (uint8_t* )hseFwFeatureFlagEnabledValue, (uint32_t)8U);

eel_status_t HostFlash_Program( uint32_t Address, uint8_t* SourceAddress, uint32_t Length)
{
uint32_t ErrorFlags;
C40_Ip_StatusType C40_Ip_Status = STATUS_C40_IP_ERROR ;
const uint8_t *DataPtr8 = SourceAddress;
volatile uint32_t DataTemp32; /* Prevent compiler optimization when working with unaligned addresses */


/* Disable HV to finalize/abort the operation */
Fsld_FlashInstance->MCR &= ~FLASH_MCR_EHV_MASK;
/*Clear ERS and PGM bits */
Fsld_FlashInstance->MCR &= ~(FLASH_MCR_PGM_MASK|FLASH_MCR_ESS_MASK|FLASH_MCR_ERS_MASK);
/* Disable watchdog interrupt */
Fsld_FlashInstance->MCR &= ~FLASH_MCR_WDIE_MASK;
/* No interrupt request will be generated when the DONE flag is set */
Fsld_FlashInstance->MCR &= ~FLASH_MCR_PECIE_MASK;
/* Clear all error flags for main interface */
Fsld_FlashInstance->MCRS &= FLASH_MCRS_EER_MASK | \
FLASH_MCRS_SBC_MASK | \
FLASH_MCRS_AEE_MASK | \
FLASH_MCRS_EEE_MASK | \
FLASH_MCRS_RVE_MASK | \
FLASH_MCRS_RRE_MASK | \
FLASH_MCRS_RWE_MASK | \
FLASH_MCRS_PES_MASK | \
FLASH_MCRS_PEP_MASK;


/* Sector is in Utest */
Fsld_PFlashInstance->PFCBLKU_SPELOCK[0u] &= FSLD_MASK_UNLOCK_UTEST_SECTOR;

/* Write the address to be programmed */
Fsld_PFlashInstance->PFCPGM_PEADR_L = Address;

DataTemp32 = (uint32_t)DataPtr8[0U] << 0U;
DataTemp32 |= (uint32_t)DataPtr8[1U] << 8U;
DataTemp32 |= (uint32_t)DataPtr8[2U] << 16U;
DataTemp32 |= (uint32_t)DataPtr8[3U] << 24U;
Fsld_FlashInstance->DATA[0U] = DataTemp32;

DataTemp32 = (uint32_t)DataPtr8[4U] << 0U;
DataTemp32 |= (uint32_t)DataPtr8[5U] << 8U;
DataTemp32 |= (uint32_t)DataPtr8[6U] << 16U;
DataTemp32 |= (uint32_t)DataPtr8[7U] << 24U;
Fsld_FlashInstance->DATA[1U] = DataTemp32;

/* Setup program operation */
Fsld_FlashInstance->MCR |= FLASH_MCR_PGM_MASK;
/* Start internal erase/program sequence */
Fsld_FlashInstance->MCR |= FLASH_MCR_EHV_MASK;

while (0U == ((Fsld_FlashInstance->MCRS & FLASH_MCRS_DONE_MASK) >> FLASH_MCRS_DONE_SHIFT))
{

}

ErrorFlags = Fsld_FlashInstance->MCRS & (FLASH_MCRS_PEG_MASK | FLASH_MCRS_PEP_MASK | FLASH_MCRS_PES_MASK);
/* Program/Erase Good: only PEG = 1; both PEP and PES should be 0 */
if (FLASH_MCRS_PEG_MASK == ErrorFlags)
{
C40_Ip_Status = STATUS_C40_IP_SUCCESS;
}
else
{
C40_Ip_Status = STATUS_C40_IP_ERROR;
}

/* terminate program operation */
Fsld_FlashInstance->MCR &= ~FLASH_MCR_EHV_MASK;
/* Terminate program operation */
Fsld_FlashInstance->MCR &= ~FLASH_MCR_PGM_MASK;


/* The write job has finished or the end of the sector was reached. Time to lock the sector */
Fsld_PFlashInstance->PFCBLKU_SPELOCK[0u] |= FSLD_MASK_LOCK_UTEST_SECTOR;

if( STATUS_C40_IP_SUCCESS == C40_Ip_Status )
{
return EEL_OK ;
}
else
{
return EEL_ERR_PARAMETER ;
}
}

 

  • #case1

If I don't place the function in RAM, it writes the byte but, just after the write uC generates a hard fault

atranzillo93_1-1700150470064.png

#case 2

If I place the function in RAM, no hard fault occurs, but write operation fails. Byte is not written in UTEST sector.

atranzillo93_2-1700150752156.png

 

Can you help me?

 

Thanks a lot.

タグ(1)
0 件の賞賛
返信
1 解決策
8,859件の閲覧回数
atranzillo93
Contributor III

SOLUTION:

I have separated the setting of PGM and EHV bits in two differents API.

元の投稿で解決策を見る

0 件の賞賛
返信
14 返答(返信)
8,860件の閲覧回数
atranzillo93
Contributor III

SOLUTION:

I have separated the setting of PGM and EHV bits in two differents API.

0 件の賞賛
返信
9,433件の閲覧回数
VaneB
NXP TechSupport
NXP TechSupport

Hi @atranzillo93 

The UTEST Sector is an OTP (One Time Programmable). This causes the erase operations not to be allowed. You only going to be able to append new data or configuration and read data.

Writing the desired data in the UTEST Sector is the same process used to program data in other blocks.

Please check the following post. Is from other topics but explains how to write data in a UTEST sector. 

[S32K3] Restrict the debug access with a password when HSE is not used

 

B.R.

VaneB

0 件の賞賛
返信
1,350件の閲覧回数
Haritha466
Contributor I
Hi
can we write data into Utest memory using the "C40_Ip_MainInterfaceWrite" API?? I have created the API using the andC40_Ip_MainInterfaceWrite write the Data at "0x1B001BF8 but getting the hardfault error.FLS_STATUS FLS_WriteMemoryRange(uint32_t SectorID, uint32_t WriteAddress, \
uint8_t *WriteData, uint32_t WriteSize)
{
FLS_STATUS RetSts = FLS_STATUS_ERROR;
C40_Ip_StatusType SectorStatus = C40_IP_STATUS_SECTOR_PROTECTED;
C40_Ip_StatusType ReturnCode = C40_IP_STATUS_SUCCESS;

/* Unlock the sector if locked */


SectorStatus = C40_Ip_GetLock(SectorID);
if (C40_IP_STATUS_SECTOR_PROTECTED == SectorStatus) {
/* Unlock the sector */
ReturnCode = C40_Ip_ClearLock(SectorID, GET_CPU_CORE_ID);
} else {
ReturnCode = C40_IP_STATUS_SUCCESS;
}


/* Proceed with the write if the sector is unlocked */
if (C40_IP_STATUS_SUCCESS == ReturnCode) {
/* Write data to the given address */
ReturnCode = C40_Ip_MainInterfaceWrite(WriteAddress, WriteSize, WriteData, GET_CPU_CORE_ID);
if (C40_IP_STATUS_SUCCESS == ReturnCode) {
/* Wait until write completes */
while (C40_IP_STATUS_BUSY == (ReturnCode= C40_Ip_MainInterfaceWriteStatus()));

if (C40_IP_STATUS_SUCCESS != ReturnCode) {
PASLOG(ZONE_ERR, __func__, "Sector ID: %d, Address: 0x%X, Size: %d, Write status: %d", \
SectorID, WriteAddress, WriteSize, ReturnCode);
} else {
RetSts = FLS_STATUS_OK;
}

/* Lock the sector if it was previously locked */
if (C40_IP_STATUS_SECTOR_PROTECTED == SectorStatus) {
/* Lock the sector */
ReturnCode = C40_Ip_SetLock(SectorID, GET_CPU_CORE_ID);
if (C40_IP_STATUS_SUCCESS == ReturnCode) {
RetSts = FLS_STATUS_OK;
} else {
PASLOG(ZONE_ERR, __func__, "Sector ID: %d, Set lock request status: %d", SectorID, ReturnCode);
}
}
} else {
PASLOG(ZONE_ERR, __func__, "Sector ID: %d, Address: 0x%X, Size: %d, Write request status: %d", \
SectorID, WriteAddress, WriteSize, ReturnCode);
}
} else {
PASLOG(ZONE_ERR, __func__, "Sector ID: %d, Clear lock request status: %d", SectorID, ReturnCode);

}

return (RetSts);
}
0 件の賞賛
返信
9,421件の閲覧回数
atranzillo93
Contributor III

Hi vanessa,

I have tried your same code, the write in UTEST is correctly performed but just after the write uC goes in hard fault:

eel_status_t HostFlash1_Program(void)
{
C40_Ip_StatusType flashStatus;
uint32_t DcfRecord[2] = {0x00000100, 0x00100004};
/* If the target address is un-programmed state, start the programming process. */
if( (*(uint32_t *)0x1B000770 == 0xFFFFFFFF) && (*(uint32_t *)(0x1B000770+4) == 0xFFFFFFFF) )
{
/* Must unlock the UTEST Flash area before programming. */
Fsld_PFlashInstance->PFCBLKU_SPELOCK[0u] &= 0xFFFFFFF0U;

/* Write the new DCF records into UTEST Flash. */
flashStatus = C40_Ip_MainInterfaceWrite(0x1B000770, 8, (uint8_t *)(&DcfRecord[0]));
/* Cache_Ip_CleanByAddr(CACHE_IP_DATA, TRUE, TargetAddress, 8); */

/* Poll the Flash status until the programming sequence is done. */
do {
flashStatus = C40_Ip_MainInterfaceWriteStatus();
}while(STATUS_C40_IP_SUCCESS != flashStatus);

/* Must lock the UTEST Flash area after programming. */
Fsld_PFlashInstance->PFCBLKU_SPELOCK[0u] |= 0x0000000FU;
}

if( STATUS_C40_IP_SUCCESS == flashStatus )
{
return EEL_OK ;
}
else
{
return EEL_ERR_PARAMETER ;
}
}

 

atranzillo93_0-1700215264747.png

 

Can you explain me why?

 

Best regarsds, Anna

0 件の賞賛
返信
9,414件の閲覧回数
VaneB
NXP TechSupport
NXP TechSupport

Hi @atranzillo93 

Does the MCU go to Hard Fault when you lock the UTEST sector? Or does this happen when the MCU terminates the ostFlash1_Program(void)?

0 件の賞賛
返信
9,351件の閲覧回数
atranzillo93
Contributor III

Hi vanessa,

 

the MCU goes in hard fault when calls the API:

flashStatus = C40_Ip_MainInterfaceWriteStatus();

 

Best regards,

Anna

0 件の賞賛
返信
9,338件の閲覧回数
VaneB
NXP TechSupport
NXP TechSupport

Hi @atranzillo93 

As mentioned, the UTEST Sector is an OTP (One Time Programmable). So, if you already write data in an address, you cannot append new data or configuration. 

If the first time the data was written successfully, if you run the code, it causes a hard fault because that address is no longer accessible for writing. 

0 件の賞賛
返信
9,333件の閲覧回数
atranzillo93
Contributor III

Hi Vanessa

address where I try to write is empty, so I CAN write.

The data are effectively written but during the read of Write status (DONE bit) an hard fault occurs.

I hope to be clear now.

See the images that I have attached to issue, please.

Anna

0 件の賞賛
返信
9,330件の閲覧回数
VaneB
NXP TechSupport
NXP TechSupport

Hi @atranzillo93 

Could you please verify if this behavior also presents with the C40_Ip_Example?

0 件の賞賛
返信
9,327件の閲覧回数
atranzillo93
Contributor III

Ok ,I will verity it.

0 件の賞賛
返信
9,458件の閲覧回数
atranzillo93
Contributor III

The hard fault generates here:

atranzillo93_0-1700151260382.png

 

タグ(1)
0 件の賞賛
返信
9,148件の閲覧回数
BhushanM
Contributor II

I faced same issue. controller was going to hard fault for both RAM and Flash region execution.

I tried adding 5ms delay inside "C40_Ip_MainInterfaceWrite" function. please refer from below.

if (TRUE == C40_Ip_bAsync)
{
/* Start flash access */
C40_Ip_FlashAccessCalloutStart();
HAL_DelayMs(5);
/* Start internal erase/program sequence */
C40_Ip_pFlashBaseAddress->MCR |= FLASH_MCR_EHV_MASK;
HAL_DelayMs(5);
}

its working for me, executing from flash region.

 

 

 

0 件の賞賛
返信
8,925件の閲覧回数
atranzillo93
Contributor III

Hi,

delay doens't solve the hard fault in my application.

Do you have any suggests?

 

Best regards,

Anita

0 件の賞賛
返信
2,440件の閲覧回数
Sanjana_k
Contributor II

#Hello@BhushanM did u get  the solution for problem ?If yes please help us with this .

 

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-1758514%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%5BS32K3xx%5D%20-%20UTEST%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AB1%E3%83%90%E3%82%A4%E3%83%88%E3%82%92%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%99%E3%82%8B%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1758514%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%3C%2FP%3E%3CP%3E%E3%81%93%E3%81%AE%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E3%81%AE%20UTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AB%E3%83%90%E3%82%A4%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%82%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%3A%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22atranzillo93_0-1700150357982.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700150357982.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700150357982.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F250267i7D69426B01BC175E%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22atranzillo93_0-1700150357982.png%22%20alt%3D%22atranzillo93_0-1700150357982.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSTRONG%3E%E6%B3%A8%E6%84%8F%3C%2FSTRONG%3E%EF%BC%9AAPI%20%E3%81%AF%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%81%8C%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%E7%8A%B6%E6%85%8B%E3%81%A7%E5%88%9D%E6%9C%9F%E5%8C%96%E6%99%82%E3%81%AB%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E3%81%93%E3%82%8C%E3%81%8C%E7%A7%81%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A7%E3%81%99%3A%3C%2FP%3E%3CP%3E%E3%83%9B%E3%82%B9%E3%83%88%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0((uint32_t)0x1B000780U%E3%80%81(uint8_t*)hseFwFeatureFlagEnabledValue%E3%80%81(uint32_t)8U)%3B%3C%2FP%3E%3CP%3Eeel_status_t%20HostFlash_Program(%20uint32_t%20%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%80%81%20uint8_t*%20%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%80%81%20uint32_t%20%E9%95%B7%E3%81%95)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20uint32_t%20%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%95%E3%83%A9%E3%82%B0%3B%3CBR%20%2F%3E%20C40_Ip_StatusType%20C40_Ip_Status%20%3D%20STATUS_C40_IP_ERROR%20%3B%3CBR%20%2F%3E%20const%20uint8_t%20*DataPtr8%20%3D%20%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3B%3CBR%20%2F%3E%20volatile%20uint32_t%20DataTemp32%3B%20%2F*%20%E9%9D%9E%E6%95%B4%E5%88%97%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%82%92%E6%89%B1%E3%81%86%E9%9A%9B%E3%81%AB%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%A9%E3%81%AE%E6%9C%80%E9%81%A9%E5%8C%96%E3%82%92%E9%98%B2%E3%81%90%20*%2F%3C%2FP%3E%3CP%3E%3CBR%20%2F%3E%2F*%20%E6%93%8D%E4%BD%9C%E3%82%92%E7%B5%82%E4%BA%86%2F%E4%B8%AD%E6%AD%A2%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AFHV%E3%82%92%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~FLASH_MCR_EHV_MASK%3B%3CBR%20%2F%3E%20%2F*ERS%E3%81%A8PGM%E3%83%93%E3%83%83%E3%83%88%E3%82%92%E3%82%AF%E3%83%AA%E3%82%A2%E3%81%99%E3%82%8B*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~(FLASH_MCR_PGM_MASK%7CFLASH_MCR_ESS_MASK%7CFLASH_MCR_ERS_MASK)%3B%3CBR%20%2F%3E%20%2F*%20%E3%82%A6%E3%82%A9%E3%83%83%E3%83%81%E3%83%89%E3%83%83%E3%82%B0%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%82%92%E7%84%A1%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~FLASH_MCR_WDIE_MASK%3B%3CBR%20%2F%3E%20%2F*%20DONE%E3%83%95%E3%83%A9%E3%82%B0%E3%81%8C%E3%82%BB%E3%83%83%E3%83%88%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%80%81%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E8%A6%81%E6%B1%82%E3%81%AF%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%81%BE%E3%81%9B%E3%82%93%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~FLASH_MCR_PECIE_MASK%3B%3CBR%20%2F%3E%20%2F*%20%E3%83%A1%E3%82%A4%E3%83%B3%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9%E3%81%AE%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%95%E3%83%A9%E3%82%B0%E3%82%92%E3%82%AF%E3%83%AA%E3%82%A2%E3%81%97%E3%81%BE%E3%81%99%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCRS%20%26amp%3B%3D%20FLASH_MCRS_EER_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_SBC_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_AEE_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_EEE_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_RVE_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_RRE_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_RWE_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_PES_MASK%20%7C%20%5C%3CBR%20%2F%3E%20FLASH_MCRS_PEP_MASK%20%3B%3C%2FP%3E%3CP%3E%3CBR%20%2F%3E%2F*%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AF%20Utest%20%E3%81%AB%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%20*%2F%3CBR%20%2F%3E%20Fsld_PFlashInstance-%26gt%3BPFCBLKU_SPELOCK%5B0u%5D%20%26amp%3B%3D%20FSLD_MASK_UNLOCK_UTEST_SECTOR%3B%3C%2FP%3E%3CP%3E%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%99%E3%82%8B%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%20*%2F%3CBR%20%2F%3E%20Fsld_PFlashInstance-%26gt%3BPFCPGM_PEADR_L%20%3D%20%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3B%3C%2FP%3E%3CP%3EDataTemp32%20%3D%20(uint32_t)DataPtr8%5B0U%5D%20%26lt%3B%26lt%3B%200U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B1U%5D%20%26lt%3B%26lt%3B%208U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B2U%5D%20%26lt%3B%26lt%3B%2016U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B3U%5D%20%26lt%3B%26lt%3B%2024U%3B%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BDATA%5B0U%5D%20%3D%20DataTemp32%3B%3C%2FP%3E%3CP%3EDataTemp32%20%3D%20(uint32_t)DataPtr8%5B4U%5D%20%26lt%3B%26lt%3B%200U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B5U%5D%20%26lt%3B%26lt%3B%208U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B6U%5D%20%26lt%3B%26lt%3B%2016U%3B%3CBR%20%2F%3E%20DataTemp32%20%7C%3D%20(uint32_t)DataPtr8%5B7U%5D%20%26lt%3B%26lt%3B%2024U%3B%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BDATA%5B1U%5D%20%3D%20DataTemp32%3B%3C%2FP%3E%3CP%3E%2F*%20%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E6%93%8D%E4%BD%9C%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%7C%3D%20FLASH_MCR_PGM_MASK%3B%3CBR%20%2F%3E%20%2F*%20%E5%86%85%E9%83%A8%E6%B6%88%E5%8E%BB%2F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9%E3%82%92%E9%96%8B%E5%A7%8B%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%7C%3D%20FLASH_MCR_EHV_MASK%3B%3C%2FP%3E%3CP%3Ewhile%20(0U%20%3D%3D%20((Fsld_FlashInstance-%26gt%3BMCRS%20%26amp%3B%20FLASH_MCRS_DONE_MASK)%20%26gt%3B%26gt%3B%20FLASH_MCRS_DONE_SHIFT))%3CBR%20%2F%3E%20%7B%3C%2FP%3E%3CP%3E%7D%3C%2FP%3E%3CP%3E%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%95%E3%83%A9%E3%82%B0%20%3D%20Fsld_FlashInstance-%26gt%3BMCRS%20%26amp%3B%20(FLASH_MCRS_PEG_MASK%20%7C%20FLASH_MCRS_PEP_MASK%20%7C%20FLASH_MCRS_PES_MASK)%3B%3CBR%20%2F%3E%20%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%2F%E6%B6%88%E5%8E%BB%E6%AD%A3%E5%B8%B8%3A%20PEG%20%E3%81%AE%E3%81%BF%20%3D%201%3B%20PEP%20%E3%81%A8%20PES%20%E3%81%AF%E4%B8%A1%E6%96%B9%E3%81%A8%E3%82%82%200%20%E3%81%A7%E3%81%82%E3%82%8B%E5%BF%85%E8%A6%81%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%20*%2F%3CBR%20%2F%3E%20if%20(FLASH_MCRS_PEG_MASK%20%3D%3D%20%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%95%E3%83%A9%E3%82%B0)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20C40_Ip_Status%20%3D%20STATUS_C40_IP_SUCCESS%3B%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%20C40_Ip_Status%20%3D%20STATUS_C40_IP_ERROR%3B%3CBR%20%2F%3E%20%7D%3C%2FP%3E%3CP%3E%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E6%93%8D%E4%BD%9C%E3%82%92%E7%B5%82%E4%BA%86%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~FLASH_MCR_EHV_MASK%3B%3CBR%20%2F%3E%20%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E6%93%8D%E4%BD%9C%E3%82%92%E7%B5%82%E4%BA%86%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%20Fsld_FlashInstance-%26gt%3BMCR%20%26amp%3B%3D%20~FLASH_MCR_PGM_MASK%3B%3C%2FP%3E%3CP%3E%3CBR%20%2F%3E%2F*%20%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B8%E3%83%A7%E3%83%96%E3%81%8C%E7%B5%82%E4%BA%86%E3%81%97%E3%81%9F%E3%81%8B%E3%80%81%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AE%E7%B5%82%E3%82%8F%E3%82%8A%E3%81%AB%E5%88%B0%E9%81%94%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E6%99%82%E9%96%93%E3%81%A7%E3%81%99%20*%2F%3CBR%20%2F%3E%20Fsld_PFlashInstance-%26gt%3BPFCBLKU_SPELOCK%5B0u%5D%20%7C%3D%20FSLD_MASK_LOCK_UTEST_SECTOR%3B%3C%2FP%3E%3CP%3Eif(%20STATUS_C40_IP_SUCCESS%20%3D%3D%20C40_Ip_Status%20)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20EEL_OK%20%E3%82%92%E8%BF%94%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%20EEL_ERR_PARAMETER%20%E3%82%92%E8%BF%94%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%20%7D%3C%2FP%3E%3CBR%20%2F%3E%3CUL%3E%3CLI%3E%3CSTRONG%3E%23%E3%82%B1%E3%83%BC%E3%82%B91%3C%2FSTRONG%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3ERAM%E3%81%AB%E9%96%A2%E6%95%B0%E3%82%92%E9%85%8D%E7%BD%AE%E3%81%97%E3%81%AA%E3%81%84%E3%81%A8%E3%83%90%E3%82%A4%E3%83%88%E3%81%8C%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BE%E3%82%8C%E3%82%8B%E3%81%8C%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E7%9B%B4%E5%BE%8C%E3%81%ABMCU%E3%81%8C%3CSTRONG%3E%E3%83%8F%E3%83%BC%E3%83%89%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%3C%2FSTRONG%3E%E3%82%92%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E3%80%82%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22atranzillo93_1-1700150470064.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_1-1700150470064.png%22%20style%3D%22width%3A%20214px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_1-1700150470064.png%22%20style%3D%22width%3A%20214px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F250268iF383B650A1D0AD57%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22atranzillo93_1-1700150470064.png%22%20alt%3D%22atranzillo93_1-1700150470064.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSTRONG%3E%23CASE%202%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3E%E9%96%A2%E6%95%B0%E3%82%92%20RAM%20%E3%81%AB%E9%85%8D%E7%BD%AE%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E3%83%8F%E3%83%BC%E3%83%89%E9%9A%9C%E5%AE%B3%E3%81%AF%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8C%E3%80%81%3CSTRONG%3E%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E6%93%8D%E4%BD%9C%E3%81%AF%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FSTRONG%3EUTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AB%E3%83%90%E3%82%A4%E3%83%88%E3%81%8C%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BE%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22atranzillo93_2-1700150752156.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_2-1700150752156.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_2-1700150752156.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F250269iD89405B8A1F48111%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22atranzillo93_2-1700150752156.png%22%20alt%3D%22atranzillo93_2-1700150752156.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E6%89%8B%E4%BC%9D%E3%81%A3%E3%81%A6%E3%82%82%E3%82%89%E3%81%88%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2250816%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2250816%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%23%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F226337%22%20target%3D%22_blank%22%3E%40BhushanM%3C%2FA%3E%E5%95%8F%E9%A1%8C%E3%81%AE%E8%A7%A3%E6%B1%BA%E7%AD%96%E3%81%AF%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8B%3F%20%E3%82%82%E3%81%97%E8%A6%8B%E3%81%A4%E3%81%8B%E3%81%A3%E3%81%9F%E3%82%89%E3%80%81%E3%81%A9%E3%81%86%E3%81%8B%E3%81%94%E5%8D%94%E5%8A%9B%E3%82%92%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1787341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1787341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%3A%3C%2FP%3E%3CP%3EPGM%20%E3%83%93%E3%83%83%E3%83%88%E3%81%A8%20EHV%20%E3%83%93%E3%83%83%E3%83%88%E3%81%AE%E8%A8%AD%E5%AE%9A%E3%82%92%202%20%E3%81%A4%E3%81%AE%E7%95%B0%E3%81%AA%E3%82%8B%20API%20%E3%81%AB%E5%88%86%E9%9B%A2%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1785210%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1785210%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%3C%2FP%3E%3CP%3E%E9%81%85%E5%BB%B6%E3%81%A7%E3%81%AF%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%83%8F%E3%83%BC%E3%83%89%E9%9A%9C%E5%AE%B3%E3%81%AF%E8%A7%A3%E6%B1%BA%E3%81%95%E3%82%8C%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%3C%2FP%3E%3CP%3E%E4%BD%95%E3%81%8B%E6%8F%90%E6%A1%88%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%82%A2%E3%83%8B%E3%82%BF%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1771524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1771524%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E7%A7%81%E3%82%82%E5%90%8C%E3%81%98%E5%95%8F%E9%A1%8C%E3%81%AB%E7%9B%B4%E9%9D%A2%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%E3%81%AF%E3%80%81RAM%20%E3%81%A8%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E9%A0%98%E5%9F%9F%E3%81%AE%E4%B8%A1%E6%96%B9%E3%81%AE%E5%AE%9F%E8%A1%8C%E3%81%A7%E3%83%8F%E3%83%BC%E3%83%89%E9%9A%9C%E5%AE%B3%E3%82%92%E8%B5%B7%E3%81%93%E3%81%99%E4%BA%88%E5%AE%9A%E3%81%A7%E3%81%97%E3%81%9F%E3%80%82%3C%2FP%3E%3CP%3E%E3%80%8CC40_Ip_MainInterfaceWrite%E3%80%8D%E9%96%A2%E6%95%B0%E5%86%85%E3%81%AB5ms%E3%81%AE%E9%81%85%E5%BB%B6%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E4%BB%A5%E4%B8%8B%E3%82%88%E3%82%8A%E3%81%94%E5%8F%82%E7%85%A7%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%3C%2FP%3E%3CP%3E(TRUE%20%3D%3D%20C40_Ip_bAsync)%20%E3%81%AE%E5%A0%B4%E5%90%88%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%20%2F*%20%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%82%92%E9%96%8B%E5%A7%8B%20*%2F%3CBR%20%2F%3E%20C40_Ip_FlashAccessCalloutStart()%3B%3CBR%20%2F%3E%20HAL_DelayMs(5)%3B%3CBR%20%2F%3E%20%2F*%20%E5%86%85%E9%83%A8%E6%B6%88%E5%8E%BB%2F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9%E3%82%92%E9%96%8B%E5%A7%8B%20*%2F%3CBR%20%2F%3E%20C40_Ip_pFlashBaseAddress-%26gt%3BMCR%20%7C%3D%20FLASH_MCR_EHV_MASK%3B%3CBR%20%2F%3E%20HAL_DelayMs(5)%3B%3CBR%20%2F%3E%20%7D%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AE%E5%A0%B4%E5%90%88%E3%81%AF%E3%80%81%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E9%A0%98%E5%9F%9F%E3%81%8B%E3%82%89%E5%AE%9F%E8%A1%8C%E3%81%97%E3%81%A6%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CBR%20%2F%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1760923%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1760923%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%82%8F%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E6%A4%9C%E8%A8%BC%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1760922%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1760922%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F206920%22%20target%3D%22_blank%22%3E%40atranzillo93%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E3%81%93%E3%81%AE%E5%8B%95%E4%BD%9C%E3%81%8C%20C40_Ip_Example%20%E3%81%A7%E3%82%82%E7%99%BA%E7%94%9F%E3%81%99%E3%82%8B%E3%81%8B%E3%81%A9%E3%81%86%E3%81%8B%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1760907%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1760907%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%E3%83%B4%E3%82%A1%E3%83%8D%E3%83%83%E3%82%B5%3C%2FP%3E%3CP%3E%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%82%E3%81%86%E3%81%A8%E3%81%97%E3%81%9F%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AF%E7%A9%BA%E3%81%AA%E3%81%AE%E3%81%A7%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AF%E5%8A%B9%E6%9E%9C%E7%9A%84%E3%81%AB%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BE%E3%82%8C%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20(DONE%20%E3%83%93%E3%83%83%E3%83%88)%20%E3%81%AE%E8%AA%AD%E3%81%BF%E5%8F%96%E3%82%8A%E4%B8%AD%E3%81%AB%E3%83%8F%E3%83%BC%E3%83%89%20%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E4%BB%8A%E3%81%AF%E6%98%8E%E3%82%89%E3%81%8B%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%E3%81%A8%E6%80%9D%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E5%95%8F%E9%A1%8C%E3%81%AB%E6%B7%BB%E4%BB%98%E3%81%97%E3%81%9F%E7%94%BB%E5%83%8F%E3%82%92%E3%81%94%E8%A6%A7%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%3C%2FP%3E%3CP%3E%E3%82%A2%E3%83%B3%E3%83%8A%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1760904%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1760904%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F206920%22%20target%3D%22_blank%22%3E%40atranzillo93%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E5%89%8D%E8%BF%B0%E3%81%AE%E3%81%A8%E3%81%8A%E3%82%8A%E3%80%81UTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AF%20OTP%20(%E3%83%AF%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%A0%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%83%96%E3%83%AB)%20%E3%81%A7%E3%81%99%E3%80%82SO%E3%80%81%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AB%E3%81%99%E3%81%A7%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%93%E3%81%A7%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AF%E3%80%81%3CSPAN%3E%E6%96%B0%E3%81%97%E3%81%84%E3%83%87%E3%83%BC%E3%82%BF%E3%82%84%E6%A7%8B%E6%88%90%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AF%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%E5%88%9D%E3%82%81%E3%81%A6%E3%83%87%E3%83%BC%E3%82%BF%E3%81%8C%E6%AD%A3%E5%B8%B8%E3%81%AB%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BE%E3%82%8C%E3%81%9F%E5%A0%B4%E5%90%88%E3%80%81%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E3%81%9D%E3%81%AE%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AB%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E3%81%9F%E3%82%81%E3%80%81%E3%83%8F%E3%83%BC%E3%83%89%20%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1760714%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1760714%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%E3%83%B4%E3%82%A1%E3%83%8D%E3%83%83%E3%82%B5%E3%80%82%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EAPI%20%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99%E3%81%A8%E3%80%81MCU%20%E3%81%AF%E3%83%8F%E3%83%BC%E3%83%89%20%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E7%8A%B6%E6%85%8B%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20%3D%20%3CSTRONG%3EC40_Ip_MainInterfaceWriteStatus()%3B%3C%2FSTRONG%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%82%A2%E3%83%B3%E3%83%8A%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1759157%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1759157%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F206920%22%20target%3D%22_blank%22%3E%40atranzillo93%3C%2FA%3E%3C%2FP%3E%0A%3CP%3EUTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81MCU%20%E3%81%AF%E3%83%8F%E3%83%BC%E3%83%89%20%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E7%8A%B6%E6%85%8B%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B%3F%E3%81%9D%E3%82%8C%E3%81%A8%E3%82%82%E3%80%81MCU%20%E3%81%8C%20ostFlash1_Program(void)%20%E3%82%92%E7%B5%82%E4%BA%86%E3%81%97%E3%81%9F%E3%81%A8%E3%81%8D%E3%81%AB%E3%81%93%E3%82%8C%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1758993%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1758993%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%E3%83%B4%E3%82%A1%E3%83%8D%E3%83%83%E3%82%B5%E3%80%82%3C%2FP%3E%3CP%3E%E5%90%8C%E3%81%98%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E8%A9%A6%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81UTEST%20%E3%81%B8%E3%81%AE%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%AF%E6%AD%A3%E3%81%97%E3%81%8F%E5%AE%9F%E8%A1%8C%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E7%9B%B4%E5%BE%8C%E3%81%AB%3CSTRONG%3EMCU%20%E3%81%8C%E3%83%8F%E3%83%BC%E3%83%89%20%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%3C%2FSTRONG%3E%E3%80%82%3C%2FP%3E%3CP%3Eeel_status_t%3CSTRONG%3E%E3%83%9B%E3%82%B9%E3%83%88%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A51_%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%3C%2FSTRONG%3E(void)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20C40_Ip_StatusType%20%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%3B%3CBR%20%2F%3E%20uint32_t%20DcfRecord%5B2%5D%20%3D%20%7B0x00000100%2C%200x00100004%7D%3B%3CBR%20%2F%3E%20%2F*%20%E3%82%BF%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88%20%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%8C%E6%9C%AA%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E7%8A%B6%E6%85%8B%E3%81%AE%E5%A0%B4%E5%90%88%E3%80%81%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%20%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%82%92%E9%96%8B%E5%A7%8B%E3%81%97%E3%81%BE%E3%81%99%E3%80%82*%2F%3CBR%20%2F%3E%20if(%20(*(uint32_t%20*)0x1B000770%20%3D%3D%200xFFFFFFFF)%20%26amp%3B%26amp%3B%20(*(uint32_t%20*)(0x1B000770%2B4)%20%3D%3D%200xFFFFFFFF)%20)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%99%E3%82%8B%E5%89%8D%E3%81%AB%20UTEST%20%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E9%A0%98%E5%9F%9F%E3%81%AE%E3%83%AD%E3%83%83%E3%82%AF%E3%82%92%E8%A7%A3%E9%99%A4%E3%81%99%E3%82%8B%E5%BF%85%E8%A6%81%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82*%2F%3CBR%20%2F%3E%20Fsld_PFlashInstance-%26gt%3BPFCBLKU_SPELOCK%5B0u%5D%20%26amp%3B%3D%200xFFFFFFF0U%3B%3C%2FP%3E%3CP%3E%2F*%20%E6%96%B0%E3%81%97%E3%81%84%20DCF%20%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%20UTEST%20%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%81%AB%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%BE%E3%81%99%E3%80%82*%2F%3CBR%20%2F%3E%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20%3D%20C40_Ip_MainInterfaceWrite(0x1B000770%2C%208%2C%20(uint8_t%20*)(%26amp%3BDcfRecord%5B0%5D))%3B%3CBR%20%2F%3E%20%2F*%20Cache_Ip_CleanByAddr(CACHE_IP_DATA%2C%20TRUE%2C%20%E3%82%BF%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%2C%208)%3B%20*%2F%3C%2FP%3E%3CP%3E%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%20%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9%E3%81%8C%E5%AE%8C%E4%BA%86%E3%81%99%E3%82%8B%E3%81%BE%E3%81%A7%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%20%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%92%E3%83%9D%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%97%E3%81%BE%E3%81%99%E3%80%82*%2F%3CBR%20%2F%3E%E3%81%99%E3%82%8B%20%7B%3CBR%20%2F%3E%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20%3D%20C40_Ip_MainInterfaceWriteStatus()%3B%3CBR%20%2F%3E%20%7D%20while(STATUS_C40_IP_SUCCESS%20!%3D%20flashStatus)%3B%3C%2FP%3E%3CP%3E%2F*%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%BE%8C%E3%81%ABUTEST%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E9%A0%98%E5%9F%9F%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%E5%BF%85%E8%A6%81%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82*%2F%3CBR%20%2F%3E%20Fsld_PFlashInstance-%26gt%3BPFCBLKU_SPELOCK%5B0u%5D%20%7C%3D%200x0000000FU%3B%3CBR%20%2F%3E%20%7D%3C%2FP%3E%3CP%3Eif(%20STATUS_C40_IP_SUCCESS%20%3D%3D%20%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20EEL_OK%20%E3%82%92%E8%BF%94%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%20EEL_ERR_PARAMETER%20%E3%82%92%E8%BF%94%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%20%7D%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22atranzillo93_0-1700215264747.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700215264747.png%22%20style%3D%22width%3A%20359px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700215264747.png%22%20style%3D%22width%3A%20359px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F250412i93F0E12B246608FE%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22atranzillo93_0-1700215264747.png%22%20alt%3D%22atranzillo93_0-1700215264747.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ECAN%E7%90%86%E7%94%B1%E3%82%92%E8%AA%AC%E6%98%8E%E3%81%97%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%81%E3%82%A2%E3%83%B3%E3%83%8A%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1758643%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1758643%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F206920%22%20target%3D%22_blank%22%3E%40atranzillo93%3C%2FA%3E%3C%2FP%3E%0A%3CP%3EUTEST%E3%82%BB%E3%82%AF%E3%82%BF%E3%81%AFOTP(One%20Time%20Programmable%EF%BC%9A%E4%B8%80%E5%9B%9E%E9%99%90%E3%82%8A%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E5%8F%AF%E8%83%BD)%E3%81%A7%E3%81%99%E3%80%82%E3%81%9D%E3%81%AE%E3%81%9F%E3%82%81%E3%80%81%E6%B6%88%E5%8E%BB%E6%93%8D%E4%BD%9C%E3%81%8C%E8%A8%B1%E5%8F%AF%E3%81%95%E3%82%8C%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%E6%96%B0%E3%81%97%E3%81%84%E3%83%87%E3%83%BC%E3%82%BF%E3%82%84%E8%A8%AD%E5%AE%9A%E3%81%AE%E8%BF%BD%E5%8A%A0%E3%80%81%E3%81%8A%E3%82%88%E3%81%B3%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E8%AA%AD%E3%81%BF%E5%8F%96%E3%82%8A%E3%81%AE%E3%81%BF%E3%81%8C%E5%8F%AF%E8%83%BD%E3%81%A7%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3EUTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AB%E5%BF%85%E8%A6%81%E3%81%AA%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%AF%E3%80%81%E4%BB%96%E3%81%AE%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%99%E3%82%8B%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%A8%E5%90%8C%E3%81%98%E3%81%A7%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E4%BB%A5%E4%B8%8B%E3%81%AE%E6%8A%95%E7%A8%BF%E3%82%92%E3%81%94%E7%A2%BA%E8%AA%8D%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E4%BB%96%E3%81%AE%E3%83%88%E3%83%94%E3%83%83%E3%82%AF%E3%81%8B%E3%82%89%E3%81%AE%E3%82%82%E3%81%AE%E3%81%A7%E3%81%99%E3%81%8C%E3%80%81UTEST%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%E6%96%B9%E6%B3%95%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%AC%E6%98%8E%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FS32K-Knowledge-Base%2FS32K3-Restrict-the-debug-access-with-a-password-when-HSE-is-not%2Fta-p%2F1735073%22%20target%3D%22_blank%22%3E%5BS32K3%5D%20HSE%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%AA%E3%81%84%E5%A0%B4%E5%90%88%E3%80%81%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E3%81%A7%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%82%92%E5%88%B6%E9%99%90%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EBR%3C%2FP%3E%0A%3CP%3E%E3%83%B4%E3%82%A7%E3%82%A4%E3%83%B3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1758518%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1758518%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%81%93%E3%81%A7%E3%83%8F%E3%83%BC%E3%83%89%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E3%81%8C%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%3A%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22atranzillo93_0-1700151260382.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700151260382.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22atranzillo93_0-1700151260382.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F250271i1375EF472424A68C%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22atranzillo93_0-1700151260382.png%22%20alt%3D%22atranzillo93_0-1700151260382.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2317869%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20%5BS32K3xx%5D%20-%20Program%20a%20byte%20in%20UTEST%20sector%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2317869%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CBR%20%2F%3E%E3%80%8CC40_Ip_MainInterfaceWrite%E3%80%8DAPI%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6Utest%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%E3%81%93%E3%81%A8%E3%81%AF%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%81%8B%3F%E7%A7%81%E3%81%AFC40_Ip_MainInterfaceWrite%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6API%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%80%81%220x1B001BF8%22%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81%E3%83%8F%E3%83%BC%E3%83%89%E3%83%95%E3%82%A9%E3%83%BC%E3%83%AB%E3%83%88%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82FLS_STATUS%20FLS_WriteMemoryRange(uint32_t%20SectorID%2C%20uint32_t%20WriteAddress%2C%20%5C%3CBR%20%2F%3E%20uint8_t%20*%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%83%87%E3%83%BC%E3%82%BF%E3%80%81uint32_t%20%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B5%E3%82%A4%E3%82%BA)%3CBR%20%2F%3E%20%7B%3CBR%20%2F%3E%20FLS_STATUS%20%E6%88%BB%E3%82%8A%E5%80%A4%20%3D%20FLS_STATUS_ERROR%3B%3CBR%20%2F%3E%20C40_Ip_StatusType%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20%3D%20C40_IP_STATUS_SECTOR_PROTECTED%3B%3CBR%20%2F%3E%20C40_Ip_StatusType%20%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89%20%3D%20C40_IP_STATUS_SUCCESS%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%20%2F*%20%E3%83%AD%E3%83%83%E3%82%AF%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AF%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E8%A7%A3%E9%99%A4%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%20%3D%20C40_Ip_GetLock(%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID)%3B%3CBR%20%2F%3E%20(C40_IP_STATUS_SECTOR_PROTECTED%20%3D%3D%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9)%20%E3%81%AE%E5%A0%B4%E5%90%88%20%7B%3CBR%20%2F%3E%20%2F*%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%AE%E3%83%AD%E3%83%83%E3%82%AF%E3%82%92%E8%A7%A3%E9%99%A4%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89%20%3D%20C40_Ip_ClearLock(%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81GET_CPU_CORE_ID)%3B%3CBR%20%2F%3E%20%7D%20%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%20%7B%3CBR%20%2F%3E%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89%20%3D%20C40_IP_STATUS_SUCCESS%3B%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%20%2F*%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%81%8C%E3%83%AD%E3%83%83%E3%82%AF%E8%A7%A3%E9%99%A4%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AF%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%92%E7%B6%9A%E8%A1%8C%E3%81%97%E3%81%BE%E3%81%99%20*%2F%3CBR%20%2F%3E%20if%20(C40_IP_STATUS_SUCCESS%20%3D%3D%20%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%20%7B%3CBR%20%2F%3E%20%2F*%20%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80%20*%2F%3CBR%20%2F%3E%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89%20%3D%20C40_Ip_MainInterfaceWrite(%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B5%E3%82%A4%E3%82%BA%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%83%87%E3%83%BC%E3%82%BF%E3%80%81GET_CPU_CORE_ID)%3B%3CBR%20%2F%3E%20if%20(C40_IP_STATUS_SUCCESS%20%3D%3D%20%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%20%7B%3CBR%20%2F%3E%20%2F*%20%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%8C%E5%AE%8C%E4%BA%86%E3%81%99%E3%82%8B%E3%81%BE%E3%81%A7%E5%BE%85%E6%A9%9F%E3%81%97%E3%81%BE%E3%81%99%20*%2F%3CBR%20%2F%3E%20(C40_IP_STATUS_BUSY%20%3D%3D%20(ReturnCode%3D%20C40_Ip_MainInterfaceWriteStatus())%20%E3%81%AE%E9%96%93)%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%20if%20(C40_IP_STATUS_SUCCESS%20!%3D%20%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%20%7B%3CBR%20%2F%3E%20PASLOG(ZONE_ERR%2C%20__func__%20%2C%20%22%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%3A%20%25d%E3%80%81%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3A%200x%25X%E3%80%81%E3%82%B5%E3%82%A4%E3%82%BA%3A%20%25d%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%3A%20%25d%22%2C%20%5C%3CBR%20%2F%3E%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B5%E3%82%A4%E3%82%BA%E3%80%81%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89)%3B%3CBR%20%2F%3E%20%7D%20%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%20%7B%3CBR%20%2F%3E%20RetSts%20%3D%20FLS_STATUS_OK%3B%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%3CBR%20%2F%3E%20%2F*%20%E4%BB%A5%E5%89%8D%E3%81%AB%E3%83%AD%E3%83%83%E3%82%AF%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%AF%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%20(C40_IP_STATUS_SECTOR_PROTECTED%20%3D%3D%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9)%20%E3%81%AE%E5%A0%B4%E5%90%88%20%7B%3CBR%20%2F%3E%20%2F*%20%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BC%E3%82%92%E3%83%AD%E3%83%83%E3%82%AF%E3%81%99%E3%82%8B%20*%2F%3CBR%20%2F%3E%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89%20%3D%20C40_Ip_SetLock(%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81GET_CPU_CORE_ID)%3B%3CBR%20%2F%3E%20if%20(C40_IP_STATUS_SUCCESS%20%3D%3D%20%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%20%7B%3CBR%20%2F%3E%20RetSts%20%3D%20FLS_STATUS_OK%3B%3CBR%20%2F%3E%20%7D%20%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%20%7B%3CBR%20%2F%3E%20PASLOG(ZONE_ERR%2C%20__func__%20%2C%20%22%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%3A%20%25d%E3%80%81%E3%83%AD%E3%83%83%E3%82%AF%E8%A6%81%E6%B1%82%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%AE%E8%A8%AD%E5%AE%9A%3A%20%25d%22%E3%80%81%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%3B%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%20%7D%20%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%20%7B%3CBR%20%2F%3E%20PASLOG(ZONE_ERR%2C%20__func__%20%2C%20%22%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%3A%20%25d%E3%80%81%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3A%200x%25X%E3%80%81%E3%82%B5%E3%82%A4%E3%82%BA%3A%20%25d%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E8%A6%81%E6%B1%82%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%3A%20%25d%22%2C%20%5C%3CBR%20%2F%3E%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%80%81%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%B5%E3%82%A4%E3%82%BA%E3%80%81%E6%88%BB%E3%82%8A%E3%82%B3%E3%83%BC%E3%83%89)%3B%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%20%7D%20%E3%81%9D%E3%82%8C%E4%BB%A5%E5%A4%96%20%7B%3CBR%20%2F%3E%20PASLOG(ZONE_ERR%2C%20__func__%20%2C%20%22%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%3A%20%25d%E3%80%81%E3%83%AD%E3%83%83%E3%82%AF%E3%82%AF%E3%83%AA%E3%82%A2%E8%A6%81%E6%B1%82%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%3A%20%25d%22%E3%80%81%E3%82%BB%E3%82%AF%E3%82%BF%E3%83%BCID%E3%80%81%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89)%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%20%7D%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%BB%E3%82%8A%E5%80%A4%20(RetSts)%3B%3CBR%20%2F%3E%20%7D%3C%2FLINGO-BODY%3E