20 #ifndef STM32F4xx_HAL_QSPI_H
21 #define STM32F4xx_HAL_QSPI_H
50 uint32_t ClockPrescaler;
52 uint32_t FifoThreshold;
54 uint32_t SampleShifting;
62 uint32_t ChipSelectHighTime;
92 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
93 typedef struct __QSPI_HandleTypeDef
98 QUADSPI_TypeDef *Instance;
99 QSPI_InitTypeDef Init;
101 __IO uint32_t TxXferSize;
102 __IO uint32_t TxXferCount;
104 __IO uint32_t RxXferSize;
105 __IO uint32_t RxXferCount;
109 __IO uint32_t ErrorCode;
111 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
112 void (* ErrorCallback) (
struct __QSPI_HandleTypeDef *hqspi);
113 void (* AbortCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
114 void (* FifoThresholdCallback)(
struct __QSPI_HandleTypeDef *hqspi);
115 void (* CmdCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
116 void (* RxCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
117 void (* TxCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
118 void (* RxHalfCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
119 void (* TxHalfCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
120 void (* StatusMatchCallback) (
struct __QSPI_HandleTypeDef *hqspi);
121 void (* TimeOutCallback) (
struct __QSPI_HandleTypeDef *hqspi);
123 void (* MspInitCallback) (
struct __QSPI_HandleTypeDef *hqspi);
124 void (* MspDeInitCallback) (
struct __QSPI_HandleTypeDef *hqspi);
133 uint32_t Instruction;
137 uint32_t AlternateBytes;
139 uint32_t AddressSize;
141 uint32_t AlternateBytesSize;
143 uint32_t DummyCycles;
145 uint32_t InstructionMode;
147 uint32_t AddressMode;
149 uint32_t AlternateByteMode;
158 uint32_t DdrHoldHalfCycle;
176 uint32_t StatusBytesSize;
180 uint32_t AutomaticStop;
189 uint32_t TimeOutPeriod;
191 uint32_t TimeOutActivation;
195 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
233 #define HAL_QSPI_ERROR_NONE 0x00000000U
234 #define HAL_QSPI_ERROR_TIMEOUT 0x00000001U
235 #define HAL_QSPI_ERROR_TRANSFER 0x00000002U
236 #define HAL_QSPI_ERROR_DMA 0x00000004U
237 #define HAL_QSPI_ERROR_INVALID_PARAM 0x00000008U
238 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
239 #define HAL_QSPI_ERROR_INVALID_CALLBACK 0x00000010U
248 #define QSPI_SAMPLE_SHIFTING_NONE 0x00000000U
249 #define QSPI_SAMPLE_SHIFTING_HALFCYCLE ((uint32_t)QUADSPI_CR_SSHIFT)
257 #define QSPI_CS_HIGH_TIME_1_CYCLE 0x00000000U
258 #define QSPI_CS_HIGH_TIME_2_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_0)
259 #define QSPI_CS_HIGH_TIME_3_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_1)
260 #define QSPI_CS_HIGH_TIME_4_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_0 | QUADSPI_DCR_CSHT_1)
261 #define QSPI_CS_HIGH_TIME_5_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2)
262 #define QSPI_CS_HIGH_TIME_6_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2 | QUADSPI_DCR_CSHT_0)
263 #define QSPI_CS_HIGH_TIME_7_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2 | QUADSPI_DCR_CSHT_1)
264 #define QSPI_CS_HIGH_TIME_8_CYCLE ((uint32_t)QUADSPI_DCR_CSHT)
272 #define QSPI_CLOCK_MODE_0 0x00000000U
273 #define QSPI_CLOCK_MODE_3 ((uint32_t)QUADSPI_DCR_CKMODE)
281 #define QSPI_FLASH_ID_1 0x00000000U
282 #define QSPI_FLASH_ID_2 ((uint32_t)QUADSPI_CR_FSEL)
290 #define QSPI_DUALFLASH_ENABLE ((uint32_t)QUADSPI_CR_DFM)
291 #define QSPI_DUALFLASH_DISABLE 0x00000000U
299 #define QSPI_ADDRESS_8_BITS 0x00000000U
300 #define QSPI_ADDRESS_16_BITS ((uint32_t)QUADSPI_CCR_ADSIZE_0)
301 #define QSPI_ADDRESS_24_BITS ((uint32_t)QUADSPI_CCR_ADSIZE_1)
302 #define QSPI_ADDRESS_32_BITS ((uint32_t)QUADSPI_CCR_ADSIZE)
310 #define QSPI_ALTERNATE_BYTES_8_BITS 0x00000000U
311 #define QSPI_ALTERNATE_BYTES_16_BITS ((uint32_t)QUADSPI_CCR_ABSIZE_0)
312 #define QSPI_ALTERNATE_BYTES_24_BITS ((uint32_t)QUADSPI_CCR_ABSIZE_1)
313 #define QSPI_ALTERNATE_BYTES_32_BITS ((uint32_t)QUADSPI_CCR_ABSIZE)
321 #define QSPI_INSTRUCTION_NONE 0x00000000U
322 #define QSPI_INSTRUCTION_1_LINE ((uint32_t)QUADSPI_CCR_IMODE_0)
323 #define QSPI_INSTRUCTION_2_LINES ((uint32_t)QUADSPI_CCR_IMODE_1)
324 #define QSPI_INSTRUCTION_4_LINES ((uint32_t)QUADSPI_CCR_IMODE)
332 #define QSPI_ADDRESS_NONE 0x00000000U
333 #define QSPI_ADDRESS_1_LINE ((uint32_t)QUADSPI_CCR_ADMODE_0)
334 #define QSPI_ADDRESS_2_LINES ((uint32_t)QUADSPI_CCR_ADMODE_1)
335 #define QSPI_ADDRESS_4_LINES ((uint32_t)QUADSPI_CCR_ADMODE)
343 #define QSPI_ALTERNATE_BYTES_NONE 0x00000000U
344 #define QSPI_ALTERNATE_BYTES_1_LINE ((uint32_t)QUADSPI_CCR_ABMODE_0)
345 #define QSPI_ALTERNATE_BYTES_2_LINES ((uint32_t)QUADSPI_CCR_ABMODE_1)
346 #define QSPI_ALTERNATE_BYTES_4_LINES ((uint32_t)QUADSPI_CCR_ABMODE)
354 #define QSPI_DATA_NONE 0x00000000U
355 #define QSPI_DATA_1_LINE ((uint32_t)QUADSPI_CCR_DMODE_0)
356 #define QSPI_DATA_2_LINES ((uint32_t)QUADSPI_CCR_DMODE_1)
357 #define QSPI_DATA_4_LINES ((uint32_t)QUADSPI_CCR_DMODE)
365 #define QSPI_DDR_MODE_DISABLE 0x00000000U
366 #define QSPI_DDR_MODE_ENABLE ((uint32_t)QUADSPI_CCR_DDRM)
374 #define QSPI_DDR_HHC_ANALOG_DELAY 0x00000000U
375 #define QSPI_DDR_HHC_HALF_CLK_DELAY ((uint32_t)QUADSPI_CCR_DHHC)
383 #define QSPI_SIOO_INST_EVERY_CMD 0x00000000U
384 #define QSPI_SIOO_INST_ONLY_FIRST_CMD ((uint32_t)QUADSPI_CCR_SIOO)
392 #define QSPI_MATCH_MODE_AND 0x00000000U
393 #define QSPI_MATCH_MODE_OR ((uint32_t)QUADSPI_CR_PMM)
401 #define QSPI_AUTOMATIC_STOP_DISABLE 0x00000000U
402 #define QSPI_AUTOMATIC_STOP_ENABLE ((uint32_t)QUADSPI_CR_APMS)
410 #define QSPI_TIMEOUT_COUNTER_DISABLE 0x00000000U
411 #define QSPI_TIMEOUT_COUNTER_ENABLE ((uint32_t)QUADSPI_CR_TCEN)
419 #define QSPI_FLAG_BUSY QUADSPI_SR_BUSY
420 #define QSPI_FLAG_TO QUADSPI_SR_TOF
421 #define QSPI_FLAG_SM QUADSPI_SR_SMF
422 #define QSPI_FLAG_FT QUADSPI_SR_FTF
423 #define QSPI_FLAG_TC QUADSPI_SR_TCF
424 #define QSPI_FLAG_TE QUADSPI_SR_TEF
432 #define QSPI_IT_TO QUADSPI_CR_TOIE
433 #define QSPI_IT_SM QUADSPI_CR_SMIE
434 #define QSPI_IT_FT QUADSPI_CR_FTIE
435 #define QSPI_IT_TC QUADSPI_CR_TCIE
436 #define QSPI_IT_TE QUADSPI_CR_TEIE
445 #define HAL_QSPI_TIMEOUT_DEFAULT_VALUE 5000U
462 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
463 #define __HAL_QSPI_RESET_HANDLE_STATE(__HANDLE__) do { \
464 (__HANDLE__)->State = HAL_QSPI_STATE_RESET; \
465 (__HANDLE__)->MspInitCallback = NULL; \
466 (__HANDLE__)->MspDeInitCallback = NULL; \
469 #define __HAL_QSPI_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_QSPI_STATE_RESET)
476 #define __HAL_QSPI_ENABLE(__HANDLE__) SET_BIT((__HANDLE__)->Instance->CR, QUADSPI_CR_EN)
482 #define __HAL_QSPI_DISABLE(__HANDLE__) CLEAR_BIT((__HANDLE__)->Instance->CR, QUADSPI_CR_EN)
495 #define __HAL_QSPI_ENABLE_IT(__HANDLE__, __INTERRUPT__) SET_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__))
509 #define __HAL_QSPI_DISABLE_IT(__HANDLE__, __INTERRUPT__) CLEAR_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__))
522 #define __HAL_QSPI_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (READ_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__)) == (__INTERRUPT__))
537 #define __HAL_QSPI_GET_FLAG(__HANDLE__, __FLAG__) ((READ_BIT((__HANDLE__)->Instance->SR, (__FLAG__)) != 0U) ? SET : RESET)
549 #define __HAL_QSPI_CLEAR_FLAG(__HANDLE__, __FLAG__) WRITE_REG((__HANDLE__)->Instance->FCR, (__FLAG__))
613 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
647 #define IS_QSPI_CLOCK_PRESCALER(PRESCALER) ((PRESCALER) <= 0xFFU)
649 #define IS_QSPI_FIFO_THRESHOLD(THR) (((THR) > 0U) && ((THR) <= 32U))
651 #define IS_QSPI_SSHIFT(SSHIFT) (((SSHIFT) == QSPI_SAMPLE_SHIFTING_NONE) || \
652 ((SSHIFT) == QSPI_SAMPLE_SHIFTING_HALFCYCLE))
654 #define IS_QSPI_FLASH_SIZE(FSIZE) (((FSIZE) <= 31U))
656 #define IS_QSPI_CS_HIGH_TIME(CSHTIME) (((CSHTIME) == QSPI_CS_HIGH_TIME_1_CYCLE) || \
657 ((CSHTIME) == QSPI_CS_HIGH_TIME_2_CYCLE) || \
658 ((CSHTIME) == QSPI_CS_HIGH_TIME_3_CYCLE) || \
659 ((CSHTIME) == QSPI_CS_HIGH_TIME_4_CYCLE) || \
660 ((CSHTIME) == QSPI_CS_HIGH_TIME_5_CYCLE) || \
661 ((CSHTIME) == QSPI_CS_HIGH_TIME_6_CYCLE) || \
662 ((CSHTIME) == QSPI_CS_HIGH_TIME_7_CYCLE) || \
663 ((CSHTIME) == QSPI_CS_HIGH_TIME_8_CYCLE))
665 #define IS_QSPI_CLOCK_MODE(CLKMODE) (((CLKMODE) == QSPI_CLOCK_MODE_0) || \
666 ((CLKMODE) == QSPI_CLOCK_MODE_3))
668 #define IS_QSPI_FLASH_ID(FLASH_ID) (((FLASH_ID) == QSPI_FLASH_ID_1) || \
669 ((FLASH_ID) == QSPI_FLASH_ID_2))
671 #define IS_QSPI_DUAL_FLASH_MODE(MODE) (((MODE) == QSPI_DUALFLASH_ENABLE) || \
672 ((MODE) == QSPI_DUALFLASH_DISABLE))
674 #define IS_QSPI_INSTRUCTION(INSTRUCTION) ((INSTRUCTION) <= 0xFFU)
676 #define IS_QSPI_ADDRESS_SIZE(ADDR_SIZE) (((ADDR_SIZE) == QSPI_ADDRESS_8_BITS) || \
677 ((ADDR_SIZE) == QSPI_ADDRESS_16_BITS) || \
678 ((ADDR_SIZE) == QSPI_ADDRESS_24_BITS) || \
679 ((ADDR_SIZE) == QSPI_ADDRESS_32_BITS))
681 #define IS_QSPI_ALTERNATE_BYTES_SIZE(SIZE) (((SIZE) == QSPI_ALTERNATE_BYTES_8_BITS) || \
682 ((SIZE) == QSPI_ALTERNATE_BYTES_16_BITS) || \
683 ((SIZE) == QSPI_ALTERNATE_BYTES_24_BITS) || \
684 ((SIZE) == QSPI_ALTERNATE_BYTES_32_BITS))
686 #define IS_QSPI_DUMMY_CYCLES(DCY) ((DCY) <= 31U)
688 #define IS_QSPI_INSTRUCTION_MODE(MODE) (((MODE) == QSPI_INSTRUCTION_NONE) || \
689 ((MODE) == QSPI_INSTRUCTION_1_LINE) || \
690 ((MODE) == QSPI_INSTRUCTION_2_LINES) || \
691 ((MODE) == QSPI_INSTRUCTION_4_LINES))
693 #define IS_QSPI_ADDRESS_MODE(MODE) (((MODE) == QSPI_ADDRESS_NONE) || \
694 ((MODE) == QSPI_ADDRESS_1_LINE) || \
695 ((MODE) == QSPI_ADDRESS_2_LINES) || \
696 ((MODE) == QSPI_ADDRESS_4_LINES))
698 #define IS_QSPI_ALTERNATE_BYTES_MODE(MODE) (((MODE) == QSPI_ALTERNATE_BYTES_NONE) || \
699 ((MODE) == QSPI_ALTERNATE_BYTES_1_LINE) || \
700 ((MODE) == QSPI_ALTERNATE_BYTES_2_LINES) || \
701 ((MODE) == QSPI_ALTERNATE_BYTES_4_LINES))
703 #define IS_QSPI_DATA_MODE(MODE) (((MODE) == QSPI_DATA_NONE) || \
704 ((MODE) == QSPI_DATA_1_LINE) || \
705 ((MODE) == QSPI_DATA_2_LINES) || \
706 ((MODE) == QSPI_DATA_4_LINES))
708 #define IS_QSPI_DDR_MODE(DDR_MODE) (((DDR_MODE) == QSPI_DDR_MODE_DISABLE) || \
709 ((DDR_MODE) == QSPI_DDR_MODE_ENABLE))
711 #define IS_QSPI_DDR_HHC(DDR_HHC) (((DDR_HHC) == QSPI_DDR_HHC_ANALOG_DELAY) || \
712 ((DDR_HHC) == QSPI_DDR_HHC_HALF_CLK_DELAY))
714 #define IS_QSPI_SIOO_MODE(SIOO_MODE) (((SIOO_MODE) == QSPI_SIOO_INST_EVERY_CMD) || \
715 ((SIOO_MODE) == QSPI_SIOO_INST_ONLY_FIRST_CMD))
717 #define IS_QSPI_INTERVAL(INTERVAL) ((INTERVAL) <= QUADSPI_PIR_INTERVAL)
719 #define IS_QSPI_STATUS_BYTES_SIZE(SIZE) (((SIZE) >= 1U) && ((SIZE) <= 4U))
721 #define IS_QSPI_MATCH_MODE(MODE) (((MODE) == QSPI_MATCH_MODE_AND) || \
722 ((MODE) == QSPI_MATCH_MODE_OR))
724 #define IS_QSPI_AUTOMATIC_STOP(APMS) (((APMS) == QSPI_AUTOMATIC_STOP_DISABLE) || \
725 ((APMS) == QSPI_AUTOMATIC_STOP_ENABLE))
727 #define IS_QSPI_TIMEOUT_ACTIVATION(TCEN) (((TCEN) == QSPI_TIMEOUT_COUNTER_DISABLE) || \
728 ((TCEN) == QSPI_TIMEOUT_COUNTER_ENABLE))
730 #define IS_QSPI_TIMEOUT_PERIOD(PERIOD) ((PERIOD) <= 0xFFFFU)
ADC handle Structure definition.
HAL_StatusTypeDef HAL_QSPI_Init(QSPI_HandleTypeDef *hqspi)
Initialize the QSPI mode according to the specified parameters in the QSPI_InitTypeDef and initialize...
void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef *hqspi)
DeInitialize the QSPI MSP.
void HAL_QSPI_MspInit(QSPI_HandleTypeDef *hqspi)
Initialize the QSPI MSP.
HAL_StatusTypeDef HAL_QSPI_DeInit(QSPI_HandleTypeDef *hqspi)
De-Initialize the QSPI peripheral.
HAL_StatusTypeDef HAL_QSPI_Receive_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Receive an amount of data in non-blocking mode with DMA.
HAL_StatusTypeDef HAL_QSPI_MemoryMapped(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_MemoryMappedTypeDef *cfg)
Configure the Memory Mapped mode.
HAL_StatusTypeDef HAL_QSPI_AutoPolling(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_AutoPollingTypeDef *cfg, uint32_t Timeout)
Configure the QSPI Automatic Polling Mode in blocking mode.
HAL_StatusTypeDef HAL_QSPI_Command(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, uint32_t Timeout)
Set the command configuration.
HAL_StatusTypeDef HAL_QSPI_Transmit_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Send an amount of data in non-blocking mode with interrupt.
void HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi)
Tx Transfer completed callback.
HAL_StatusTypeDef HAL_QSPI_Transmit(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
Transmit an amount of data in blocking mode.
HAL_StatusTypeDef HAL_QSPI_Receive(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
Receive an amount of data in blocking mode.
HAL_StatusTypeDef HAL_QSPI_Transmit_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Send an amount of data in non-blocking mode with DMA.
void HAL_QSPI_FifoThresholdCallback(QSPI_HandleTypeDef *hqspi)
FIFO Threshold callback.
void HAL_QSPI_TimeOutCallback(QSPI_HandleTypeDef *hqspi)
Timeout callback.
HAL_StatusTypeDef HAL_QSPI_Command_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd)
Set the command configuration in interrupt mode.
void HAL_QSPI_IRQHandler(QSPI_HandleTypeDef *hqspi)
Handle QSPI interrupt request.
HAL_StatusTypeDef HAL_QSPI_RegisterCallback(QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId, pQSPI_CallbackTypeDef pCallback)
Register a User QSPI Callback To be used to override the weak predefined callback.
HAL_StatusTypeDef HAL_QSPI_Receive_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Receive an amount of data in non-blocking mode with interrupt.
void HAL_QSPI_AbortCpltCallback(QSPI_HandleTypeDef *hqspi)
Abort completed callback.
void HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi)
Rx Transfer completed callback.
void HAL_QSPI_RxHalfCpltCallback(QSPI_HandleTypeDef *hqspi)
Rx Half Transfer completed callback.
HAL_StatusTypeDef HAL_QSPI_AutoPolling_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_AutoPollingTypeDef *cfg)
Configure the QSPI Automatic Polling Mode in non-blocking mode.
void HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi)
Transfer Error callback.
void HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi)
Command completed callback.
HAL_StatusTypeDef HAL_QSPI_UnRegisterCallback(QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId)
Unregister a User QSPI Callback QSPI Callback is redirected to the weak predefined callback.
void HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi)
Status Match callback.
void HAL_QSPI_TxHalfCpltCallback(QSPI_HandleTypeDef *hqspi)
Tx Half Transfer completed callback.
HAL_StatusTypeDef HAL_QSPI_Abort(QSPI_HandleTypeDef *hqspi)
Abort the current transmission.
HAL_StatusTypeDef HAL_QSPI_SetFlashID(QSPI_HandleTypeDef *hqspi, uint32_t FlashID)
Set FlashID.
HAL_QSPI_StateTypeDef HAL_QSPI_GetState(const QSPI_HandleTypeDef *hqspi)
Return the QSPI handle state.
uint32_t HAL_QSPI_GetError(const QSPI_HandleTypeDef *hqspi)
Return the QSPI error code.
HAL_StatusTypeDef HAL_QSPI_SetFifoThreshold(QSPI_HandleTypeDef *hqspi, uint32_t Threshold)
Set QSPI Fifo threshold.
uint32_t HAL_QSPI_GetFifoThreshold(const QSPI_HandleTypeDef *hqspi)
Get QSPI Fifo threshold.
void HAL_QSPI_SetTimeout(QSPI_HandleTypeDef *hqspi, uint32_t Timeout)
Set QSPI timeout.
HAL_StatusTypeDef HAL_QSPI_Abort_IT(QSPI_HandleTypeDef *hqspi)
Abort the current transmission (non-blocking function)
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_LockTypeDef
HAL Lock structures definition
HAL_QSPI_CallbackIDTypeDef
HAL QSPI Callback ID enumeration definition.
@ HAL_QSPI_MSP_DEINIT_CB_ID
@ HAL_QSPI_FIFO_THRESHOLD_CB_ID
@ HAL_QSPI_TX_HALF_CPLT_CB_ID
@ HAL_QSPI_MSP_INIT_CB_ID
@ HAL_QSPI_CMD_CPLT_CB_ID
@ HAL_QSPI_RX_HALF_CPLT_CB_ID
@ HAL_QSPI_STATUS_MATCH_CB_ID
struct __QSPI_HandleTypeDef else typedef struct endif QSPI_HandleTypeDef
QSPI Handle Structure definition.
void(* pQSPI_CallbackTypeDef)(QSPI_HandleTypeDef *hqspi)
HAL QSPI Callback pointer definition.
HAL_QSPI_StateTypeDef
HAL QSPI State structures definition.
@ HAL_QSPI_STATE_BUSY_INDIRECT_RX
@ HAL_QSPI_STATE_BUSY_INDIRECT_TX
@ HAL_QSPI_STATE_BUSY_AUTO_POLLING
@ HAL_QSPI_STATE_BUSY_MEM_MAPPED
QSPI Auto Polling mode configuration structure definition.
QSPI Command structure definition.
QSPI Memory Mapped mode configuration structure definition.
DMA handle Structure definition.