21 #ifndef STM32L4xx_HAL_SWPMI_H 22 #define STM32L4xx_HAL_SWPMI_H 51 uint32_t VoltageClass;
60 uint32_t TxBufferingMode;
63 uint32_t RxBufferingMode;
87 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 88 typedef struct __SWPMI_HandleTypeDef
117 __IO uint32_t ErrorCode;
119 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 120 void (*RxCpltCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
121 void (*RxHalfCpltCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
122 void (*TxCpltCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
123 void (*TxHalfCpltCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
124 void (*ErrorCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
125 void (*MspInitCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
126 void (*MspDeInitCallback) (
struct __SWPMI_HandleTypeDef *hswpmi);
131 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 165 #define HAL_SWPMI_ERROR_NONE ((uint32_t)0x00000000) 166 #define HAL_SWPMI_ERROR_CRC ((uint32_t)0x00000004) 167 #define HAL_SWPMI_ERROR_OVR ((uint32_t)0x00000008) 168 #define HAL_SWPMI_ERROR_UDR ((uint32_t)0x0000000C) 169 #define HAL_SWPMI_ERROR_DMA ((uint32_t)0x00000010) 170 #define HAL_SWPMI_ERROR_TIMEOUT ((uint32_t)0x00000020) 171 #define HAL_SWPMI_ERROR_TXBEF_TIMEOUT ((uint32_t)0x00000040) 172 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 173 #define HAL_SWPMI_ERROR_INVALID_CALLBACK ((uint32_t)0x00000100) 182 #define SWPMI_VOLTAGE_CLASS_C ((uint32_t)0x00000000) 183 #define SWPMI_VOLTAGE_CLASS_B SWPMI_OR_CLASS 191 #define SWPMI_TX_NO_SOFTWAREBUFFER ((uint32_t)0x00000000) 192 #define SWPMI_TX_SINGLE_SOFTWAREBUFFER ((uint32_t)0x00000000) 193 #define SWPMI_TX_MULTI_SOFTWAREBUFFER SWPMI_CR_TXMODE 201 #define SWPMI_RX_NO_SOFTWAREBUFFER ((uint32_t)0x00000000) 202 #define SWPMI_RX_SINGLE_SOFTWAREBUFFER ((uint32_t)0x00000000) 203 #define SWPMI_RX_MULTI_SOFTWAREBUFFER SWPMI_CR_RXMODE 213 #define SWPMI_FLAG_RXBFF SWPMI_ISR_RXBFF 214 #define SWPMI_FLAG_TXBEF SWPMI_ISR_TXBEF 215 #define SWPMI_FLAG_RXBERF SWPMI_ISR_RXBERF 216 #define SWPMI_FLAG_RXOVRF SWPMI_ISR_RXOVRF 217 #define SWPMI_FLAG_TXUNRF SWPMI_ISR_TXUNRF 218 #define SWPMI_FLAG_RXNE SWPMI_ISR_RXNE 219 #define SWPMI_FLAG_TXE SWPMI_ISR_TXE 220 #define SWPMI_FLAG_TCF SWPMI_ISR_TCF 221 #define SWPMI_FLAG_SRF SWPMI_ISR_SRF 222 #define SWPMI_FLAG_SUSP SWPMI_ISR_SUSP 223 #define SWPMI_FLAG_DEACTF SWPMI_ISR_DEACTF 233 #define SWPMI_IT_SRIE SWPMI_IER_SRIE 234 #define SWPMI_IT_TCIE SWPMI_IER_TCIE 235 #define SWPMI_IT_TIE SWPMI_IER_TIE 236 #define SWPMI_IT_RIE SWPMI_IER_RIE 237 #define SWPMI_IT_TXUNRIE SWPMI_IER_TXUNRIE 238 #define SWPMI_IT_RXOVRIE SWPMI_IER_RXOVRIE 239 #define SWPMI_IT_RXBERIE SWPMI_IER_RXBERIE 240 #define SWPMI_IT_TXBEIE SWPMI_IER_TXBEIE 241 #define SWPMI_IT_RXBFIE SWPMI_IER_RXBFIE 259 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 260 #define __HAL_SWPMI_RESET_HANDLE_STATE(__HANDLE__) do{ \ 261 (__HANDLE__)->State = HAL_SWPMI_STATE_RESET; \ 262 (__HANDLE__)->MspInitCallback = NULL; \ 263 (__HANDLE__)->MspDeInitCallback = NULL; \ 266 #define __HAL_SWPMI_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_SWPMI_STATE_RESET) 274 #define __HAL_SWPMI_ENABLE(__HANDLE__) SET_BIT((__HANDLE__)->Instance->CR, SWPMI_CR_SWPACT) 281 #define __HAL_SWPMI_DISABLE(__HANDLE__) CLEAR_BIT((__HANDLE__)->Instance->CR, SWPMI_CR_SWPACT) 300 #define __HAL_SWPMI_GET_FLAG(__HANDLE__, __FLAG__) (READ_BIT((__HANDLE__)->Instance->ISR, (__FLAG__)) == (__FLAG__)) 315 #define __HAL_SWPMI_CLEAR_FLAG(__HANDLE__, __FLAG__) WRITE_REG((__HANDLE__)->Instance->ICR, (__FLAG__)) 332 #define __HAL_SWPMI_ENABLE_IT(__HANDLE__, __INTERRUPT__) SET_BIT((__HANDLE__)->Instance->IER, (__INTERRUPT__)) 349 #define __HAL_SWPMI_DISABLE_IT(__HANDLE__, __INTERRUPT__) CLEAR_BIT((__HANDLE__)->Instance->IER, (__INTERRUPT__)) 366 #define __HAL_SWPMI_GET_IT(__HANDLE__, __IT__) (READ_BIT((__HANDLE__)->Instance->ISR,(__IT__)) == (__IT__)) 383 #define __HAL_SWPMI_GET_IT_SOURCE(__HANDLE__, __IT__) ((READ_BIT((__HANDLE__)->Instance->IER, (__IT__)) == (__IT__)) ? SET : RESET) 399 #if (USE_HAL_SWPMI_REGISTER_CALLBACKS == 1) 402 HAL_SWPMI_CallbackIDTypeDef CallbackID,
405 HAL_SWPMI_CallbackIDTypeDef CallbackID);
466 #define IS_SWPMI_VOLTAGE_CLASS(__CLASS__) (((__CLASS__) == SWPMI_VOLTAGE_CLASS_C) || \ 467 ((__CLASS__) == SWPMI_VOLTAGE_CLASS_B)) 469 #define IS_SWPMI_BITRATE_VALUE(__VALUE__) (((__VALUE__) <= 63U)) 472 #define IS_SWPMI_TX_BUFFERING_MODE(__MODE__) (((__MODE__) == SWPMI_TX_NO_SOFTWAREBUFFER) || \ 473 ((__MODE__) == SWPMI_TX_MULTI_SOFTWAREBUFFER)) 476 #define IS_SWPMI_RX_BUFFERING_MODE(__MODE__) (((__MODE__) == SWPMI_RX_NO_SOFTWAREBUFFER) || \ 477 ((__MODE__) == SWPMI_RX_MULTI_SOFTWAREBUFFER)) 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_DisableLoopback(SWPMI_HandleTypeDef *hswpmi)
Disable the Loopback mode.
DMA handle Structure definition.
HAL_StatusTypeDef HAL_SWPMI_DeInit(SWPMI_HandleTypeDef *hswpmi)
De-initialize the SWPMI peripheral.
void HAL_SWPMI_RxCpltCallback(SWPMI_HandleTypeDef *hswpmi)
Rx Transfer completed callback.
HAL_StatusTypeDef HAL_SWPMI_EnableLoopback(SWPMI_HandleTypeDef *hswpmi)
Enable the Loopback mode.
void HAL_SWPMI_MspDeInit(SWPMI_HandleTypeDef *hswpmi)
DeInitialize the SWPMI MSP.
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_DMAStop(SWPMI_HandleTypeDef *hswpmi)
Stop all DMA transfers.
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.
void HAL_SWPMI_RxHalfCpltCallback(SWPMI_HandleTypeDef *hswpmi)
Rx Half Transfer completed callback.
This file contains HAL common defines, enumeration, macros and structures definitions.
void HAL_SWPMI_TxHalfCpltCallback(SWPMI_HandleTypeDef *hswpmi)
Tx Half Transfer completed callback.
HAL_SWPMI_StateTypeDef HAL_SWPMI_GetState(SWPMI_HandleTypeDef *hswpmi)
Return the SWPMI handle state.
void HAL_SWPMI_TxCpltCallback(SWPMI_HandleTypeDef *hswpmi)
Tx Transfer completed callback.
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_SWPMI_CallbackIDTypeDef
SWPMI callback ID enumeration definition.
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.
void HAL_SWPMI_IRQHandler(SWPMI_HandleTypeDef *hswpmi)
Handle SWPMI interrupt request.
HAL_StatusTypeDef HAL_SWPMI_UnRegisterCallback(SWPMI_HandleTypeDef *hswpmi, HAL_SWPMI_CallbackIDTypeDef CallbackID)
Unregister a user SWPMI callback. SWPMI callback is redirected to the weak predefined callback...
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.
void(* pSWPMI_CallbackTypeDef)(SWPMI_HandleTypeDef *hswpmi)
SWPMI callback pointer definition.
__IO HAL_SWPMI_StateTypeDef State
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_LockTypeDef
HAL Lock structures definition.
HAL_SWPMI_StateTypeDef
HAL SWPMI State structures definition.
void HAL_SWPMI_MspInit(SWPMI_HandleTypeDef *hswpmi)
Initialize the SWPMI MSP.
struct __SWPMI_HandleTypeDef else typedef struct endif SWPMI_HandleTypeDef
SWPMI handle Structure definition.
uint32_t HAL_SWPMI_GetError(SWPMI_HandleTypeDef *hswpmi)
Return the SWPMI error code.
ADC handle Structure definition.
void HAL_SWPMI_ErrorCallback(SWPMI_HandleTypeDef *hswpmi)
SWPMI error callback.
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.