2023-02-14 04:30 AM
Hi I am testing a STM32H745I-DISCO
I am setting QSPI from ioc file by referring to the example code provided by ST
Below is the example qspi configuration code
QSPIHandle.Instance = QUADSPI;
/* QSPI initialization */
/* ClockPrescaler set to 1, so QSPI clock = 200MHz / (1+1) = 100MHz */
QSPIHandle.Init.ClockPrescaler = 1;
QSPIHandle.Init.FifoThreshold = 1;
QSPIHandle.Init.SampleShifting = QSPI_SAMPLE_SHIFTING_HALFCYCLE;
QSPIHandle.Init.FlashSize = QSPI_FLASH_SIZE;
QSPIHandle.Init.ChipSelectHighTime = QSPI_CS_HIGH_TIME_3_CYCLE;
QSPIHandle.Init.ClockMode = QSPI_CLOCK_MODE_0;
QSPIHandle.Init.FlashID = QSPI_FLASH_ID_2;
QSPIHandle.Init.DualFlash = QSPI_DUALFLASH_ENABLE;
sCommand.InstructionMode = QSPI_INSTRUCTION_1_LINE;
sCommand.AddressSize = QSPI_ADDRESS_32_BITS;
sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
sCommand.DdrMode = QSPI_DDR_MODE_DISABLE;
sCommand.DdrHoldHalfCycle = QSPI_DDR_HHC_ANALOG_DELAY;
sCommand.SIOOMode = QSPI_SIOO_INST_EVERY_CMD;
Below is a picture of how I set the parameter values in the ioc file
Parameter values that configure QSPIHandle exist in the ioc file. However, the parameter values that set sCommand are not visible in the ioc file.
How should I set the parameter values of sCommand in the ioc file?
Solved! Go to Solution.
2023-02-14 09:45 AM
Signal timings are configured in the library functions for QSPI operation. For proper configuration, you need to use the datasheet, first download the example from CubeIDE and see how it works. As a rule, the write and erase functions work without problems. The main problem is to correctly set up the dummy clocks in the read function. I recommend that you start learning how QSPI works by connecting one flash memory.
2023-02-14 09:45 AM
Signal timings are configured in the library functions for QSPI operation. For proper configuration, you need to use the datasheet, first download the example from CubeIDE and see how it works. As a rule, the write and erase functions work without problems. The main problem is to correctly set up the dummy clocks in the read function. I recommend that you start learning how QSPI works by connecting one flash memory.