41   HAL_QSPI_IRQHandler(&hqspi);
 
  115   _hqspi->Instance = QUADSPI;
 
  119   if (HAL_QSPI_DeInit(
_hqspi) != HAL_OK)
 
  125   if (HAL_QSPI_Init(
_hqspi) != HAL_OK)
 
  173     HAL_StatusTypeDef sts;
 
  179     _hqspi->Instance = QUADSPI;
 
  191     if ((sts = HAL_QSPI_DeInit(
_hqspi)) != HAL_OK)
 
  209     HAL_StatusTypeDef sts;
 
  210     QSPI_CommandTypeDef sCommand = {0};
 
  217   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  219   sCommand.AddressMode       = QSPI_ADDRESS_4_LINES;
 
  220   sCommand.AddressSize       = QSPI_ADDRESS_24_BITS;
 
  221   sCommand.Address           = ReadAddr;
 
  222   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_4_LINES;
 
  223     sCommand.AlternateBytesSize = QSPI_ALTERNATE_BYTES_8_BITS;
 
  224     sCommand.AlternateBytes      = 0;
 
  225   sCommand.DataMode          = QSPI_DATA_4_LINES;
 
  227   sCommand.NbData            = Size;
 
  228   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  229   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  230   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  233     if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  247     HAL_StatusTypeDef sts;
 
  249     QSPI_CommandTypeDef sCommand = {0};
 
  250   uint32_t end_addr, current_size, current_addr;
 
  256   if (current_size > Size)
 
  260   current_addr = WriteAddr;
 
  261   end_addr = WriteAddr + Size;
 
  268   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  270   sCommand.AddressMode       = QSPI_ADDRESS_1_LINE;
 
  271   sCommand.AddressSize       = QSPI_ADDRESS_24_BITS;
 
  272   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  273   sCommand.DataMode          = QSPI_DATA_1_LINE;
 
  274   sCommand.DummyCycles       = 0;
 
  275   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  276   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  277   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  281     sCommand.Address = current_addr;
 
  282     sCommand.NbData  = current_size;
 
  289     if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  301     current_addr += current_size;
 
  302     pData += current_size;
 
  304   } 
