100 #ifdef HAL_SMARTCARD_MODULE_ENABLED 106 #define TEACK_REACK_TIMEOUT 1000U 107 #define HAL_SMARTCARD_TXDMA_TIMEOUTVALUE 22000U 108 #define USART_CR1_FIELDS ((uint32_t)(USART_CR1_M | USART_CR1_PCE | USART_CR1_PS | \ 109 USART_CR1_TE | USART_CR1_RE | USART_CR1_OVER8)) 110 #define USART_CR2_CLK_FIELDS ((uint32_t)(USART_CR2_CLKEN|USART_CR2_CPOL|USART_CR2_CPHA|USART_CR2_LBCL)) 111 #define USART_CR2_FIELDS ((uint32_t)(USART_CR2_RTOEN|USART_CR2_CLK_FIELDS|USART_CR2_STOP)) 112 #define USART_CR3_FIELDS ((uint32_t)(USART_CR3_ONEBIT|USART_CR3_NACK|USART_CR3_SCARCNT)) 221 SMARTCARD_SetConfig(hsc);
225 SMARTCARD_AdvFeatureConfig(hsc);
241 return (SMARTCARD_CheckIdleState(hsc));
365 uint32_t tickstart = 0U;
369 if((pData ==
NULL) || (Size == 0U))
422 uint32_t tickstart = 0U;
426 if((pData ==
NULL) || (Size == 0U))
450 *pData++ = (uint8_t)(hsc->
Instance->
RDR & (uint8_t)0x00FFU);
479 if((pData ==
NULL) || (Size == 0U))
523 if((pData ==
NULL) || (Size == 0U))
572 if((pData ==
NULL) || (Size == 0U))
597 tmp = (uint32_t*)&pData;
634 if((pData ==
NULL) || (Size == 0U))
658 tmp = (uint32_t*)&pData;
692 uint32_t dmarequest = 0x00U;
693 uint32_t errorflags = 0x00U;
697 if(errorflags ==
RESET)
702 SMARTCARD_Receive_IT(hsc);
739 SMARTCARD_Receive_IT(hsc);
750 SMARTCARD_EndRxTransfer(hsc);
794 SMARTCARD_Transmit_IT(hsc);
890 uint32_t temp1= 0x00U, temp2 = 0x00U;
994 uint32_t tmpreg = 0x00000000U;
995 uint32_t clocksource = 0x00000000U;
1064 switch (clocksource)
1093 uint32_t tickstart = 0U;
1207 if((Timeout == 0U)||((
HAL_GetTick() - Tickstart ) > Timeout))
1318 SMARTCARD_EndTxTransfer(hsc);
1325 SMARTCARD_EndRxTransfer(hsc);
#define CLEAR_BIT(REG, BIT)
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
#define IS_SMARTCARD_ONE_BIT_SAMPLE(__ONEBIT__)
#define SMARTCARD_FLAG_TXE
#define SMARTCARD_GTPR_GT_LSB_POS
HAL_StatusTypeDef HAL_SMARTCARD_Receive(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size, uint32_t Timeout)
#define SMARTCARD_ADVFEATURE_NO_INIT
#define IS_SMARTCARD_ADVFEATURE_INIT(INIT)
#define assert_param(expr)
Include module's header file.
#define USART_CR2_DATAINV
#define __HAL_SMARTCARD_CLEAR_IT(__HANDLE__, __IT_CLEAR__)
Clears the specified SMARTCARD ISR flag, in setting the proper ICR register flag. ...
#define HSI_VALUE
Internal High Speed oscillator (HSI) value. This value is used by the RCC HAL module to compute the s...
DMA_HandleTypeDef * hdmarx
#define IS_SMARTCARD_ADVFEATURE_SWAP(SWAP)
#define __HAL_UNLOCK(__HANDLE__)
#define IS_SMARTCARD_TIMEOUT_VALUE(__TIMEOUTVALUE__)
HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
#define SMARTCARD_ADVFEATURE_SWAP_INIT
#define IS_SMARTCARD_WORD_LENGTH(__LENGTH__)
SMARTCARD_AdvFeatureInitTypeDef AdvancedInit
HAL_StatusTypeDef HAL_SMARTCARD_Transmit(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size, uint32_t Timeout)
#define SMARTCARD_FLAG_RXNE
#define SMARTCARD_FLAG_PE
uint32_t RxPinLevelInvert
#define SMARTCARD_ADVFEATURE_MSBFIRST_INIT
void(* XferCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define __HAL_LOCK(__HANDLE__)
#define IS_SMARTCARD_ADVFEATURE_RXINV(RXINV)
#define HAL_SMARTCARD_ERROR_PE
void HAL_SMARTCARD_TxCpltCallback(SMARTCARD_HandleTypeDef *hsc)
uint32_t HAL_RCC_GetPCLK1Freq(void)
HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_SMARTCARD_Init(SMARTCARD_HandleTypeDef *hsc)
HAL_StatusTypeDef HAL_SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
#define IS_SMARTCARD_MODE(__MODE__)
#define SMARTCARD_CR3_SCARCNT_LSB_POS
HAL_StatusTypeDef HAL_SMARTCARD_Receive_DMA(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
#define SMARTCARD_ADVFEATURE_DATAINVERT_INIT
#define __HAL_SMARTCARD_GET_FLAG(__HANDLE__, __FLAG__)
Checks whether the specified Smartcard flag is set or not.
This file contains all the functions prototypes for the HAL module driver.
#define IS_SMARTCARD_INSTANCE(__INSTANCE__)
void HAL_SMARTCARD_ErrorCallback(SMARTCARD_HandleTypeDef *hsc)
#define SMARTCARD_ADVFEATURE_TXINVERT_INIT
#define IS_SMARTCARD_LASTBIT(__LASTBIT__)
#define HAL_SMARTCARD_ERROR_FE
#define USART_CR2_MSBFIRST
#define HAL_SMARTCARD_ERROR_ORE
uint32_t HAL_RCC_GetSysClockFreq(void)
#define IS_SMARTCARD_PHASE(__CPHA__)
#define LSE_VALUE
External Low Speed oscillator (LSE) value.
SMARTCARD handle Structure definition.
#define IS_SMARTCARD_STOPBITS(__STOPBITS__)
#define HAL_SMARTCARD_ERROR_NE
#define SMARTCARD_FLAG_ORE
#define HAL_SMARTCARD_ERROR_DMA
#define IS_SMARTCARD_ADVFEATURE_TXINV(TXINV)
#define SMARTCARD_NACK_ENABLE
__IO HAL_SMARTCARD_StateTypeDef RxState
void(* XferAbortCallback)(struct __DMA_HandleTypeDef *hdma)
uint32_t HAL_SMARTCARD_GetError(SMARTCARD_HandleTypeDef *hsc)
HAL_SMARTCARD_StateTypeDef
HAL State structures definition.
#define SMARTCARD_ADVFEATURE_RXINVERT_INIT
HAL_StatusTypeDef HAL_SMARTCARD_Transmit_DMA(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
#define __HAL_SMARTCARD_ENABLE(__HANDLE__)
Enable the USART associated to the SMARTCARD Handle.
#define SET_BIT(REG, BIT)
#define SMARTCARD_ADVFEATURE_RXOVERRUNDISABLE_INIT
#define HAL_IS_BIT_SET(REG, BIT)
#define __HAL_SMARTCARD_DISABLE(__HANDLE__)
Disable the USART associated to the SMARTCARD Handle.
#define IS_SMARTCARD_TIMEOUT(__TIMEOUT__)
HAL_StatusTypeDef HAL_SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size)
#define IS_SMARTCARD_OVERRUN(OVERRUN)
DMA handle Structure definition.
#define SMARTCARD_GETCLOCKSOURCE(__HANDLE__, __CLOCKSOURCE__)
Reports the SMARTCARD clock source.
#define SMARTCARD_MODE_TX
#define IS_SMARTCARD_POLARITY(__CPOL__)
#define IS_SMARTCARD_ADVFEATURE_DMAONRXERROR(DMA)
SMARTCARD_InitTypeDef Init
#define SMARTCARD_FLAG_TC
#define IS_SMARTCARD_PARITY(__PARITY__)
#define IS_SMARTCARD_ADVFEATURE_DATAINV(DATAINV)
#define HAL_SMARTCARD_ERROR_NONE
#define SMARTCARD_RTOR_BLEN_LSB_POS
HAL_StatusTypeDef HAL_SMARTCARD_DeInit(SMARTCARD_HandleTypeDef *hsc)
DMA_HandleTypeDef * hdmatx
void HAL_SMARTCARD_MspInit(SMARTCARD_HandleTypeDef *hsc)
__IO HAL_SMARTCARD_StateTypeDef gState
#define IS_SMARTCARD_AUTORETRY_COUNT(__COUNT__)
HAL_StatusTypeDef
HAL Status structures definition.
#define SMARTCARD_FLAG_NE
#define SMARTCARD_ADVFEATURE_DMADISABLEONERROR_INIT
void(* XferErrorCallback)(struct __DMA_HandleTypeDef *hdma)
uint32_t HAL_GetTick(void)
Provides a tick value in millisecond.
#define SMARTCARD_TIMEOUT_ENABLE
#define IS_SMARTCARD_ADVFEATURE_MSBFIRST(MSBFIRST)
void HAL_SMARTCARD_IRQHandler(SMARTCARD_HandleTypeDef *hsc)
void HAL_SMARTCARD_MspDeInit(SMARTCARD_HandleTypeDef *hsc)
HAL_SMARTCARD_StateTypeDef HAL_SMARTCARD_GetState(SMARTCARD_HandleTypeDef *hsc)
#define IS_SMARTCARD_BAUDRATE(__BAUDRATE__)
#define SMARTCARD_FLAG_FE
uint32_t HAL_RCC_GetPCLK2Freq(void)
#define __HAL_SMARTCARD_DISABLE_IT(__HANDLE__, __INTERRUPT__)
Disables the specified SmartCard interrupt.
uint32_t TxPinLevelInvert
uint32_t DMADisableonRxError
void HAL_SMARTCARD_RxCpltCallback(SMARTCARD_HandleTypeDef *hsc)
#define IS_SMARTCARD_NACK(__NACK__)