STM32L486xx HAL User Manual
Data Structures | Defines | Typedefs | Enumerations | Functions
stm32l4xx_hal_swpmi.h File Reference

Header file of SWPMI HAL module. More...

#include "stm32l4xx_hal_def.h"

Go to the source code of this file.

Data Structures

struct  SWPMI_InitTypeDef
 SWPMI Init Structure definition. More...
struct  __SWPMI_HandleTypeDef
 SWPMI handle Structure definition. More...

Defines

#define HAL_SWPMI_ERROR_NONE   ((uint32_t)0x00000000)
#define HAL_SWPMI_ERROR_CRC   ((uint32_t)0x00000004)
#define HAL_SWPMI_ERROR_OVR   ((uint32_t)0x00000008)
#define HAL_SWPMI_ERROR_UDR   ((uint32_t)0x0000000C)
#define HAL_SWPMI_ERROR_DMA   ((uint32_t)0x00000010)
#define HAL_SWPMI_ERROR_TIMEOUT   ((uint32_t)0x00000020)
#define HAL_SWPMI_ERROR_TXBEF_TIMEOUT   ((uint32_t)0x00000040)
#define HAL_SWPMI_ERROR_INVALID_CALLBACK   ((uint32_t)0x00000100)
#define SWPMI_VOLTAGE_CLASS_C   ((uint32_t)0x00000000)
#define SWPMI_VOLTAGE_CLASS_B   SWPMI_OR_CLASS
#define SWPMI_TX_NO_SOFTWAREBUFFER   ((uint32_t)0x00000000)
#define SWPMI_TX_SINGLE_SOFTWAREBUFFER   ((uint32_t)0x00000000)
#define SWPMI_TX_MULTI_SOFTWAREBUFFER   SWPMI_CR_TXMODE
#define SWPMI_RX_NO_SOFTWAREBUFFER   ((uint32_t)0x00000000)
#define SWPMI_RX_SINGLE_SOFTWAREBUFFER   ((uint32_t)0x00000000)
#define SWPMI_RX_MULTI_SOFTWAREBUFFER   SWPMI_CR_RXMODE
#define SWPMI_FLAG_RXBFF   SWPMI_ISR_RXBFF
#define SWPMI_FLAG_TXBEF   SWPMI_ISR_TXBEF
#define SWPMI_FLAG_RXBERF   SWPMI_ISR_RXBERF
#define SWPMI_FLAG_RXOVRF   SWPMI_ISR_RXOVRF
#define SWPMI_FLAG_TXUNRF   SWPMI_ISR_TXUNRF
#define SWPMI_FLAG_RXNE   SWPMI_ISR_RXNE
#define SWPMI_FLAG_TXE   SWPMI_ISR_TXE
#define SWPMI_FLAG_TCF   SWPMI_ISR_TCF
#define SWPMI_FLAG_SRF   SWPMI_ISR_SRF
#define SWPMI_FLAG_SUSP   SWPMI_ISR_SUSP
#define SWPMI_FLAG_DEACTF   SWPMI_ISR_DEACTF
#define SWPMI_IT_SRIE   SWPMI_IER_SRIE
#define SWPMI_IT_TCIE   SWPMI_IER_TCIE
#define SWPMI_IT_TIE   SWPMI_IER_TIE
#define SWPMI_IT_RIE   SWPMI_IER_RIE
#define SWPMI_IT_TXUNRIE   SWPMI_IER_TXUNRIE
#define SWPMI_IT_RXOVRIE   SWPMI_IER_RXOVRIE
#define SWPMI_IT_RXBERIE   SWPMI_IER_RXBERIE
#define SWPMI_IT_TXBEIE   SWPMI_IER_TXBEIE
#define SWPMI_IT_RXBFIE   SWPMI_IER_RXBFIE
#define __HAL_SWPMI_RESET_HANDLE_STATE(__HANDLE__)
 Reset SWPMI handle state.
#define __HAL_SWPMI_ENABLE(__HANDLE__)   SET_BIT((__HANDLE__)->Instance->CR, SWPMI_CR_SWPACT)
 Enable the SWPMI peripheral.
#define __HAL_SWPMI_DISABLE(__HANDLE__)   CLEAR_BIT((__HANDLE__)->Instance->CR, SWPMI_CR_SWPACT)
 Disable the SWPMI peripheral.
#define __HAL_SWPMI_GET_FLAG(__HANDLE__, __FLAG__)   (READ_BIT((__HANDLE__)->Instance->ISR, (__FLAG__)) == (__FLAG__))
 Check whether the specified SWPMI flag is set or not.
#define __HAL_SWPMI_CLEAR_FLAG(__HANDLE__, __FLAG__)   WRITE_REG((__HANDLE__)->Instance->ICR, (__FLAG__))
 Clear the specified SWPMI ISR flag.
#define __HAL_SWPMI_ENABLE_IT(__HANDLE__, __INTERRUPT__)   SET_BIT((__HANDLE__)->Instance->IER, (__INTERRUPT__))
 Enable the specified SWPMI interrupt.