while (current_addr < end_addr);
 
  314     QSPI_CommandTypeDef sCommand = {0};
 
  321   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  323   sCommand.AddressMode       = QSPI_ADDRESS_1_LINE;
 
  324   sCommand.AddressSize       = QSPI_ADDRESS_24_BITS;
 
  326   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  327   sCommand.DataMode          = QSPI_DATA_NONE;
 
  328   sCommand.DummyCycles       = 0;
 
  329   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  330   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  331   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  338     if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  355     QSPI_CommandTypeDef sCommand = {0};
 
  365   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  367   sCommand.AddressMode       = QSPI_ADDRESS_1_LINE;
 
  368   sCommand.AddressSize       = QSPI_ADDRESS_24_BITS;
 
  370   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  371   sCommand.DataMode          = QSPI_DATA_NONE;
 
  372   sCommand.DummyCycles       = 0;
 
  373   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  374   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  375   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  382     if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  393     QSPI_CommandTypeDef sCommand = {0};
 
  400   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  402   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  403   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  404   sCommand.DataMode          = QSPI_DATA_NONE;
 
  405   sCommand.DummyCycles       = 0;
 
  406   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  407   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  408   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  415     if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  427     HAL_StatusTypeDef sts;
 
  428     QSPI_CommandTypeDef sCommand = {0};
 
  432   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  434   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  435   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  436   sCommand.DataMode          = QSPI_DATA_1_LINE;
 
  437   sCommand.DummyCycles       = 0;
 
  439   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  440   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  441   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  444   if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  448   if ((sts = HAL_QSPI_Receive(
_hqspi, ®1, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  455   if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  459   if ((sts = HAL_QSPI_Receive(
_hqspi, ®2, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  462     *Reg = (reg2 << 8) + reg1;
 
  471     HAL_StatusTypeDef sts;
 
  473     QSPI_CommandTypeDef sCommand = {0};
 
  488   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  490   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  491   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  492   sCommand.DataMode          = QSPI_DATA_1_LINE;
 
  493   sCommand.DummyCycles       = 0;
 
  495   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  496   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  497   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  500     if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  543     QSPI_CommandTypeDef sCommand = {0};
 
  544     QSPI_MemoryMappedTypeDef sMemMappedCfg = {0};
 
  547     if (
_hqspi->State == HAL_QSPI_STATE_BUSY_MEM_MAPPED)
 
  551   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  553   sCommand.AddressMode       = QSPI_ADDRESS_4_LINES;
 
  554   sCommand.AddressSize       = QSPI_ADDRESS_24_BITS;
 
  555   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_4_LINES;
 
  556     sCommand.AlternateBytesSize = QSPI_ALTERNATE_BYTES_8_BITS;
 
  557     sCommand.AlternateBytes      = 0x20;
 
  559   sCommand.DataMode          = QSPI_DATA_4_LINES;
 
  561   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  562   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  563   sCommand.SIOOMode          = QSPI_SIOO_INST_ONLY_FIRST_CMD;
 
  566   sMemMappedCfg.TimeOutActivation = QSPI_TIMEOUT_COUNTER_DISABLE;
 
  575     if (__HAL_QSPI_GET_FLAG(
_hqspi, QSPI_FLAG_BUSY) == SET) {
 
  576         if (HAL_QSPI_Abort(
_hqspi) != HAL_OK)
 
  588     QSPI_CommandTypeDef sCommand = {0};
 
  595     sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  597     sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  598     sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  599     sCommand.DataMode          = QSPI_DATA_NONE;
 
  600     sCommand.DummyCycles       = 0;
 
  601     sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  602     sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  603     sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  610     if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  626     QSPI_CommandTypeDef sCommand = {0};
 
  631     sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  633     sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  634     sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  635     sCommand.DataMode          = QSPI_DATA_NONE;
 
  636     sCommand.DummyCycles       = 0;
 
  637     sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  638     sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  639     sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  646     if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  675   if (HAL_QSPI_Receive_IT(
_hqspi, pData) != HAL_OK)
 
  691   if (HAL_QSPI_Transmit_IT(
_hqspi, pData) != HAL_OK)
 
  708     if (HAL_QSPI_AutoPolling_IT(
_hqspi, cmd, cfg) != HAL_OK)
 
  717   bool bSetOFlag = 
false;
 
  718   bool bTimeOut = 
false;
 
  719   bool bMatchField = 
false;
 
  721   if( Timeout < millis()) bSetOFlag = 
true;
 
  722   while((!bTimeOut)&&(!bMatchField)) {
 
  731       if(millis() < Timeout) bSetOFlag = 
false;
 
  733       if(millis() > Timeout) bTimeOut = 
true;
 
  746     QSPI_CommandTypeDef sCommand = {0};
 
  749   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  751   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  752   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  753   sCommand.DataMode          = QSPI_DATA_NONE;
 
  754   sCommand.DummyCycles       = 0;
 
  755   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  756   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  757   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  766     QSPI_CommandTypeDef sCommand = {0};
 
  769   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  771   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  772   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  773   sCommand.DataMode          = QSPI_DATA_NONE;
 
  774   sCommand.DummyCycles       = 0;
 
  775   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  776   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  777   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  789     QSPI_CommandTypeDef sCommand = {0};
 
  792   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  793   sCommand.Instruction       = RESET_ENABLE_CMD;
 
  794   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  795   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  796   sCommand.DataMode          = QSPI_DATA_NONE;
 
  797   sCommand.DummyCycles       = 0;
 
  798   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  799   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  800   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  803   if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  807   sCommand.Instruction = RESET_MEMORY_CMD;
 
  808   if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  829     QSPI_CommandTypeDef sCommand = {0};
 
  833   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  834   sCommand.Instruction       = READ_VOL_CFG_REG_CMD;
 
  835   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  836   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  837   sCommand.DataMode          = QSPI_DATA_1_LINE;
 
  838   sCommand.DummyCycles       = 0;
 
  840   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  841   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  842   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  845   if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  849   if (HAL_QSPI_Receive(
_hqspi, ®, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  857   sCommand.Instruction = WRITE_VOL_CFG_REG_CMD;
 
  861   if (HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  865   if (HAL_QSPI_Transmit(
_hqspi, ®, HAL_QSPI_TIMEOUT_DEFAULT_VALUE) != HAL_OK)
 
  876     QSPI_CommandTypeDef sCommand = {0};
 
  879   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  881   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  882   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  883   sCommand.DataMode          = QSPI_DATA_NONE;
 
  884   sCommand.DummyCycles       = 0;
 
  885   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  886   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  887   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  896     HAL_StatusTypeDef sts;
 
  897     QSPI_CommandTypeDef sCommand = {0};
 
  898     QSPI_AutoPollingTypeDef sConfig = {0};
 
  901   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  903   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  904   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  905   sCommand.DataMode          = QSPI_DATA_NONE;
 
  906   sCommand.DummyCycles       = 0;
 
  907   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  908   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  909   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  911   if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  917   sConfig.MatchMode       = QSPI_MATCH_MODE_AND;
 
  918   sConfig.StatusBytesSize = 1;
 
  919   sConfig.Interval        = 0x10;
 
  920   sConfig.AutomaticStop   = QSPI_AUTOMATIC_STOP_ENABLE;
 
  923   sCommand.DataMode       = QSPI_DATA_1_LINE;
 
  932     HAL_StatusTypeDef sts;
 
  933     QSPI_CommandTypeDef sCommand = {0};
 
  934     QSPI_AutoPollingTypeDef sConfig = {0};
 
  937   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  939   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  940   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  941   sCommand.DataMode          = QSPI_DATA_NONE;
 
  942   sCommand.DummyCycles       = 0;
 
  943   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  944   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  945   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  947   if ((sts = HAL_QSPI_Command(
_hqspi, &sCommand, HAL_QSPI_TIMEOUT_DEFAULT_VALUE)) != HAL_OK)
 
  951   sConfig.Match           = RESET;
 
  953   sConfig.MatchMode       = QSPI_MATCH_MODE_AND;
 
  954   sConfig.StatusBytesSize = 1;
 
  955   sConfig.Interval        = 0x10;
 
  956   sConfig.AutomaticStop   = QSPI_AUTOMATIC_STOP_ENABLE;
 
  959   sCommand.DataMode       = QSPI_DATA_1_LINE;
 
  968     QSPI_CommandTypeDef sCommand = {0};
 
  971   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  973   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  974   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  975   sCommand.DataMode          = QSPI_DATA_NONE;
 
  976   sCommand.DummyCycles       = 0;
 
  977   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
  978   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
  979   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
  989     QSPI_CommandTypeDef sCommand = {0};
 
  990     QSPI_AutoPollingTypeDef sConfig = {0};
 
  993   sCommand.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
 
  995   sCommand.AddressMode       = QSPI_ADDRESS_NONE;
 
  996   sCommand.AlternateByteMode = QSPI_ALTERNATE_BYTES_NONE;
 
  997   sCommand.DataMode          = QSPI_DATA_1_LINE;
 
  998   sCommand.DummyCycles       = 0;
 
  999   sCommand.DdrMode           = QSPI_DDR_MODE_DISABLE;
 
 1000   sCommand.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
 
 1001   sCommand.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;
 
 1003   sConfig.Match           = RESET;
 
 1005   sConfig.MatchMode       = QSPI_MATCH_MODE_AND;
 
 1006   sConfig.StatusBytesSize = 1;
 
 1007   sConfig.Interval        = 0x10;
 
 1008   sConfig.AutomaticStop   = QSPI_AUTOMATIC_STOP_ENABLE;
 
#define QUAD_CONTINUOUS_READ_MODE_RESET
 
#define WRITE_DISABLE_CMD
 
#define PROG_ERASE_SUSPEND_CMD
 
#define AT25SF161_SECTOR_ERASE_MAX_TIME
 
#define DEEP_POWER_DOWN_CMD
 
#define PROG_ERASE_RESUME_CMD
 
#define AT25SF161_FLASH_SIZE
AT25SF161 Configuration.
 
#define AT25SF161_FS_ERSUS
 
#define AT25SF161_BLOCK_SIZE
 
#define AT25SF161_DUMMY_CYCLES_READ_QUAD
 
#define QUAD_INOUT_FAST_READ_CMD
 
#define WRITE_STATUS_REG_CMD
 
#define WRITE_EN_VOLAT_STATUS_REG_CMD
 
#define READ_STATUS_REG_CMD
 
#define RESUME_FROM_DEEP_PWD_CMD
 
#define AT25SF161_BULK_ERASE_MAX_TIME
 
#define READ_STATUS2_REG_CMD
 
#define AT25SF161_BLOCK_ERASE_MAX_TIME
 
#define AT25SF161_PAGE_SIZE
 
#define AT25SF161_SECTOR_SIZE
 
#define AT25SF161_SR_BUSY
AT25SF161 Registers.
 
QSPI_StatusTypeDef BSP_QSPI_Erase_Chip(void)
Erases the entire QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_EnableMemoryMappedMode(void)
Configure the QSPI in memory-mapped mode.
 
QSPI_StatusTypeDef BSP_QSPI_DeInit(void)
De-Initializes the QSPI interface.
 
QSPI_StatusTypeDef BSP_QSPI_ReadStatus(uint32_t *Reg)
Reads current full status registers (byte1 and 2) of the QSPI memory.
 
uint8_t BSP_QSPI_ResumeErase(void)
This function resumes a paused erase command.
 
QSPI_StatusTypeDef BSP_QSPI_GetInfo(QSPI_Info *pInfo)
Return the configuration of the QSPI memory.
 
QSPI_StatusTypeDef QSPI_DisableContinuousMode(void)
This function disable Continuous Read Mode Reset - Quad.
 
QSPI_StatusTypeDef QSPI_SetDeepPowerDown(void)
This function enter in deep power down the QSPI memory.
 
QSPI_StatusTypeDef QSPI_ExitDeepPowerDown(void)
This function exit from deep power down the QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_DisableMemoryMappedMode(void)
Disable the QSPI memory-mapped mode.
 
QSPI_StatusTypeDef BSP_QSPI_Init(void)
Initializes the QSPI interface.
 
QSPI_StatusTypeDef BSP_QSPI_Read(uint8_t *pData, uint32_t ReadAddr, uint32_t Size)
Reads an amount of data from the QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_Transmit(uint8_t *pData, uint32_t Timeout)
Transmit an amount of data in interrupt mode.
 
QSPI_StatusTypeDef QSPI_DummyCyclesCfg(void)
This function configure the dummy cycles on memory side.
 
static QSPI_IT_EventFlag * _evtFlag
 
QSPI_StatusTypeDef BSP_QSPI_WaitingForEvent(uint32_t Timeout)
Waiting event for QSPI Module.
 
QSPI_StatusTypeDef BSP_QSPI_AutoPolling(QSPI_CommandTypeDef *cmd, QSPI_AutoPollingTypeDef *cfg, uint32_t Timeout)
Configure the QSPI Automatic Polling Mode in interrupt mode.
 
QSPI_StatusTypeDef BSP_QSPI_Receive(uint8_t *pData, uint32_t Timeout)
Receive an amount of data in interrupt mode.
 
QSPI_StatusTypeDef BSP_QSPI_Erase_Sector(uint32_t Sector)
Erases the specified sector of the QSPI memory.
 
QSPI_StatusTypeDef QSPI_WriteEnableVolat(void)
This function enable the write for Volatile Status Register only.
 
QSPI_StatusTypeDef QSPI_AutoPollingMemReady(uint32_t Timeout)
This function read the SR of the memory and wait the EOP.
 
QSPI_StatusTypeDef BSP_QSPI_Write(uint8_t *pData, uint32_t WriteAddr, uint32_t Size)
Writes an amount of data to the QSPI memory.
 
QSPI_StatusTypeDef QSPI_WriteEnable(void)
This function set Write Enable Latch bit and wait it is effective.
 
static QSPI_Info _FlashInfo
 
QSPI_StatusTypeDef QSPI_WriteDisable(void)
This function clear Write Enable Latch bit and wait it is effective.
 
QSPI_StatusTypeDef QSPI_ResetMemory(void)
This function reset the QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_WriteStatus(uint32_t Reg)
Write status registers of the QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_Erase_Block(uint32_t BlockAddress)
Erases the specified block of the QSPI memory.
 
QSPI_StatusTypeDef BSP_QSPI_GetStatus(void)
Reads current status (RDY/BUSY, WEL and SUS bits) of the QSPI memory.
 
uint8_t BSP_QSPI_SuspendErase(void)
This function suspends an ongoing erase command.
 
QSPI_HandleTypeDef * _hqspi
 
void QUADSPI_IRQHandler(void)
This function handles QUADSPI global interrupt.
 
void HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi)
Tx Transfer completed callback.
 
void HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi)
Status Match callback.
 
void HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi)
Command completed callback.
 
void HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi)
Rx Transfer completed callback.
 
void HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi)
Transfer Error callback.
 
Flash::QSPI_IT_EventFlag QSPI_IRQ_Flag
 
flash QSPI ETH452 AT256F161 header file
 
Interface STM32 hardware_hal STIMAV4 Header config.
 
__IO QSPI_StatusTypeDef State
 
uint32_t EraseBlockNumber
 
struct Flash::QSPI_IT_EventFlag::@2 flagBit