How to use the RT1064 on-chip flash as NVM

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to use the RT1064 on-chip flash as NVM

How to use the RT1064 on-chip flash as NVM

Introduction

The RT1064 is the only Crossover MCU from the RT family that comes with an on-chip flash, it has a 4MB Winbond W25Q32JV memory. It's important to remark that it's not an internal memory but an on-chip flash connected to the RT1064 through the FlexSPI2 interface. Having this flash eliminates the need of an external memory.

Although the intended use of the on-chip flash is to store your application and do XiP, there might be cases where you would like to use some space of this memory as NVM. This document will explain how to modify one of the SDK example projects to achieve this. 

Prerequisites

  • RT1064-EVK 
  • The latest SDK which you can download from the following link: Welcome | MCUXpresso SDK Builder.
  • In this document, I will use MCUXpresso IDE but you can use the IDE of your preference. The modifications that you need to make are the same despite the IDE that you are using. 

Importing the SDK example 

The RT1064-EVK comes with two external flash memories, 512 Mb Hyper Flash and 64 Mb QSPI Flash. The RT1064-SDK includes two example projects that demonstrate how to use any of these two external flash memories as NVM. In this document, we will take as a base one of these examples to modify it to use the on-chip flash as NVM.

Once you downloaded and imported the SDK into MCUXpresso IDE, you will need to import the example flexspi_nor_polling_transfer into your workspace. 

pastedImage_17.png

 

Modifying the SDK example

The external NOR Flash memory of the EVK is connected to the RT1064 through the FlexSPI1 interface. Due to this, the example project that we just imported initializes the FlexSPI1 interface pins. In our case, we want to use the on-chip flash that is connected through the FlexSPI2 instance, since we will boot from this memory, the ROM bootloader will configure the pins of this FlexSPI interface. So, in the function BOARD_InitPins we can delete all the pins that were related to the FlexSPI1 interface. At the end your function should look like the following: 

void BOARD_InitPins(void) {
 CLOCK_EnableClock(kCLOCK_Iomuxc); /* iomuxc clock (iomuxc_clk_enable): 0x03u */

 IOMUXC_SetPinMux(
 IOMUXC_GPIO_AD_B0_12_LPUART1_TX, /* GPIO_AD_B0_12 is configured as LPUART1_TX */
 0U); /* Software Input On Field: Input Path is determined by functionality */
 IOMUXC_SetPinMux(
 IOMUXC_GPIO_AD_B0_13_LPUART1_RX, /* GPIO_AD_B0_13 is configured as LPUART1_RX */
 0U); /* Software Input On Field: Input Path is determined by functionality */
 /* Software Input On Field: Force input path of pad GPIO_SD_B1_11 */
 IOMUXC_SetPinConfig(
 IOMUXC_GPIO_AD_B0_12_LPUART1_TX, /* GPIO_AD_B0_12 PAD functional properties : */
 0x10B0u); /* Slew Rate Field: Slow Slew Rate
 Drive Strength Field: R0/6
 Speed Field: medium(100MHz)
 Open Drain Enable Field: Open Drain Disabled
 Pull / Keep Enable Field: Pull/Keeper Enabled
 Pull / Keep Select Field: Keeper
 Pull Up / Down Config. Field: 100K Ohm Pull Down
 Hyst. Enable Field: Hysteresis Disabled */
 IOMUXC_SetPinConfig(
 IOMUXC_GPIO_AD_B0_13_LPUART1_RX, /* GPIO_AD_B0_13 PAD functional properties : */
 0x10B0u); /* Slew Rate Field: Slow Slew Rate
 Drive Strength Field: R0/6
 Speed Field: medium(100MHz)
 Open Drain Enable Field: Open Drain Disabled
 Pull / Keep Enable Field: Pull/Keeper Enabled
 Pull / Keep Select Field: Keeper
 Pull Up / Down Config. Field: 100K Ohm Pull Down
 Hyst. Enable Field: Hysteresis Disabled */
}
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Function flexspi_nor_flash_init initializes the FlexSPI interface but in our case, the ROM bootloader already did this for us. So we need to make some modifications to this function as well. The only things that we will need from this function are to update the LUT and to do a software reset of the FlexSPI2 interface. At the end your function should look like the following: 

