STM32F4xx_HAL_Driver  1.8.3
stm32f4xx_hal_smartcard.h File Reference

Header file of SMARTCARD HAL module. More...

Go to the source code of this file.

Data Structures

struct  __SMARTCARD_HandleTypeDef
 SMARTCARD handle Structure definition. More...
 

Typedefs

typedef struct __SMARTCARD_HandleTypeDef SMARTCARD_HandleTypeDef
 SMARTCARD handle Structure definition.
 
typedef void(* pSMARTCARD_CallbackTypeDef) (SMARTCARD_HandleTypeDef *hsc)
 HAL SMARTCARD Callback pointer definition. More...
 

Enumerations

enum  HAL_SMARTCARD_StateTypeDef {
  HAL_SMARTCARD_STATE_RESET = 0x00U , HAL_SMARTCARD_STATE_READY = 0x20U , HAL_SMARTCARD_STATE_BUSY = 0x24U , HAL_SMARTCARD_STATE_BUSY_TX = 0x21U ,
  HAL_SMARTCARD_STATE_BUSY_RX = 0x22U , HAL_SMARTCARD_STATE_BUSY_TX_RX = 0x23U , HAL_SMARTCARD_STATE_TIMEOUT = 0xA0U , HAL_SMARTCARD_STATE_ERROR = 0xE0U
}
 HAL SMARTCARD State structures definition. More...
 
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...
 

Functions

HAL_StatusTypeDef HAL_SMARTCARD_Init (SMARTCARD_HandleTypeDef *hsc)
 Initializes the SmartCard mode according to the specified parameters in the SMARTCARD_InitTypeDef and create the associated handle. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_ReInit (SMARTCARD_HandleTypeDef *hsc)
 
HAL_StatusTypeDef HAL_SMARTCARD_DeInit (SMARTCARD_HandleTypeDef *hsc)
 DeInitializes the USART SmartCard peripheral. More...
 