#define __HAL_SWPMI_DISABLE_IT(__HANDLE__, __INTERRUPT__)   CLEAR_BIT((__HANDLE__)->Instance->IER, (__INTERRUPT__))
 Disable the specified SWPMI interrupt.
#define __HAL_SWPMI_GET_IT(__HANDLE__, __IT__)   (READ_BIT((__HANDLE__)->Instance->ISR,(__IT__)) == (__IT__))
 Check whether the specified SWPMI interrupt has occurred or not.
#define __HAL_SWPMI_GET_IT_SOURCE(__HANDLE__, __IT__)   ((READ_BIT((__HANDLE__)->Instance->IER, (__IT__)) == (__IT__)) ? SET : RESET)
 Check whether the specified SWPMI interrupt source is enabled or not.
#define IS_SWPMI_VOLTAGE_CLASS(__CLASS__)
#define IS_SWPMI_BITRATE_VALUE(__VALUE__)   (((__VALUE__) <= 63))
#define IS_SWPMI_TX_BUFFERING_MODE(__MODE__)
#define IS_SWPMI_RX_BUFFERING_MODE(__MODE__)

Typedefs

typedef struct
__SWPMI_HandleTypeDef 
SWPMI_HandleTypeDef
 SWPMI handle Structure definition.
typedef void(* pSWPMI_CallbackTypeDef )(SWPMI_HandleTypeDef *hswpmi)
 SWPMI callback pointer definition.

Enumerations

enum  HAL_SWPMI_StateTypeDef {
  HAL_SWPMI_STATE_RESET = 0x00, HAL_SWPMI_STATE_READY = 0x01, HAL_SWPMI_STATE_BUSY = 0x02, HAL_SWPMI_STATE_BUSY_TX = 0x12,
  HAL_SWPMI_STATE_BUSY_RX = 0x22, HAL_SWPMI_STATE_BUSY_TX_RX = 0x32, HAL_SWPMI_STATE_TIMEOUT = 0x03, HAL_SWPMI_STATE_ERROR = 0x04
}
 HAL SWPMI State structures definition. More...
enum  HAL_SWPMI_CallbackIDTypeDef {
  HAL_SWPMI_RX_COMPLETE_CB_ID = 0x00U, HAL_SWPMI_RX_HALFCOMPLETE_CB_ID = 0x01U, HAL_SWPMI_TX_COMPLETE_CB_ID = 0x02U, HAL_SWPMI_TX_HALFCOMPLETE_CB_ID = 0x03U,
  HAL_SWPMI_ERROR_CB_ID = 0x04U, HAL_SWPMI_MSPINIT_CB_ID = 0x05U, HAL_SWPMI_MSPDEINIT_CB_ID = 0x06U
}
 SWPMI callback ID enumeration definition. More...

Functions

HAL_StatusTypeDef HAL_SWPMI_Init (SWPMI_HandleTypeDef *hswpmi)
 Initialize the SWPMI peripheral according to the specified parameters in the SWPMI_InitTypeDef.
HAL_StatusTypeDef HAL_SWPMI_DeInit (SWPMI_HandleTypeDef *hswpmi)
 De-initialize the SWPMI peripheral.
void HAL_SWPMI_MspInit (SWPMI_HandleTypeDef *hswpmi)
 Initialize the SWPMI MSP.
void HAL_SWPMI_MspDeInit (SWPMI_HandleTypeDef *hswpmi)
 DeInitialize the SWPMI MSP.
HAL_StatusTypeDef HAL_SWPMI_RegisterCallback (SWPMI_HandleTypeDef *hswpmi, HAL_SWPMI_CallbackIDTypeDef CallbackID, pSWPMI_CallbackTypeDef pCallback)
 Register a user SWPMI callback to be used instead of the weak predefined callback.
HAL_StatusTypeDef HAL_SWPMI_UnRegisterCallback (SWPMI_HandleTypeDef *hswpmi, HAL_SWPMI_CallbackIDTypeDef CallbackID)
 Unregister a user SWPMI callback.
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.
void HAL_SWPMI_IRQHandler (SWPMI_HandleTypeDef *hswpmi)
 Handle SWPMI interrupt request.
void HAL_SWPMI_TxCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Tx Transfer completed callback.
void HAL_SWPMI_TxHalfCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Tx Half Transfer completed callback.
void HAL_SWPMI_RxCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Rx Transfer completed callback.
void HAL_SWPMI_RxHalfCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Rx Half Transfer completed callback.
void HAL_SWPMI_ErrorCallback (SWPMI_HandleTypeDef *hswpmi)
 SWPMI error callback.
HAL_SWPMI_StateTypeDef HAL_SWPMI_GetState (SWPMI_HandleTypeDef *hswpmi)
 Return the SWPMI handle state.
uint32_t HAL_SWPMI_GetError (SWPMI_HandleTypeDef *hswpmi)
 Return the SWPMI error code.

Detailed Description

Header file of SWPMI HAL module.

Author:
MCD Application Team
Attention:

© COPYRIGHT(c) 2017 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file stm32l4xx_hal_swpmi.h.