こんにちは、
RT1170はQSPIフラッシュのMX25L51245Gをサポートしていますか?
このチップに対応するために、設定ファイル「evkmimxrt1170_flexspi_nor_config.c」を変更する必要がありますか?
もしSOなら、どうやって修正すればいいのでしょうか?どのパラメータを変更すべきでしょうか?
ごサポートありがとうございます!
よろしくお願いいたします。
世界ジュニア会議
M4フラッシュ初期化(RAM):
#define FLASH_DUMMY_CYCLES 0x08
const flexspi_nor_config_t qspiflash_config = {
.memConfig =
{
.tag = FLEXSPI_CFG_BLK_TAG 、
.version = FLEXSPI_CFG_BLK_VERSION、
.readSampleClksrc= kFlexSPIReadSampleClk_LoopbackFromDqsPad 、
.csHoldTime = 3u、
.csSetupTime = 3u、
.controllerMiscOption = 0x10、
.deviceType = kFlexSpiDeviceType_SerialNOR 、
.sflashPadType = kSerialFlash_4Pads、
.serialClkFreq = kFlexSpiSerialClk_133MHz , //オクマハタシオルルサkFlexSpiSerialClk_120MHz
.sflashA1Size = 64u * 1024u * 1024u, //64MB
//彼女のアシリスタQE = 1. ROM 1 回 WREN'i ( seq 3) kendisi gonderir 、 sonra 4*12' yi 0x40 ile calistirr 。
//NXP RT1170 EVK'daki configCmd kalibin aynisi
.configCmdEnable = 1u、
.configModeType[0] = kDeviceConfigCmdType_Generic、
.configCmdSeqs[0] = {.seqNum = 1u, .seqId = 12u, .reserved = 0u}, //1 taneシーケンスcalistir : 4*12
// asagiyi 0x20ヤピンカカリスマディドグルダンメモリハタシンダパトラディメインエゲルメデン
.configCmdArgs[0] = 0x40u, //WRITE_SDR'nin gonderecegi byte: SR = 0x40
.lookupTable =
{
[0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x6C, RADDR_SDR, FLEXSPI_1PAD, 0x20), //6Ch QREAD4B: komut ve 4 byte adres tek hattan (1-1-4)
[1] = FLEXSPI_LUT_SEQ(DUMMY_SDR, FLEXSPI_4PAD, FLASH_DUMMY_CYCLES, READ_SDR, FLEXSPI_4PAD, 0x04), //8 ダミーベール、データ 4ハットン
[4 * 1 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x05, READ_SDR, FLEXSPI_1PAD, 0x04), //ステータスregini 0x05'den okuyacam (WIP = bit0)
[4 * 3 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x06, STOP, FLEXSPI_1PAD, 0x0), //書き込み完了
//アサギダキニヨルマアリンカゲルツェクテンシルメディ
[4 * 5 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x21, RADDR_SDR, FLEXSPI_1PAD, 0x20), //4 バイトアドレスalarak 4 kbセクターsilecem
[4 * 8 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xDC, RADDR_SDR, FLEXSPI_1PAD, 0x20)、 //64 kbブロック サイセム(アプリ デkullanmiyoruz )
[4 * 9 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x12, RADDR_SDR, FLEXSPI_1PAD, 0x20), //4バイト1ページyazacam
[4 * 9 + 1] = FLEXSPI_LUT_SEQ(WRITE_SDR, FLEXSPI_1PAD, 0x04, STOP, FLEXSPI_1PAD, 0x0), // datayi gonder ve bitir (WEL'i フラッシュ プログラム ビットインスkendisi temizler )
[4 * 11 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xC7, STOP, FLEXSPI_1PAD, 0x0), // tum flashi silecem (app'de kullanmiyoruz )
[4 * 12 + 0] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x01, WRITE_SDR, FLEXSPI_1PAD, 0x01), //WRSR + tam 1 バイト (configCmdArgs[0]): sacece SR yazilir , CR'ye dokunmaz
// seq 6/7 bos : ROM API サスペンド/レジュームkullanmiyor
}、
}、
.pageSize = 256u、
.sectorSize = 4u * 1024u、
.ipcmdSerialClkFreq = 0x1、
.blockSize = 64u * 1024u、
.isUniformBlockSize = true、
};
こんにちは、
NXP Semiconductors製品へのご関心と、皆様にお仕えできる機会をいただき、ありがとうございます。
1) RT1170はQSPIフラッシュのMX25L51245Gをサポートしていますか?
――はい。
2) このチップに合わせて設定ファイル「evkmimxrt1170_flexspi_nor_config.c」を変更する必要がありますか?
はい、下記のコードをご参照ください。
const flexspi_nor_config_t qspiflash_config = {
.memConfig =
{
.tag = FLEXSPI_CFG_BLK_TAG,
.version = FLEXSPI_CFG_BLK_VERSION,
.readSampleClksrc=kFlexSPIReadSampleClk_LoopbackFromDqsPad,
.csHoldTime = 3u,
.csSetupTime = 3u,
// Enable DDR mode, Wordaddassable, Safe configuration, Differential clock
.sflashPadType = kSerialFlash_4Pads,
.serialClkFreq = kFlexSpiSerialClk_100MHz,
.sflashA1Size = 64u * 1024u * 1024u,
.lookupTable =
{
// Read LUTs
FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xEB, RADDR_SDR, FLEXSPI_4PAD, 0x20),
FLEXSPI_LUT_SEQ(DUMMY_SDR, FLEXSPI_4PAD, 0x06, READ_SDR, FLEXSPI_4PAD, 0x04),
},
},
.pageSize = 256u,
.sectorSize = 4u * 1024u,
.blockSize = 256u * 1024u,
.isUniformBlockSize = false,
};
良い一日をお過ごしください。
TIC
-------------------------------------------------------------------------------
注記:
この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう!
- 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています
もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。
-------------------------------------------------------------------------------