Functions

uint16_t app_qspi_init (app_qspi_params_t *p_params, app_qspi_evt_handler_t evt_handler)
 Initialize the APP QSPI DRIVER according to the specified parameters in the app_qspi_params_t and app_qspi_evt_handler_t. More...
 
uint16_t app_qspi_deinit (app_qspi_id_t id)
 De-initialize the APP QSPI DRIVER peripheral. More...
 
uint16_t app_qspi_command_receive_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data, uint32_t timeout)
 Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode. More...
 
uint16_t app_qspi_command_receive_async (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data)
 Receive an amount of data with the specified instruction, address and dummy cycles in non-blocking mode with Interrupt. More...
 
uint16_t app_qspi_command_transmit_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data, uint32_t timeout)
 Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode. More...
 
uint16_t app_qspi_command_transmit_async (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data)
 Receive an amount of data with the specified instruction, address and dummy cycles in non-blocking mode with Interrupt. More...
 
uint16_t app_qspi_command_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint32_t timeout)
 Transmit only instruction in blocking mode. More...
 
uint16_t app_qspi_command_async (app_qspi_id_t id, app_qspi_command_t *p_cmd)
 Transmit instruction in non-blocking mode with Interrupt. More...
 
uint16_t app_qspi_transmit_sync (app_qspi_id_t id, uint8_t *p_data, uint32_t length, uint32_t timeout)
 Transmit an amount of data in blocking mode with standard SPI. More...
 
uint16_t app_qspi_transmit_async (app_qspi_id_t id, uint8_t *p_data, uint32_t length)
 Transmit an amount of data in non-blocking mode at standard SPI with Interrupt. More...
 
uint16_t app_qspi_receive_sync (app_qspi_id_t id, uint8_t *p_data, uint32_t length, uint32_t timeout)
 Receive an amount of data in blocking mode with standard SPI. More...
 
uint16_t app_qspi_receive_async (app_qspi_id_t id, uint8_t *p_data, uint32_t length)
 Receive an amount of data in non-blocking mode at standard SPI with Interrupt. More...
 
uint16_t app_qspi_transmit_in_qpi_async (app_qspi_id_t id, uint32_t data_width, uint8_t *p_data, uint32_t length)
 Transmit an amount of data in QPI mode (Async Mode). More...
 
qspi_handle_tapp_qspi_get_handle (app_qspi_id_t id)
 Return the QSPI handle. More...
 
uint16_t app_qspi_command_receive_high_speed_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data)
 [High speed] Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode. More...
 
uint16_t app_qspi_command_transmit_high_speed_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd, uint8_t *p_data)
 [High speed] Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode. More...
 
uint16_t app_qspi_command_high_speed_sync (app_qspi_id_t id, app_qspi_command_t *p_cmd)
 [High speed] Transmit only instruction in blocking mode. More...
 
uint16_t app_qspi_transmit_high_speed_sync (app_qspi_id_t id, uint8_t *p_data, uint32_t length)
 [High speed] Transmit an amount of data in blocking mode with standard SPI. More...
 
uint16_t app_qspi_receive_high_speed_sync (app_qspi_id_t id, uint8_t *p_data, uint32_t length)
 [High speed] Receive an amount of data in blocking mode with standard SPI. More...
 

Detailed Description

Function Documentation

◆ app_qspi_command_async()

uint16_t app_qspi_command_async ( app_qspi_id_t  id,
app_qspi_command_t p_cmd 
)

Transmit instruction in non-blocking mode with Interrupt.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit command.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
Returns
Result of operation.

◆ app_qspi_command_high_speed_sync()

uint16_t app_qspi_command_high_speed_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd 
)

[High speed] Transmit only instruction in blocking mode.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit command.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
Returns
Result of operation.

◆ app_qspi_command_receive_async()

uint16_t app_qspi_command_receive_async ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data 
)

Receive an amount of data with the specified instruction, address and dummy cycles in non-blocking mode with Interrupt.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
Returns
Result of operation.

◆ app_qspi_command_receive_high_speed_sync()

uint16_t app_qspi_command_receive_high_speed_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data 
)

[High speed] Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
Returns
Result of operation.

◆ app_qspi_command_receive_sync()

uint16_t app_qspi_command_receive_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data,
uint32_t  timeout 
)

Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_qspi_command_sync()

uint16_t app_qspi_command_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint32_t  timeout 
)

Transmit only instruction in blocking mode.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit command.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_qspi_command_transmit_async()

uint16_t app_qspi_command_transmit_async ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data 
)

Receive an amount of data with the specified instruction, address and dummy cycles in non-blocking mode with Interrupt.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
Returns
Result of operation.

◆ app_qspi_command_transmit_high_speed_sync()

uint16_t app_qspi_command_transmit_high_speed_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data 
)

[High speed] Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
Returns
Result of operation.

◆ app_qspi_command_transmit_sync()

uint16_t app_qspi_command_transmit_sync ( app_qspi_id_t  id,
app_qspi_command_t p_cmd,
uint8_t *  p_data,
uint32_t  timeout 
)

Receive an amount of data with the specified instruction, address and dummy cycles in blocking mode.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_cmdPointer to a app_qspi_command_t structure that contains the instruction and address for data transfer.
[out]p_dataPointer to data buffer
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_qspi_deinit()

uint16_t app_qspi_deinit ( app_qspi_id_t  id)

De-initialize the APP QSPI DRIVER peripheral.

Parameters
[in]idDe-initialize for a specific ID.
Returns
Result of De-initialization.

◆ app_qspi_get_handle()

qspi_handle_t* app_qspi_get_handle ( app_qspi_id_t  id)

Return the QSPI handle.

Parameters
[in]idQSPI Channel ID.
Returns
Pointer to the specified ID's QSPI handle.

◆ app_qspi_init()

uint16_t app_qspi_init ( app_qspi_params_t p_params,
app_qspi_evt_handler_t  evt_handler 
)

Initialize the APP QSPI DRIVER according to the specified parameters in the app_qspi_params_t and app_qspi_evt_handler_t.

Note
If interrupt mode is set, you can use blocking mode. Conversely, if blocking mode is set, you can't use interrupt mode.
Parameters
[in]p_paramsPointer to app_qspi_params_t parameter which contains the configuration information for the specified QSPI module.
[in]evt_handlerQSPI user callback function.
Returns
Result of initialization.

◆ app_qspi_receive_async()

uint16_t app_qspi_receive_async ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length 
)

Receive an amount of data in non-blocking mode at standard SPI with Interrupt.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[out]p_dataPointer to data buffer
[in]lengthAmount of data to be received in bytes
Returns
Result of operation.

◆ app_qspi_receive_high_speed_sync()

uint16_t app_qspi_receive_high_speed_sync ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length 
)

[High speed] Receive an amount of data in blocking mode with standard SPI.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[out]p_dataPointer to data buffer
[in]lengthAmount of data to be received in bytes
Returns
Result of operation.

◆ app_qspi_receive_sync()

uint16_t app_qspi_receive_sync ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length,
uint32_t  timeout 
)

Receive an amount of data in blocking mode with standard SPI.

Note
This function is used only in Indirect Read Mode.
Parameters
[in]idwhich QSPI module want to receive.
[out]p_dataPointer to data buffer
[in]lengthAmount of data to be received in bytes
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_qspi_transmit_async()

uint16_t app_qspi_transmit_async ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length 
)

Transmit an amount of data in non-blocking mode at standard SPI with Interrupt.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_dataPointer to data buffer
[in]lengthAmount of data to be sent in bytes
Returns
Result of operation.

◆ app_qspi_transmit_high_speed_sync()

uint16_t app_qspi_transmit_high_speed_sync ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length 
)

[High speed] Transmit an amount of data in blocking mode with standard SPI.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_dataPointer to data buffer
[in]lengthAmount of data to be sent in bytes
Returns
Result of operation.

◆ app_qspi_transmit_in_qpi_async()

uint16_t app_qspi_transmit_in_qpi_async ( app_qspi_id_t  id,
uint32_t  data_width,
uint8_t *  p_data,
uint32_t  length 
)

Transmit an amount of data in QPI mode (Async Mode).

Parameters
[in]idWhich QSPI module want to Transmit.
[in]data_widthJust support QSPI_DATASIZE_08_BITS QSPI_DATASIZE_16_BITS QSPI_DATASIZE_32_BITS
[in]p_dataPointer to data buffer
[in]lengthAmount of data to be transmitted in bytes
Returns
Result of operation.

◆ app_qspi_transmit_sync()

uint16_t app_qspi_transmit_sync ( app_qspi_id_t  id,
uint8_t *  p_data,
uint32_t  length,
uint32_t  timeout 
)

Transmit an amount of data in blocking mode with standard SPI.

Note
This function is used only in Indirect Write Mode.
Parameters
[in]idwhich QSPI module want to transmit.
[in]p_dataPointer to data buffer
[in]lengthAmount of data to be sent in bytes
[in]timeoutTimeout duration
Returns
Result of operation.