void HAL_SMARTCARD_MspInit (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD MSP Init. More...
 
void HAL_SMARTCARD_MspDeInit (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD MSP DeInit. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_RegisterCallback (SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_CallbackIDTypeDef CallbackID, pSMARTCARD_CallbackTypeDef pCallback)
 Register a User SMARTCARD Callback To be used instead of the weak predefined callback. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_UnRegisterCallback (SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_CallbackIDTypeDef CallbackID)
 Unregister an SMARTCARD callback SMARTCARD callback is redirected to the weak predefined callback. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Transmit (SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16_t Size, uint32_t Timeout)
 Send an amount of data in blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Receive (SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size, uint32_t Timeout)
 Receive an amount of data in blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Transmit_IT (SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16_t Size)
 Send an amount of data in non blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Receive_IT (SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
 Receive an amount of data in non blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Transmit_DMA (SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16_t Size)
 Send an amount of data in non blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Receive_DMA (SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
 Receive an amount of data in non blocking mode. More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Abort (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing transfers (blocking mode). More...
 
HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing Transmit transfer (blocking mode). More...
 
HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing Receive transfer (blocking mode). More...
 
HAL_StatusTypeDef HAL_SMARTCARD_Abort_IT (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing transfers (Interrupt mode). More...
 
HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit_IT (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing Transmit transfer (Interrupt mode). More...
 
HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive_IT (SMARTCARD_HandleTypeDef *hsc)
 Abort ongoing Receive transfer (Interrupt mode). More...
 
void HAL_SMARTCARD_IRQHandler (SMARTCARD_HandleTypeDef *hsc)
 This function handles SMARTCARD interrupt request. More...
 
void HAL_SMARTCARD_TxCpltCallback (SMARTCARD_HandleTypeDef *hsc)
 Tx Transfer completed callbacks. More...
 
void HAL_SMARTCARD_RxCpltCallback (SMARTCARD_HandleTypeDef *hsc)
 Rx Transfer completed callback. More...
 
void HAL_SMARTCARD_ErrorCallback (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD error callback. More...
 
void HAL_SMARTCARD_AbortCpltCallback (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD Abort Complete callback. More...
 
void HAL_SMARTCARD_AbortTransmitCpltCallback (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD Abort Transmit Complete callback. More...
 
void HAL_SMARTCARD_AbortReceiveCpltCallback (SMARTCARD_HandleTypeDef *hsc)
 SMARTCARD Abort Receive Complete callback. More...
 
HAL_SMARTCARD_StateTypeDef HAL_SMARTCARD_GetState (const SMARTCARD_HandleTypeDef *hsc)
 Return the SMARTCARD handle state. More...
 
uint32_t HAL_SMARTCARD_GetError (const SMARTCARD_HandleTypeDef *hsc)
 Return the SMARTCARD error code. More...
 

Variables

 C
 

Detailed Description

Header file of SMARTCARD HAL module.

Author
MCD Application Team
Attention

Copyright (c) 2016 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 stm32f4xx_hal_smartcard.h.

Typedef Documentation

◆ pSMARTCARD_CallbackTypeDef

typedef void(* pSMARTCARD_CallbackTypeDef) (SMARTCARD_HandleTypeDef *hsc)

HAL SMARTCARD Callback pointer definition.

pointer to an SMARTCARD callback function

Definition at line 227 of file stm32f4xx_hal_smartcard.h.

Enumeration Type Documentation

◆ HAL_SMARTCARD_CallbackIDTypeDef

HAL SMARTCARD Callback ID enumeration definition.

Enumerator
HAL_SMARTCARD_TX_COMPLETE_CB_ID 

SMARTCARD Tx Complete Callback ID

HAL_SMARTCARD_RX_COMPLETE_CB_ID 

SMARTCARD Rx Complete Callback ID

HAL_SMARTCARD_ERROR_CB_ID 

SMARTCARD Error Callback ID

HAL_SMARTCARD_ABORT_COMPLETE_CB_ID 

SMARTCARD Abort Complete Callback ID

HAL_SMARTCARD_ABORT_TRANSMIT_COMPLETE_CB_ID 

SMARTCARD Abort Transmit Complete Callback ID

HAL_SMARTCARD_ABORT_RECEIVE_COMPLETE_CB_ID 

SMARTCARD Abort Receive Complete Callback ID

HAL_SMARTCARD_MSPINIT_CB_ID 

SMARTCARD MspInit callback ID

HAL_SMARTCARD_MSPDEINIT_CB_ID 

SMARTCARD MspDeInit callback ID

Definition at line 210 of file stm32f4xx_hal_smartcard.h.

◆ HAL_SMARTCARD_StateTypeDef

HAL SMARTCARD State structures definition.

Note
HAL SMARTCARD State value is a combination of 2 different substates: gState and RxState.
  • gState contains SMARTCARD state information related to global Handle management and also information related to Tx operations. gState value coding follow below described bitmap : b7-b6 Error information 00 : No Error 01 : (Not Used) 10 : Timeout 11 : Error b5 IP initialization status 0 : Reset (IP not initialized) 1 : Init done (IP initialized. HAL SMARTCARD Init function already called) b4-b3 (not used) xx : Should be set to 00 b2 Intrinsic process state 0 : Ready 1 : Busy (IP busy with some configuration or internal operations) b1 (not used) x : Should be set to 0 b0 Tx state 0 : Ready (no Tx operation ongoing) 1 : Busy (Tx operation ongoing)
  • RxState contains information related to Rx operations. RxState value coding follow below described bitmap : b7-b6 (not used) xx : Should be set to 00 b5 IP initialization status 0 : Reset (IP not initialized) 1 : Init done (IP initialized) b4-b2 (not used) xxx : Should be set to 000 b1 Rx state 0 : Ready (no Rx operation ongoing) 1 : Busy (Rx operation ongoing) b0 (not used) x : Should be set to 0.
Enumerator
HAL_SMARTCARD_STATE_RESET 

Peripheral is not yet Initialized Value is allowed for gState and RxState

HAL_SMARTCARD_STATE_READY 

Peripheral Initialized and ready for use Value is allowed for gState and RxState

HAL_SMARTCARD_STATE_BUSY 

an internal process is ongoing Value is allowed for gState only

HAL_SMARTCARD_STATE_BUSY_TX 

Data Transmission process is ongoing Value is allowed for gState only

HAL_SMARTCARD_STATE_BUSY_RX 

Data Reception process is ongoing Value is allowed for RxState only

HAL_SMARTCARD_STATE_BUSY_TX_RX 

Data Transmission and Reception process is ongoing Not to be used for neither gState nor RxState. Value is result of combination (Or) between gState and RxState values

HAL_SMARTCARD_STATE_TIMEOUT 

Timeout state Value is allowed for gState only

HAL_SMARTCARD_STATE_ERROR 

Error Value is allowed for gState only

Definition at line 129 of file stm32f4xx_hal_smartcard.h.