STM32L443xx HAL User Manual
|
Header file of SMARTCARD HAL module. More...
Go to the source code of this file.
Data Structures | |
struct | SMARTCARD_InitTypeDef |
SMARTCARD Init Structure definition. More... | |
struct | SMARTCARD_AdvFeatureInitTypeDef |
SMARTCARD advanced features initialization structure definition. More... | |
struct | __SMARTCARD_HandleTypeDef |
SMARTCARD handle Structure definition. More... | |
Defines | |
#define | HAL_SMARTCARD_STATE_RESET 0x00000000U |
#define | HAL_SMARTCARD_STATE_READY 0x00000020U |
#define | HAL_SMARTCARD_STATE_BUSY 0x00000024U |
#define | HAL_SMARTCARD_STATE_BUSY_TX 0x00000021U |
#define | HAL_SMARTCARD_STATE_BUSY_RX 0x00000022U |
#define | HAL_SMARTCARD_STATE_BUSY_TX_RX 0x00000023U |
#define | HAL_SMARTCARD_STATE_TIMEOUT 0x000000A0U |
#define | HAL_SMARTCARD_STATE_ERROR 0x000000E0U |
#define | HAL_SMARTCARD_ERROR_NONE (0x00000000U) |
#define | HAL_SMARTCARD_ERROR_PE (0x00000001U) |
#define | HAL_SMARTCARD_ERROR_NE (0x00000002U) |
#define | HAL_SMARTCARD_ERROR_FE (0x00000004U) |
#define | HAL_SMARTCARD_ERROR_ORE (0x00000008U) |
#define | HAL_SMARTCARD_ERROR_DMA (0x00000010U) |
#define | HAL_SMARTCARD_ERROR_RTO (0x00000020U) |
#define | HAL_SMARTCARD_ERROR_INVALID_CALLBACK (0x00000040U) |
#define | SMARTCARD_WORDLENGTH_9B USART_CR1_M0 |
#define | SMARTCARD_STOPBITS_0_5 USART_CR2_STOP_0 |
#define | SMARTCARD_STOPBITS_1_5 USART_CR2_STOP |
#define | SMARTCARD_PARITY_EVEN USART_CR1_PCE |
#define | SMARTCARD_PARITY_ODD (USART_CR1_PCE | USART_CR1_PS) |
#define | SMARTCARD_MODE_RX USART_CR1_RE |
#define | SMARTCARD_MODE_TX USART_CR1_TE |
#define | SMARTCARD_MODE_TX_RX (USART_CR1_TE |USART_CR1_RE) |
#define | SMARTCARD_POLARITY_LOW 0x00000000U |
#define | SMARTCARD_POLARITY_HIGH USART_CR2_CPOL |
#define | SMARTCARD_PHASE_1EDGE 0x00000000U |
#define | SMARTCARD_PHASE_2EDGE USART_CR2_CPHA |
#define | SMARTCARD_LASTBIT_DISABLE 0x00000000U |
#define | SMARTCARD_LASTBIT_ENABLE USART_CR2_LBCL |
#define | SMARTCARD_ONE_BIT_SAMPLE_DISABLE 0x00000000U |
#define | SMARTCARD_ONE_BIT_SAMPLE_ENABLE USART_CR3_ONEBIT |
#define | SMARTCARD_NACK_DISABLE 0x00000000U |
#define | SMARTCARD_NACK_ENABLE USART_CR3_NACK |
#define | SMARTCARD_TIMEOUT_DISABLE 0x00000000U |
#define | SMARTCARD_TIMEOUT_ENABLE USART_CR2_RTOEN |
#define | SMARTCARD_ADVFEATURE_TXINV_DISABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_TXINV_ENABLE USART_CR2_TXINV |
#define | SMARTCARD_ADVFEATURE_RXINV_DISABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_RXINV_ENABLE USART_CR2_RXINV |
#define | SMARTCARD_ADVFEATURE_DATAINV_DISABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_DATAINV_ENABLE USART_CR2_DATAINV |
#define | SMARTCARD_ADVFEATURE_SWAP_DISABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_SWAP_ENABLE USART_CR2_SWAP |
#define | SMARTCARD_ADVFEATURE_OVERRUN_ENABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_OVERRUN_DISABLE USART_CR3_OVRDIS |
#define | SMARTCARD_ADVFEATURE_DMA_ENABLEONRXERROR 0x00000000U |
#define | SMARTCARD_ADVFEATURE_DMA_DISABLEONRXERROR USART_CR3_DDRE |
#define | SMARTCARD_ADVFEATURE_MSBFIRST_DISABLE 0x00000000U |
#define | SMARTCARD_ADVFEATURE_MSBFIRST_ENABLE USART_CR2_MSBFIRST |
#define | SMARTCARD_RXDATA_FLUSH_REQUEST USART_RQR_RXFRQ |
#define | SMARTCARD_TXDATA_FLUSH_REQUEST USART_RQR_TXFRQ |
#define | SMARTCARD_IT_MASK 0x001FU |
#define | SMARTCARD_CR_MASK 0x00E0U |
#define | SMARTCARD_CR_POS 5U |
#define | SMARTCARD_ISR_MASK 0x1F00U |
#define | SMARTCARD_ISR_POS 8U |
#define | __HAL_SMARTCARD_RESET_HANDLE_STATE(__HANDLE__) |
Reset SMARTCARD handle states. | |
#define | __HAL_SMARTCARD_FLUSH_DRREGISTER(__HANDLE__) |
Flush the Smartcard Data registers. | |
#define | __HAL_SMARTCARD_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->ICR = (__FLAG__)) |
Clear the specified SMARTCARD pending flag. | |
#define | __HAL_SMARTCARD_CLEAR_PEFLAG(__HANDLE__) __HAL_SMARTCARD_CLEAR_FLAG((__HANDLE__), SMARTCARD_CLEAR_PEF) |
Clear the SMARTCARD PE pending flag. | |
#define | __HAL_SMARTCARD_CLEAR_FEFLAG(__HANDLE__) __HAL_SMARTCARD_CLEAR_FLAG((__HANDLE__), SMARTCARD_CLEAR_FEF) |
Clear the SMARTCARD FE pending flag. | |
#define | __HAL_SMARTCARD_CLEAR_NEFLAG(__HANDLE__) __HAL_SMARTCARD_CLEAR_FLAG((__HANDLE__), SMARTCARD_CLEAR_NEF) |
Clear the SMARTCARD NE pending flag. | |
#define | __HAL_SMARTCARD_CLEAR_OREFLAG(__HANDLE__) __HAL_SMARTCARD_CLEAR_FLAG((__HANDLE__), SMARTCARD_CLEAR_OREF) |
Clear the SMARTCARD ORE pending flag. | |
#define | __HAL_SMARTCARD_CLEAR_IDLEFLAG(__HANDLE__) __HAL_SMARTCARD_CLEAR_FLAG((__HANDLE__), SMARTCARD_CLEAR_IDLEF) |
Clear the SMARTCARD IDLE pending flag. | |
#define | __HAL_SMARTCARD_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->ISR & (__FLAG__)) == (__FLAG__)) |
Check whether the specified Smartcard flag is set or not. | |
#define | __HAL_SMARTCARD_ENABLE_IT(__HANDLE__, __INTERRUPT__) |
Enable the specified SmartCard interrupt. | |
#define | __HAL_SMARTCARD_DISABLE_IT(__HANDLE__, __INTERRUPT__) |
Disable the specified SmartCard interrupt. | |
#define | __HAL_SMARTCARD_GET_IT(__HANDLE__, __INTERRUPT__) |
Check whether the specified SmartCard interrupt has occurred or not. | |
#define | __HAL_SMARTCARD_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) |
Check whether the specified SmartCard interrupt source is enabled or not. | |
#define | __HAL_SMARTCARD_CLEAR_IT(__HANDLE__, __IT_CLEAR__) ((__HANDLE__)->Instance->ICR |= (uint32_t)(__IT_CLEAR__)) |
Clear the specified SMARTCARD ISR flag, in setting the proper ICR register flag. | |
#define | __HAL_SMARTCARD_SEND_REQ(__HANDLE__, __REQ__) ((__HANDLE__)->Instance->RQR |= (uint16_t)(__REQ__)) |
Set a specific SMARTCARD request flag. | |
#define | __HAL_SMARTCARD_ONE_BIT_SAMPLE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR3|= USART_CR3_ONEBIT) |
Enable the SMARTCARD one bit sample method. | |
#define | __HAL_SMARTCARD_ONE_BIT_SAMPLE_DISABLE(__HANDLE__) |
Disable the SMARTCARD one bit sample method. | |
#define | __HAL_SMARTCARD_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 |= USART_CR1_UE) |
Enable the USART associated to the SMARTCARD Handle. | |
#define | __HAL_SMARTCARD_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 &= ~USART_CR1_UE) |
Disable the USART associated to the SMARTCARD Handle. | |
#define | SMARTCARD_GETCLOCKSOURCE(__HANDLE__, __CLOCKSOURCE__) |
Report the SMARTCARD clock source. | |
#define | IS_SMARTCARD_BAUDRATE(__BAUDRATE__) ((__BAUDRATE__) < 7500001U) |
Check the Baud rate range. | |
#define | IS_SMARTCARD_BLOCKLENGTH(__LENGTH__) ((__LENGTH__) <= 0xFFU) |
Check the block length range. | |
#define | IS_SMARTCARD_TIMEOUT_VALUE(__TIMEOUTVALUE__) ((__TIMEOUTVALUE__) <= 0xFFFFFFU) |
Check the receiver timeout value. | |
#define | IS_SMARTCARD_AUTORETRY_COUNT(__COUNT__) ((__COUNT__) <= 0x7U) |
Check the SMARTCARD autoretry counter value. | |
#define | IS_SMARTCARD_WORD_LENGTH(__LENGTH__) ((__LENGTH__) == SMARTCARD_WORDLENGTH_9B) |
Ensure that SMARTCARD frame length is valid. | |
#define | IS_SMARTCARD_STOPBITS(__STOPBITS__) |
Ensure that SMARTCARD frame number of stop bits is valid. | |
#define | IS_SMARTCARD_PARITY(__PARITY__) |
Ensure that SMARTCARD frame parity is valid. | |
#define | IS_SMARTCARD_MODE(__MODE__) ((((__MODE__) & 0xFFF3U) == 0x00U) && ((__MODE__) != 0x00U)) |
Ensure that SMARTCARD communication mode is valid. | |
#define | IS_SMARTCARD_POLARITY(__CPOL__) |
Ensure that SMARTCARD frame polarity is valid. | |
#define | IS_SMARTCARD_PHASE(__CPHA__) (((__CPHA__) == SMARTCARD_PHASE_1EDGE) || ((__CPHA__) == SMARTCARD_PHASE_2EDGE)) |
Ensure that SMARTCARD frame phase is valid. | |
#define | IS_SMARTCARD_LASTBIT(__LASTBIT__) |
Ensure that SMARTCARD frame last bit clock pulse setting is valid. | |
#define | IS_SMARTCARD_ONE_BIT_SAMPLE(__ONEBIT__) |
Ensure that SMARTCARD frame sampling is valid. | |
#define | IS_SMARTCARD_NACK(__NACK__) |
Ensure that SMARTCARD NACK transmission setting is valid. | |
#define | IS_SMARTCARD_TIMEOUT(__TIMEOUT__) |
Ensure that SMARTCARD receiver timeout setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_INIT(__INIT__) |
Ensure that SMARTCARD advanced features initialization is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_TXINV(__TXINV__) |
Ensure that SMARTCARD frame TX inversion setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_RXINV(__RXINV__) |
Ensure that SMARTCARD frame RX inversion setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_DATAINV(__DATAINV__) |
Ensure that SMARTCARD frame data inversion setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_SWAP(__SWAP__) |
Ensure that SMARTCARD frame RX/TX pins swap setting is valid. | |
#define | IS_SMARTCARD_OVERRUN(__OVERRUN__) |
Ensure that SMARTCARD frame overrun setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_DMAONRXERROR(__DMA__) |
Ensure that SMARTCARD DMA enabling or disabling on error setting is valid. | |
#define | IS_SMARTCARD_ADVFEATURE_MSBFIRST(__MSBFIRST__) |
Ensure that SMARTCARD frame MSB first setting is valid. | |
#define | IS_SMARTCARD_REQUEST_PARAMETER(__PARAM__) |
Ensure that SMARTCARD request parameter is valid. | |
Typedefs | |
typedef uint32_t | HAL_SMARTCARD_StateTypeDef |
HAL SMARTCARD State definition. | |
typedef struct __SMARTCARD_HandleTypeDef | SMARTCARD_HandleTypeDef |
SMARTCARD handle Structure definition. | |
typedef void(* | pSMARTCARD_CallbackTypeDef )(SMARTCARD_HandleTypeDef *hsmartcard) |
HAL SMARTCARD Callback pointer definition. | |
Enumerations | |
enum | HAL_SMARTCARD_CallbackIDTypeDef { HAL_SMARTCARD_TX_COMPLETE_CB_ID = 0x00U, HAL_SMARTCARD_RX_COMPLETE_CB_ID = 0x01U, HAL_SMARTCARD_ERROR_CB_ID = 0x02U, HAL_SMARTCARD_ABORT_COMPLETE_CB_ID = 0x03U, HAL_SMARTCARD_ABORT_TRANSMIT_COMPLETE_CB_ID = 0x04U, HAL_SMARTCARD_ABORT_RECEIVE_COMPLETE_CB_ID = 0x05U, HAL_SMARTCARD_MSPINIT_CB_ID = 0x08U, HAL_SMARTCARD_MSPDEINIT_CB_ID = 0x09U } |
HAL SMARTCARD Callback ID enumeration definition. More... | |
enum | SMARTCARD_ClockSourceTypeDef { SMARTCARD_CLOCKSOURCE_PCLK1 = 0x00U, SMARTCARD_CLOCKSOURCE_PCLK2 = 0x01U, SMARTCARD_CLOCKSOURCE_HSI = 0x02U, SMARTCARD_CLOCKSOURCE_SYSCLK = 0x04U, SMARTCARD_CLOCKSOURCE_LSE = 0x08U, SMARTCARD_CLOCKSOURCE_UNDEFINED = 0x10U } |
SMARTCARD clock sources. More... | |
Functions | |
HAL_StatusTypeDef | HAL_SMARTCARD_Init (SMARTCARD_HandleTypeDef *hsmartcard) |
Initialize the SMARTCARD mode according to the specified parameters in the SMARTCARD_HandleTypeDef and initialize the associated handle. | |
HAL_StatusTypeDef | HAL_SMARTCARD_DeInit (SMARTCARD_HandleTypeDef *hsmartcard) |
DeInitialize the SMARTCARD peripheral. | |
__weak void | HAL_SMARTCARD_MspInit (SMARTCARD_HandleTypeDef *hsmartcard) |
Initialize the SMARTCARD MSP. | |
__weak void | HAL_SMARTCARD_MspDeInit (SMARTCARD_HandleTypeDef *hsmartcard) |
DeInitialize the SMARTCARD MSP. | |
HAL_StatusTypeDef | HAL_SMARTCARD_RegisterCallback (SMARTCARD_HandleTypeDef *hsmartcard, HAL_SMARTCARD_CallbackIDTypeDef CallbackID, pSMARTCARD_CallbackTypeDef pCallback) |
Register a User SMARTCARD Callback To be used instead of the weak predefined callback. | |
HAL_StatusTypeDef | HAL_SMARTCARD_UnRegisterCallback (SMARTCARD_HandleTypeDef *hsmartcard, HAL_SMARTCARD_CallbackIDTypeDef CallbackID) |
Unregister an SMARTCARD callback SMARTCARD callback is redirected to the weak predefined callback. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Transmit (SMARTCARD_HandleTypeDef *hsmartcard, const uint8_t *pData, uint16_t Size, uint32_t Timeout) |
Send an amount of data in blocking mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Receive (SMARTCARD_HandleTypeDef *hsmartcard, uint8_t *pData, uint16_t Size, uint32_t Timeout) |
Receive an amount of data in blocking mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Transmit_IT (SMARTCARD_HandleTypeDef *hsmartcard, const uint8_t *pData, uint16_t Size) |
Send an amount of data in interrupt mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Receive_IT (SMARTCARD_HandleTypeDef *hsmartcard, uint8_t *pData, uint16_t Size) |
Receive an amount of data in interrupt mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Transmit_DMA (SMARTCARD_HandleTypeDef *hsmartcard, const uint8_t *pData, uint16_t Size) |
Send an amount of data in DMA mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Receive_DMA (SMARTCARD_HandleTypeDef *hsmartcard, uint8_t *pData, uint16_t Size) |
Receive an amount of data in DMA mode. | |
HAL_StatusTypeDef | HAL_SMARTCARD_Abort (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing transfers (blocking mode). | |
HAL_StatusTypeDef | HAL_SMARTCARD_AbortTransmit (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing Transmit transfer (blocking mode). | |
HAL_StatusTypeDef | HAL_SMARTCARD_AbortReceive (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing Receive transfer (blocking mode). | |
HAL_StatusTypeDef | HAL_SMARTCARD_Abort_IT (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing transfers (Interrupt mode). | |
HAL_StatusTypeDef | HAL_SMARTCARD_AbortTransmit_IT (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing Transmit transfer (Interrupt mode). | |
HAL_StatusTypeDef | HAL_SMARTCARD_AbortReceive_IT (SMARTCARD_HandleTypeDef *hsmartcard) |
Abort ongoing Receive transfer (Interrupt mode). | |
void | HAL_SMARTCARD_IRQHandler (SMARTCARD_HandleTypeDef *hsmartcard) |
Handle SMARTCARD interrupt requests. | |
__weak void | HAL_SMARTCARD_TxCpltCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
Tx Transfer completed callback. | |
__weak void | HAL_SMARTCARD_RxCpltCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
Rx Transfer completed callback. | |
__weak void | HAL_SMARTCARD_ErrorCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
SMARTCARD error callback. | |
__weak void | HAL_SMARTCARD_AbortCpltCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
SMARTCARD Abort Complete callback. | |
__weak void | HAL_SMARTCARD_AbortTransmitCpltCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
SMARTCARD Abort Complete callback. | |
__weak void | HAL_SMARTCARD_AbortReceiveCpltCallback (SMARTCARD_HandleTypeDef *hsmartcard) |
SMARTCARD Abort Receive Complete callback. | |
HAL_SMARTCARD_StateTypeDef | HAL_SMARTCARD_GetState (SMARTCARD_HandleTypeDef *hsmartcard) |
Return the SMARTCARD handle state. | |
uint32_t | HAL_SMARTCARD_GetError (SMARTCARD_HandleTypeDef *hsmartcard) |
Return the SMARTCARD handle error code. |
Header file of SMARTCARD HAL module.
Copyright (c) 2017 STMicroelectronics. All rights reserved.
This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.
Definition in file stm32l4xx_hal_smartcard.h.