void flexspi_nor_flash_init(FLEXSPI_Type *base)
{
 /* Update LUT table. */
 FLEXSPI_UpdateLUT(base, 0, customLUT, CUSTOM_LUT_LENGTH);

 /* Do software reset. */
 FLEXSPI_SoftwareReset(base);
}
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Inside the file app.h, we need to change some macros since now we will use a different memory and a different FlexSPI interface. The following macros are the ones that you need to modify: 

MacroBeforeAfterObservations
EXAMPLE_FLEXPIFLEXSPIFLEXSPI2On-chip flash is connected through FlexSPI2 interface 
FLASH_SIZE0x20000x200The size of the on-chip flash is different from the external NOR flash 
EXAMPLE_FLEXSPI_AMBA_BASEFlexSPI_AMBA_BASEFlexSPI2_AMBA_BASEOn-chip flash is connected through FlexSPI2 interface 
EXAMPLE_SECTOR4100The size of the on-chip flash is less than the external NOR flash, hence we will decrease the sector size to avoid erasing our application 

Everything else in this file remains the same. 

Finally, there are two changes that we need to make in the customLUT. To understand these changes you need to analyze the datasheets of the memories. But in the end, the two modifications are the followings: 

  1. Erase sector command of the on-chip flash is 0x20 instead of 0xD7. 
  2. Exchange the FLEXSPI command index for NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD and NOR_CMD_LUT_SEQ_IDX_READ_NORMAL to align with XIP settings.

At the end your customLUT should look like the following: 

const uint32_t customLUT[CUSTOM_LUT_LENGTH] = {
 /* Fast read quad mode - SDR */
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x6B, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD + 1] = FLEXSPI_LUT_SEQ(
 kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_4PAD, 0x08, kFLEXSPI_Command_READ_SDR, kFLEXSPI_4PAD, 0x04),

 /* Fast read mode - SDR */
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x0B, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST + 1] = FLEXSPI_LUT_SEQ(
 kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_1PAD, 0x08, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04),

 /* Normal read mode -SDR */
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_NORMAL] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x03, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
 [4 * NOR_CMD_LUT_SEQ_IDX_READ_NORMAL + 1] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Read extend parameters */
 [4 * NOR_CMD_LUT_SEQ_IDX_READSTATUS] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x81, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04),

 /* Write Enable */
 [4 * NOR_CMD_LUT_SEQ_IDX_WRITEENABLE] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x06, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Erase Sector */
 [4 * NOR_CMD_LUT_SEQ_IDX_ERASESECTOR] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x20, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),

 /* Page Program - single mode */
 [4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_SINGLE] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x02, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
 [4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_SINGLE + 1] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_1PAD, 0x04, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Page Program - quad mode */
 [4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x32, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
 [4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD + 1] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_4PAD, 0x04, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Read ID */
 [4 * NOR_CMD_LUT_SEQ_IDX_READID] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x9F, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04),

 /* Enable Quad mode */
 [4 * NOR_CMD_LUT_SEQ_IDX_WRITESTATUSREG] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x01, kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_1PAD, 0x04),

 /* Enter QPI mode */
 [4 * NOR_CMD_LUT_SEQ_IDX_ENTERQPI] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x35, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Exit QPI mode */
 [4 * NOR_CMD_LUT_SEQ_IDX_EXITQPI] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_4PAD, 0xF5, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

 /* Read status register */
 [4 * NOR_CMD_LUT_SEQ_IDX_READSTATUSREG] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x05, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04),

 /* Erase whole chip */
 [4 * NOR_CMD_LUT_SEQ_IDX_ERASECHIP] =
 FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xC7, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),
};

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

These are all the changes that you need to make to the flexspi_nor_polling_transfer to use the on-chip flash as NVM instead of the external NOR flash. 

Important notes

It's important to mention that you cannot write, erase or read the on-chip flash while making XiP from this memory. So, you need to reallocate all the instructions that read, write and erase the flash to the internal FlexRAM. Fortunately, the example that we use as a base (flexspi_nor_polling_transfer) already does this. This is accomplished thanks to the files located in the linkscritps folder. To learn more about how this works, please refer to section 17.15 of the MCUXpresso IDE User Guide. 

Additional resources

Datasheet of the on-chip memory (Winbond W25Q32JV). 

MCUXpresso IDE User Guide. 

I hope that you find this document useful! 

Regards, 

Victor 

Labels (1)
Comments

Hi

