Hal Drivers for L4

Dependents:   BSP OneHopeOnePrayer FINAL_AUDIO_RECORD AudioDemo

Fork of STM32L4xx_HAL_Driver by Senior Design: Sound Monitor

Embed: (wiki syntax)

« Back to documentation index

IO operation methods

IO operation methods
[SWPMI Exported Functions]

SWPMI Transmit/Receive functions. More...

Functions

HAL_StatusTypeDef HAL_SWPMI_Transmit (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size, uint32_t Timeout)
 Transmit an amount of data in blocking mode.
HAL_StatusTypeDef HAL_SWPMI_Receive (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size, uint32_t Timeout)
 Receive an amount of data in blocking mode.
HAL_StatusTypeDef HAL_SWPMI_Transmit_IT (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Transmit an amount of data in non-blocking mode with interrupt.
HAL_StatusTypeDef HAL_SWPMI_Receive_IT (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Receive an amount of data in non-blocking mode with interrupt.
HAL_StatusTypeDef HAL_SWPMI_Transmit_DMA (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Transmit an amount of data in non-blocking mode with DMA interrupt.
HAL_StatusTypeDef HAL_SWPMI_Receive_DMA (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Receive an amount of data in non-blocking mode with DMA interrupt.
HAL_StatusTypeDef HAL_SWPMI_DMAStop (SWPMI_HandleTypeDef *hswpmi)
 Stop all DMA transfers.
HAL_StatusTypeDef HAL_SWPMI_EnableLoopback (SWPMI_HandleTypeDef *hswpmi)
 Enable the Loopback mode.
HAL_StatusTypeDef HAL_SWPMI_DisableLoopback (SWPMI_HandleTypeDef *hswpmi)
 Disable the Loopback mode.

Detailed Description

SWPMI Transmit/Receive functions.

 ===============================================================================
                      ##### IO operation methods #####
 ===============================================================================
 [..]
    This subsection provides a set of functions allowing to manage the SWPMI
     data transfers.

    (#) There are two modes of transfer:
       (++) Blocking mode: The communication is performed in polling mode.
            The HAL status of all data processing is returned by the same function
            after finishing transfer.
       (++) Non-Blocking mode: The communication is performed using Interrupts
           or DMA. The end of the data processing will be indicated through the
           dedicated SWPMI Interrupt handler (HAL_SWPMI_IRQHandler()) when using Interrupt mode or
           the selected DMA channel interrupt handler when using DMA mode.
           The HAL_SWPMI_TxCpltCallback(), HAL_SWPMI_RxCpltCallback() user callbacks
           will be executed respectively at the end of the transmit or receive process.
           The HAL_SWPMI_ErrorCallback() user callback will be executed when a communication error is detected.

    (#) Blocking mode API's are:
        (++) HAL_SWPMI_Transmit()
        (++) HAL_SWPMI_Receive()

    (#) Non-Blocking mode API's with Interrupt are:
        (++) HAL_SWPMI_Transmit_IT()
        (++) HAL_SWPMI_Receive_IT()
        (++) HAL_SWPMI_IRQHandler()

    (#) Non-Blocking mode API's with DMA are:
        (++) HAL_SWPMI_Transmit_DMA()
        (++) HAL_SWPMI_Receive_DMA()
        (++) HAL_SWPMI_DMAPause()
        (++) HAL_SWPMI_DMAResume()
        (++) HAL_SWPMI_DMAStop()

    (#) A set of Transfer Complete Callbacks are provided in Non-Blocking mode:
        (++) HAL_SWPMI_TxHalfCpltCallback()
        (++) HAL_SWPMI_TxCpltCallback()
        (++) HAL_SWPMI_RxHalfCpltCallback()
        (++) HAL_SWPMI_RxCpltCallback()
        (++) HAL_SWPMI_ErrorCallback()

    (#) The capability to launch the above IO operations in loopback mode for 
        user application verification:    
        (++) HAL_SWPMI_EnableLoopback()
        (++) HAL_SWPMI_DisableLoopback()
        

Function Documentation

HAL_StatusTypeDef HAL_SWPMI_DisableLoopback ( SWPMI_HandleTypeDef *  hswpmi )

Disable the Loopback mode.

Parameters:
hswpmi,:SWPMI handle
Note:
Loopback mode is to be used only for test purposes
Return values:
HAL_OK/ HAL_BUSY

Definition at line 862 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_DMAStop ( SWPMI_HandleTypeDef *  hswpmi )

Stop all DMA transfers.

Parameters:
hswpmi,:SWPMI handle
Return values:
HAL_OK

Definition at line 795 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_EnableLoopback ( SWPMI_HandleTypeDef *  hswpmi )

Enable the Loopback mode.

Parameters:
hswpmi,:SWPMI handle
Note:
Loopback mode is to be used only for test purposes
Return values:
HAL_OK/ HAL_BUSY

Definition at line 832 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Receive ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size,
uint32_t  Timeout 
)

Receive an amount of data in blocking mode.

Parameters:
hswpmi,:pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pData,:Pointer to data buffer
Size,:Amount of data to be received
Timeout,:Timeout duration
Return values:
HALstatus

Definition at line 431 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Receive_DMA ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size 
)

Receive an amount of data in non-blocking mode with DMA interrupt.

Parameters:
hswpmi,:SWPMI handle
pData,:pointer to data buffer
Size,:amount of data to be received
Return values:
HALstatus

Definition at line 726 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Receive_IT ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size 
)

Receive an amount of data in non-blocking mode with interrupt.

Parameters:
hswpmi,:SWPMI handle
pData,:pointer to data buffer
Size,:amount of data to be received
Return values:
HALstatus

Definition at line 593 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Transmit ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size,
uint32_t  Timeout 
)

Transmit an amount of data in blocking mode.

Parameters:
hswpmi,:pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pData,:Pointer to data buffer
Size,:Amount of data to be sent
Timeout,:Timeout duration
Return values:
HALstatus

Definition at line 330 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Transmit_DMA ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size 
)

Transmit an amount of data in non-blocking mode with DMA interrupt.

Parameters:
hswpmi,:SWPMI handle
pData,:pointer to data buffer
Size,:amount of data to be sent
Return values:
HALstatus

Definition at line 654 of file stm32l4xx_hal_swpmi.c.

HAL_StatusTypeDef HAL_SWPMI_Transmit_IT ( SWPMI_HandleTypeDef *  hswpmi,
uint32_t *  pData,
uint16_t  Size 
)

Transmit an amount of data in non-blocking mode with interrupt.

Parameters:
hswpmi,:pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pData,:Pointer to data buffer
Size,:Amount of data to be sent
Return values:
HALstatus

Definition at line 528 of file stm32l4xx_hal_swpmi.c.