在线时间8 小时
UID4035622
注册时间2024-8-30
NXP金币134
该用户从未签到
注册会员

- 积分
- 77
- 最后登录
- 2025-8-12
|

楼主 |
发表于 2025-8-5 11:53:51
|
显示全部楼层
XIP文件夹下evkmimxrt1060_flexspi_nor_config.c中的LUTS配置如下
.memConfig =
{
.tag = FLEXSPI_CFG_BLK_TAG,
.version = FLEXSPI_CFG_BLK_VERSION,
.readSampleClkSrc = kFlexSPIReadSampleClk_LoopbackFromDqsPad,
.csHoldTime = 3u,
.csSetupTime = 3u,
.controllerMiscOption = (1u << kFlexSpiMiscOffset_SafeConfigFreqEnable),
.deviceType = kFlexSpiDeviceType_SerialNOR,
.sflashPadType = kSerialFlash_4Pads,
.serialClkFreq = kFlexSpiSerialClk_120MHz,
.sflashA1Size = 4u * 1024u * 1024u,
.lookupTable =
{
// Read LUTs
[0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xEB, RADDR_SDR, FLEXSPI_4PAD, 0x18),
[1] = FLEXSPI_LUT_SEQ(DUMMY_SDR, FLEXSPI_4PAD, 0x06, READ_SDR, FLEXSPI_4PAD, 0x04),
// Read Status LUTs
[4 * 1 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x05, READ_SDR, FLEXSPI_1PAD, 0x04),
// Write Enable LUTs
[4 * 3 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x06, STOP, FLEXSPI_1PAD, 0x0),
// Erase Sector LUTs
[4 * 5 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x20, RADDR_SDR, FLEXSPI_1PAD, 0x18),
// Erase Block LUTs
[4 * 8 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xD8, RADDR_SDR, FLEXSPI_1PAD, 0x18),
// Pape Program LUTs
[4 * 9 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x02, RADDR_SDR, FLEXSPI_1PAD, 0x18),
[4 * 9 + 1] = FLEXSPI_LUT_SEQ(WRITE_SDR, FLEXSPI_1PAD, 0x04, STOP, FLEXSPI_1PAD, 0x0),
// Erase Chip LUTs
[4 * 11 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x60, STOP, FLEXSPI_1PAD, 0x0),
// /* 00 - 标准读取命令 (SPI 模式) 7*/
// //[4 * NOR_CMD_LUT_SEQ_IDX_READ_NORMAL] =
// [4 * 7] =
// FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x03, READ_SDR, FLEXSPI_1PAD, 0x18),
//
// /* 01 - 快速读取命令 (SPI 模式) */
// //[4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST] =
// [4 * 13] =
// FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x0B, RADDR_SDR, FLEXSPI_1PAD, 0x18) |
// FLEXSPI_LUT_SEQ(DUMMY_SDR, FLEXSPI_1PAD, 0x04, READ_SDR, FLEXSPI_1PAD, 0x04),
// /* 02 - 快速读取双输出命令 (Dual SPI 模式) */
// [4 * kFLEXSPI_CommandIndex_ReadFastDual] =
// FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x3B, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18) |
// FLEXSPI_LUT_SEQ(kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_1PAD, 0x04, kFLEXSPI_Command_READ_SDR, kFLEXSPI_2PAD, 0x04),
// /* 03 - 快速读取四输出命令 (Quad SPI 模式) */
// [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) |
// FLEXSPI_LUT_SEQ(kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_1PAD, 0x06, kFLEXSPI_Command_READ_SDR, kFLEXSPI_4PAD, 0x04),
/* 13 - 读取设备 ID */
[4 * 12] =
FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x9F, READ_SDR, FLEXSPI_1PAD, 0x04) |
FLEXSPI_LUT_SEQ(READ_SDR, FLEXSPI_1PAD, 0x04, READ_SDR, FLEXSPI_1PAD, 0x04),
// /* 14 - 使能四字节地址模式 */
// [4 * NOR_CMD_LUT_SEQ_IDX_ENTERQPI] =
// FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xB7, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0x00),
//
// /* 15 - 禁用四字节地址模式 */
// [4 * NOR_CMD_LUT_SEQ_IDX_EXITQPI] =
// FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xE9, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0x00),
}, |
|