Note also that the uTasker i.MX RT project has inherent file system (uFileSystem or FAT) and parameter storage (uParameterSystem) support for the internal QSPI flash in the 1064, as well as for all external QSPI and Hyper flash parts of other i.MX RT parts. The project also emulates the FlexSPI interface and the flash parts operation so that all driver and application code can be tested and debugged in Visual Studio, which makes such work and general product development easier and increases product development efficiency.

Regards

Mark

[uTasker project developer for Kinetis and i.MX RT]

%3CLINGO-SUB%20id%3D%22lingo-sub-1123381%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHow%20to%20use%20the%20RT1064%20on-chip%20flash%20as%20NVM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1123381%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EIntroduction%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EThe%20RT1064%20is%20the%20only%20Crossover%20MCU%20from%20the%20RT%20family%20that%20comes%20with%20an%20on-chip%20flash%2C%20it%20has%20a%204MB%20Winbond%20W25Q32JV%20memory.%20It's%20important%20to%20remark%20that%20it's%20not%20an%20internal%20memory%20but%20an%20on-chip%20flash%20connected%20to%20the%20RT1064%20through%20the%20FlexSPI2%20interface.%20Having%20this%20flash%20eliminates%20the%20need%20of%20an%20external%20memory.%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EAlthough%20the%20intended%20use%20of%20the%20on-chip%20flash%20is%20to%20store%20your%20application%20and%20do%20XiP%2C%20there%20might%20be%20cases%20where%20you%20would%20like%20to%20use%20some%20space%20of%20this%20memory%20as%20NVM.%20This%20document%20will%20explain%20how%20to%20modify%20one%20of%20the%20SDK%20example%20projects%20to%20achieve%20this.%26nbsp%3B%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EPrerequisites%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CUL%3E%3CLI%3ERT1064-EVK%26nbsp%3B%3C%2FLI%3E%3CLI%3EThe%20latest%20SDK%20which%20you%20can%20download%20from%20the%20following%20link%3A%26nbsp%3B%3CA%20class%3D%22link-titled%22%20href%3D%22https%3A%2F%2Fmcuxpresso.nxp.com%2Fen%2Fwelcome%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%20title%3D%22https%3A%2F%2Fmcuxpresso.nxp.com%2Fen%2Fwelcome%22%20target%3D%22_blank%22%3EWelcome%20%7C%20MCUXpresso%20SDK%20Builder%3C%2FA%3E.%3C%2FLI%3E%3CLI%3EIn%20this%20document%2C%20I%20will%20use%20MCUXpresso%20IDE%20but%20you%20can%20use%20the%20IDE%20of%20your%20preference.%20The%20modifications%20that%20you%20need%20to%20make%20are%20the%20same%20despite%20the%20IDE%20that%20you%20are%20using.%26nbsp%3B%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EImporting%20the%20SDK%20example%26nbsp%3B%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EThe%20RT1064-EVK%20comes%20with%20two%20external%20flash%20memories%2C%26nbsp%3B512%20Mb%20Hyper%20Flash%20and%2064%20Mb%20QSPI%20Flash.%20The%20RT1064-SDK%20includes%20two%20example%20projects%20that%20demonstrate%20how%20to%20use%20any%20of%20these%20two%20external%20flash%20memories%20as%20NVM.%20In%20this%20document%2C%20we%20will%20take%20as%20a%20base%20one%20of%20these%20examples%20to%20modify%20it%20to%20use%20the%20on-chip%20flash%20as%20NVM.%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EOnce%20you%20downloaded%20and%20imported%20the%20SDK%20into%20MCUXpresso%20IDE%2C%20you%20will%20need%20to%20import%20the%20example%26nbsp%3B%3CEM%3E%3CSTRONG%3Eflexspi_nor_polling_transfer%3C%2FSTRONG%3E%3C%2FEM%3E%20into%20your%20workspace.%26nbsp%3B%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22pastedImage_17.png%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22pastedImage_17.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F109787i465DD5860EF96D43%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22pastedImage_17.png%22%20alt%3D%22pastedImage_17.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EModifying%20the%20SDK%20example%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EThe%20external%20NOR%20Flash%20memory%20of%20the%20EVK%20is%20connected%20to%20the%20RT1064%20through%20the%20FlexSPI1%20interface.%20Due%20to%20this%2C%20the%20example%20project%20that%20we%20just%20imported%20initializes%20the%20FlexSPI1%20interface%20pins.%20In%20our%20case%2C%20we%20want%20to%20use%20the%20on-chip%20flash%20that%20is%20connected%20through%20the%20FlexSPI2%20instance%2C%20since%20we%20will%20boot%20from%20this%20memory%2C%20the%20ROM%20bootloader%20will%20configure%20the%20pins%20of%20this%20FlexSPI%20interface.%20So%2C%20in%20the%20function%20%3CSTRONG%3EBOARD_InitPins%3C%2FSTRONG%3E%20we%20can%20delete%20all%20the%20pins%20that%20were%20related%20to%20the%20FlexSPI1%20interface.%20At%20the%20end%20your%20function%20should%20look%20like%20the%20following%3A%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22language-c%20line-numbers%22%3E%3CCODE%3E%3CSPAN%20class%3D%22keyword%20token%22%3Evoid%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22token%20function%22%3EBOARD_InitPins%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%3CSPAN%20class%3D%22keyword%20token%22%3Evoid%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%7B%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3ECLOCK_EnableClock%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkCLOCK_Iomuxc%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20iomuxc%20clock%20(iomuxc_clk_enable)%3A%200x03u%20*%2F%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22token%20function%22%3EIOMUXC_SetPinMux%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20IOMUXC_GPIO_AD_B0_12_LPUART1_TX%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20GPIO_AD_B0_12%20is%20configured%20as%20LPUART1_TX%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22number%20token%22%3E0U%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Software%20Input%20On%20Field%3A%20Input%20Path%20is%20determined%20by%20functionality%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EIOMUXC_SetPinMux%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20IOMUXC_GPIO_AD_B0_13_LPUART1_RX%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20GPIO_AD_B0_13%20is%20configured%20as%20LPUART1_RX%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22number%20token%22%3E0U%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Software%20Input%20On%20Field%3A%20Input%20Path%20is%20determined%20by%20functionality%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Software%20Input%20On%20Field%3A%20Force%20input%20path%20of%20pad%20GPIO_SD_B1_11%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EIOMUXC_SetPinConfig%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20IOMUXC_GPIO_AD_B0_12_LPUART1_TX%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20GPIO_AD_B0_12%20PAD%20functional%20properties%20%3A%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22number%20token%22%3E0x10B0u%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Slew%20Rate%20Field%3A%20Slow%20Slew%20Rate%0A%20Drive%20Strength%20Field%3A%20R0%2F6%0A%20Speed%20Field%3A%20medium(100MHz)%0A%20Open%20Drain%20Enable%20Field%3A%20Open%20Drain%20Disabled%0A%20Pull%20%2F%20Keep%20Enable%20Field%3A%20Pull%2FKeeper%20Enabled%0A%20Pull%20%2F%20Keep%20Select%20Field%3A%20Keeper%0A%20Pull%20Up%20%2F%20Down%20Config.%20Field%3A%20100K%20Ohm%20Pull%20Down%0A%20Hyst.%20Enable%20Field%3A%20Hysteresis%20Disabled%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EIOMUXC_SetPinConfig%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20IOMUXC_GPIO_AD_B0_13_LPUART1_RX%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20GPIO_AD_B0_13%20PAD%20functional%20properties%20%3A%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22number%20token%22%3E0x10B0u%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Slew%20Rate%20Field%3A%20Slow%20Slew%20Rate%0A%20Drive%20Strength%20Field%3A%20R0%2F6%0A%20Speed%20Field%3A%20medium(100MHz)%0A%20Open%20Drain%20Enable%20Field%3A%20Open%20Drain%20Disabled%0A%20Pull%20%2F%20Keep%20Enable%20Field%3A%20Pull%2FKeeper%20Enabled%0A%20Pull%20%2F%20Keep%20Select%20Field%3A%20Keeper%0A%20Pull%20Up%20%2F%20Down%20Config.%20Field%3A%20100K%20Ohm%20Pull%20Down%0A%20Hyst.%20Enable%20Field%3A%20Hysteresis%20Disabled%20*%2F%3C%2FSPAN%3E%0A%3CSPAN%20class%3D%22punctuation%20token%22%3E%7D%3C%2FSPAN%3E%0A%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%3CSPAN%20class%3D%22line-numbers-rows%22%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%3C%2FP%3E%3CP%3EFunction%20%3CEM%3E%3CSTRONG%3Eflexspi_nor_flash_init%3C%2FSTRONG%3E%3C%2FEM%3E%20initializes%20the%20FlexSPI%20interface%20but%20in%20our%20case%2C%20the%20ROM%20bootloader%20already%20did%20this%20for%20us.%20So%20we%20need%20to%20make%20some%20modifications%20to%20this%20function%20as%20well.%20The%20only%20things%20that%20we%20will%20need%20from%20this%20function%20are%20to%20update%20the%20LUT%20and%20to%20do%20a%20software%20reset%20of%20the%20FlexSPI2%20interface.%20At%20the%20end%20your%20function%20should%20look%20like%20the%20following%3A%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22language-c%20line-numbers%22%3E%3CCODE%3E%3CSPAN%20class%3D%22keyword%20token%22%3Evoid%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22token%20function%22%3Eflexspi_nor_flash_init%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EFLEXSPI_Type%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3Ebase%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%0A%3CSPAN%20class%3D%22punctuation%20token%22%3E%7B%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Update%20LUT%20table.%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_UpdateLUT%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3Ebase%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20customLUT%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20CUSTOM_LUT_LENGTH%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Do%20software%20reset.%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_SoftwareReset%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3Ebase%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%0A%3CSPAN%20class%3D%22punctuation%20token%22%3E%7D%3C%2FSPAN%3E%0A%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%3CSPAN%20class%3D%22line-numbers-rows%22%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%3C%2FP%3E%3CP%3EInside%20the%20file%20%3CEM%3E%3CSTRONG%3Eapp.h%3C%2FSTRONG%3E%3C%2FEM%3E%2C%20we%20need%20to%20change%20some%20macros%20since%20now%20we%20will%20use%20a%20different%20memory%20and%20a%20different%20FlexSPI%20interface.%20The%20following%20macros%20are%20the%20ones%20that%20you%20need%20to%20modify%3A%26nbsp%3B%3C%2FP%3E%3CTABLE%20class%3D%22j-table%20jiveBorder%22%20style%3D%22border%3A%201px%20solid%20%23c6c6c6%3B%22%20width%3D%22100%25%22%3E%3CTHEAD%3E%3CTR%20style%3D%22background-color%3A%20%23efefef%3B%20height%3A%2025px%3B%22%3E%3CTH%20style%3D%22width%3A%2014%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EMacro%3C%2FTH%3E%3CTH%20style%3D%22width%3A%2012%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EBefore%3C%2FTH%3E%3CTH%20style%3D%22width%3A%2010%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EAfter%3C%2FTH%3E%3CTH%20style%3D%22width%3A%2043%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EObservations%3C%2FTH%3E%3C%2FTR%3E%3C%2FTHEAD%3E%3CTBODY%3E%3CTR%20style%3D%22height%3A%2025px%3B%22%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20text-align%3A%20left%3B%20height%3A%2025px%3B%22%3EEXAMPLE_FLEXPI%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2012%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EFLEXSPI%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2010%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EFLEXSPI2%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2043%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EOn-chip%20flash%20is%20connected%20through%20FlexSPI2%20interface%26nbsp%3B%3C%2FTD%3E%3C%2FTR%3E%3CTR%20style%3D%22height%3A%2025px%3B%22%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20text-align%3A%20left%3B%20height%3A%2025px%3B%22%3E%3CSPAN%3EFLASH_SIZE%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2012%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3E%3CSPAN%3E0x2000%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2010%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3E0x200%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2043%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EThe%20size%20of%20the%20on-chip%20flash%20is%20different%20from%20the%20external%20NOR%20flash%26nbsp%3B%3C%2FTD%3E%3C%2FTR%3E%3CTR%20style%3D%22height%3A%2025px%3B%22%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20text-align%3A%20left%3B%20height%3A%2025px%3B%22%3E%3CSPAN%3EEXAMPLE_FLEXSPI_AMBA_BASE%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2012%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3E%3CSPAN%3EFlexSPI_AMBA_BASE%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2010%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EFlexSPI2_AMBA_BASE%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2043%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3E%3CSPAN%3EOn-chip%20flash%20is%20connected%20through%20FlexSPI2%20interface%26nbsp%3B%3C%2FSPAN%3E%3C%2FTD%3E%3C%2FTR%3E%3CTR%20style%3D%22height%3A%2025px%3B%22%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20height%3A%2025px%3B%20text-align%3A%20left%3B%20vertical-align%3A%20middle%3B%22%3E%3CSPAN%3EEXAMPLE_SECTOR%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20height%3A%2025px%3B%20text-align%3A%20center%3B%20vertical-align%3A%20middle%3B%22%3E%3CSPAN%3E4%3C%2FSPAN%3E%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2014%25%3B%20height%3A%2025px%3B%20text-align%3A%20center%3B%20vertical-align%3A%20middle%3B%22%3E100%3C%2FTD%3E%3CTD%20style%3D%22width%3A%2043%25%3B%20text-align%3A%20center%3B%20height%3A%2025px%3B%22%3EThe%20size%20of%20the%20on-chip%20flash%20is%20less%20than%20the%20external%20NOR%20flash%2C%20hence%20we%20will%20decrease%20the%20sector%20size%20to%20avoid%20erasing%20our%20application%26nbsp%3B%3C%2FTD%3E%3C%2FTR%3E%3C%2FTBODY%3E%3C%2FTABLE%3E%3CP%3EEverything%20else%20in%20this%20file%20remains%20the%20same.%26nbsp%3B%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EFinally%2C%20there%20are%20two%20changes%20that%20we%20need%20to%20make%20in%20the%20%3CSTRONG%3EcustomLUT%3C%2FSTRONG%3E.%20To%20understand%20these%20changes%20you%20need%20to%20analyze%20the%20datasheets%20of%20the%20memories.%20But%20in%20the%20end%2C%20the%20two%20modifications%20are%20the%20followings%3A%26nbsp%3B%3C%2FP%3E%3COL%3E%3CLI%3EErase%20sector%20command%20of%20the%20on-chip%20flash%20is%200x20%20instead%20of%200xD7.%26nbsp%3B%3C%2FLI%3E%3CLI%3EExchange%20the%20FLEXSPI%20command%20index%20for%20NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD%20and%20NOR_CMD_LUT_SEQ_IDX_READ_NORMAL%20to%20align%20with%20XIP%20settings.%3C%2FLI%3E%3C%2FOL%3E%3CP%3EAt%20the%20end%20your%20customLUT%20should%20look%20like%20the%20following%3A%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22language-c%20line-numbers%22%3E%3CCODE%3E%3CSPAN%20class%3D%22keyword%20token%22%3Econst%3C%2FSPAN%3E%20uint32_t%20customLUT%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3ECUSTOM_LUT_LENGTH%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%7B%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Fast%20read%20quad%20mode%20-%20SDR%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x6B%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD%20%3CSPAN%20class%3D%22operator%20token%22%3E%2B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E1%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20kFLEXSPI_Command_DUMMY_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_4PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x08%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_4PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Fast%20read%20mode%20-%20SDR%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_FAST%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x0B%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_FAST%20%3CSPAN%20class%3D%22operator%20token%22%3E%2B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E1%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3E%0A%20kFLEXSPI_Command_DUMMY_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x08%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Normal%20read%20mode%20-SDR%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_NORMAL%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x03%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READ_NORMAL%20%3CSPAN%20class%3D%22operator%20token%22%3E%2B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E1%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Read%20extend%20parameters%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READSTATUS%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x81%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Write%20Enable%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_WRITEENABLE%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x06%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Erase%20Sector%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_ERASESECTOR%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x20%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Page%20Program%20-%20single%20mode%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_SINGLE%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x02%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_SINGLE%20%3CSPAN%20class%3D%22operator%20token%22%3E%2B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E1%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_WRITE_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Page%20Program%20-%20quad%20mode%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x32%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_RADDR_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x18%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD%20%3CSPAN%20class%3D%22operator%20token%22%3E%2B%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E1%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_WRITE_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_4PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Read%20ID%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READID%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x9F%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Enable%20Quad%20mode%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_WRITESTATUSREG%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x01%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_WRITE_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Enter%20QPI%20mode%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_ENTERQPI%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x35%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Exit%20QPI%20mode%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_EXITQPI%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_4PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0xF5%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Read%20status%20register%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_READSTATUSREG%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x05%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_READ_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0x04%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%0A%20%3CSPAN%20class%3D%22comment%20token%22%3E%2F*%20Erase%20whole%20chip%20*%2F%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22punctuation%20token%22%3E%5B%3C%2FSPAN%3E%3CSPAN%20class%3D%22number%20token%22%3E4%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E*%3C%2FSPAN%3E%20NOR_CMD_LUT_SEQ_IDX_ERASECHIP%3CSPAN%20class%3D%22punctuation%20token%22%3E%5D%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22operator%20token%22%3E%3D%3C%2FSPAN%3E%0A%20%3CSPAN%20class%3D%22token%20function%22%3EFLEXSPI_LUT_SEQ%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E(%3C%2FSPAN%3EkFLEXSPI_Command_SDR%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0xC7%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_Command_STOP%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20kFLEXSPI_1PAD%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%20%3CSPAN%20class%3D%22number%20token%22%3E0%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E)%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%2C%3C%2FSPAN%3E%0A%3CSPAN%20class%3D%22punctuation%20token%22%3E%7D%3C%2FSPAN%3E%3CSPAN%20class%3D%22punctuation%20token%22%3E%3B%3C%2FSPAN%3E%0A%0A%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%E2%80%8D%3CSPAN%20class%3D%22line-numbers-rows%22%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3CSPAN%3E%E2%80%8D%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3EThese%20are%20all%20the%20changes%20that%20you%20need%20to%20make%20to%20the%26nbsp%3Bflexspi_nor_polling_transfer%20to%20use%20the%20on-chip%20flash%20as%20NVM%20instead%20of%20the%20external%20NOR%20flash.%26nbsp%3B%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EImportant%20notes%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EIt's%20important%20to%20mention%20that%20you%20cannot%20write%2C%20erase%20or%20read%20the%20on-chip%20flash%20while%20making%20XiP%20from%20this%20memory.%20So%2C%20you%20need%20to%20reallocate%20all%20the%20instructions%20that%20read%2C%20write%20and%20erase%20the%20flash%20to%20the%20internal%20FlexRAM.%20Fortunately%2C%20the%20example%20that%20we%20use%20as%20a%20base%20(flexspi_nor_polling_transfer)%20already%20does%20this.%20This%20is%20accomplished%20thanks%20to%20the%20files%20located%20in%20the%20linkscritps%20folder.%20To%20learn%20more%20about%20how%20this%20works%2C%20please%20refer%20to%20section%2017.15%20of%20the%20MCUXpresso%20IDE%20User%20Guide.%26nbsp%3B%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2022px%3B%22%3E%3CSTRONG%3EAdditional%20resources%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fwww.winbond.com%2Fresource-files%2Fw25q32jv%2520spi%2520revc%252008302016.pdf%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%20target%3D%22_blank%22%3EDatasheet%20of%20the%20on-chip%20memory%20(Winbond%20W25Q32JV).%26nbsp%3B%3C%2FA%3E%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdocs%2Fen%2Fuser-guide%2FMCUXpresso_IDE_User_Guide.pdf%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%20target%3D%22_blank%22%3EMCUXpresso%20IDE%20User%20Guide.%26nbsp%3B%3C%2FA%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EI%20hope%20that%20you%20find%20this%20document%20useful!%26nbsp%3B%3C%2FP%3E%3CP%3ERegards%2C%26nbsp%3B%3C%2FP%3E%3CP%3EVictor%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1123381%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3Ei.MXRT%20106x%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1123382%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20How%20to%20use%20the%20RT1064%20on-chip%20flash%20as%20NVM%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1123382%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3ENote%20also%20that%20the%20uTasker%20i.MX%20RT%20project%20has%20inherent%20file%20system%20(uFileSystem%20or%20FAT)%20and%20parameter%20storage%20(uParameterSystem)%20support%20for%20the%20internal%20QSPI%20flash%20in%20the%201064%2C%20as%20well%20as%20for%20all%20external%20QSPI%20and%20Hyper%20flash%20parts%20of%20other%20i.MX%20RT%20parts.%20The%20project%20also%20emulates%20the%20FlexSPI%20interface%20and%20the%20flash%20parts%20operation%20so%20that%20all%20driver%20and%20application%20code%20can%20be%20tested%20and%20debugged%20in%20Visual%20Studio%2C%20which%20makes%20such%20work%20and%20general%20product%20development%20easier%20and%20increases%20product%20development%20efficiency.%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3ERegards%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%3EMark%3C%2FP%3E%3CP%3E%3CEM%3E%5BuTasker%20project%20developer%20for%20Kinetis%20and%20i.MX%20RT%5D%3C%2FEM%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E
100% helpful (1/1)
Version history
Last update:
‎09-10-2020 02:58 AM
Updated by: