Lines Matching refs:hsc
203 void SMARTCARD_InitCallbacksToDefault(SMARTCARD_HandleTypeDef *hsc);
205 static void SMARTCARD_EndTxTransfer(SMARTCARD_HandleTypeDef *hsc);
206 static void SMARTCARD_EndRxTransfer(SMARTCARD_HandleTypeDef *hsc);
207 static void SMARTCARD_SetConfig (SMARTCARD_HandleTypeDef *hsc);
208 static HAL_StatusTypeDef SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc);
209 static HAL_StatusTypeDef SMARTCARD_EndTransmit_IT(SMARTCARD_HandleTypeDef *hsc);
210 static HAL_StatusTypeDef SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc);
219 static HAL_StatusTypeDef SMARTCARD_WaitOnFlagUntilTimeout(SMARTCARD_HandleTypeDef *hsc, uint32_t Fl…
296 HAL_StatusTypeDef HAL_SMARTCARD_Init(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Init() argument
299 if(hsc == NULL) in HAL_SMARTCARD_Init()
305 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_Init()
306 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in HAL_SMARTCARD_Init()
308 if(hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_Init()
311 hsc->Lock = HAL_UNLOCKED; in HAL_SMARTCARD_Init()
314 SMARTCARD_InitCallbacksToDefault(hsc); in HAL_SMARTCARD_Init()
316 if (hsc->MspInitCallback == NULL) in HAL_SMARTCARD_Init()
318 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_Init()
322 hsc->MspInitCallback(hsc); in HAL_SMARTCARD_Init()
325 HAL_SMARTCARD_MspInit(hsc); in HAL_SMARTCARD_Init()
329 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_Init()
332 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_PSC, hsc->Init.Prescaler); in HAL_SMARTCARD_Init()
335 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_GT, ((hsc->Init.GuardTime)<<8U)); in HAL_SMARTCARD_Init()
338 SMARTCARD_SetConfig(hsc); in HAL_SMARTCARD_Init()
343 CLEAR_BIT(hsc->Instance->CR2, USART_CR2_LINEN); in HAL_SMARTCARD_Init()
344 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_IREN | USART_CR3_HDSEL)); in HAL_SMARTCARD_Init()
347 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Init()
350 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Init()
353 __HAL_SMARTCARD_ENABLE(hsc); in HAL_SMARTCARD_Init()
356 MODIFY_REG(hsc->Instance->CR3, USART_CR3_NACK, hsc->Init.NACKState); in HAL_SMARTCARD_Init()
359 hsc->Instance->CR3 |= (USART_CR3_SCEN); in HAL_SMARTCARD_Init()
362 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Init()
363 hsc->gState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
364 hsc->RxState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
375 HAL_StatusTypeDef HAL_SMARTCARD_DeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_DeInit() argument
378 if(hsc == NULL) in HAL_SMARTCARD_DeInit()
384 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_DeInit()
386 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_DeInit()
389 __HAL_SMARTCARD_DISABLE(hsc); in HAL_SMARTCARD_DeInit()
393 if (hsc->MspDeInitCallback == NULL) in HAL_SMARTCARD_DeInit()
395 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_DeInit()
398 hsc->MspDeInitCallback(hsc); in HAL_SMARTCARD_DeInit()
400 HAL_SMARTCARD_MspDeInit(hsc); in HAL_SMARTCARD_DeInit()
403 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_DeInit()
404 hsc->gState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
405 hsc->RxState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
408 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_DeInit()
419 __weak void HAL_SMARTCARD_MspInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspInit() argument
422 UNUSED(hsc); in HAL_SMARTCARD_MspInit()
435 __weak void HAL_SMARTCARD_MspDeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspDeInit() argument
438 UNUSED(hsc); in HAL_SMARTCARD_MspDeInit()
466 HAL_StatusTypeDef HAL_SMARTCARD_RegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Callba… in HAL_SMARTCARD_RegisterCallback() argument
473 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
478 if (hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_RegisterCallback()
484 hsc->TxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
488 hsc->RxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
492 hsc->ErrorCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
496 hsc->AbortCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
500 hsc->AbortTransmitCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
504 hsc->AbortReceiveCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
509 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
513 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
518 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
525 else if (hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_RegisterCallback()
530 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
534 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
539 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
549 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
577 HAL_StatusTypeDef HAL_SMARTCARD_UnRegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Call… in HAL_SMARTCARD_UnRegisterCallback() argument
581 if (HAL_SMARTCARD_STATE_READY == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
586 …hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
590 …hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
594 …hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in HAL_SMARTCARD_UnRegisterCallback()
598 …hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in HAL_SMARTCARD_UnRegisterCallback()
602 …hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in HAL_SMARTCARD_UnRegisterCallback()
606 …hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in HAL_SMARTCARD_UnRegisterCallback()
611 …hsc->MspInitCallback = HAL_SMARTCARD_MspInit; /* Legacy weak MspInitCa… in HAL_SMARTCARD_UnRegisterCallback()
615 …hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; /* Legacy weak MspDeInit… in HAL_SMARTCARD_UnRegisterCallback()
620 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
627 else if (HAL_SMARTCARD_STATE_RESET == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
632 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_UnRegisterCallback()
636 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_UnRegisterCallback()
641 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
651 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
751 HAL_StatusTypeDef HAL_SMARTCARD_Transmit(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16… in HAL_SMARTCARD_Transmit() argument
756 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit()
764 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit()
766 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit()
767 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit()
772 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit()
773 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit()
774 while(hsc->TxXferCount > 0U) in HAL_SMARTCARD_Transmit()
776 hsc->TxXferCount--; in HAL_SMARTCARD_Transmit()
777 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
781 hsc->Instance->DR = (uint8_t)(*tmp & 0xFFU); in HAL_SMARTCARD_Transmit()
785 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TC, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
791 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Transmit()
794 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit()
813 HAL_StatusTypeDef HAL_SMARTCARD_Receive(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size… in HAL_SMARTCARD_Receive() argument
818 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive()
826 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive()
828 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive()
829 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive()
834 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive()
835 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive()
838 while(hsc->RxXferCount > 0U) in HAL_SMARTCARD_Receive()
840 hsc->RxXferCount--; in HAL_SMARTCARD_Receive()
841 …if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Receive()
845 *tmp = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in HAL_SMARTCARD_Receive()
850 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Receive()
853 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive()
871 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uin… in HAL_SMARTCARD_Transmit_IT() argument
874 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_IT()
882 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
884 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_IT()
885 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_IT()
886 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_IT()
888 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_IT()
889 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_IT()
892 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
895 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Transmit_IT()
898 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Transmit_IT()
901 SET_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in HAL_SMARTCARD_Transmit_IT()
919 HAL_StatusTypeDef HAL_SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t S… in HAL_SMARTCARD_Receive_IT() argument
922 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_IT()
930 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_IT()
932 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_IT()
933 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_IT()
934 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive_IT()
936 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_IT()
937 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_IT()
940 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_IT()
943 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE| USART_CR1_RXNEIE); in HAL_SMARTCARD_Receive_IT()
946 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_IT()
964 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_DMA(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, ui… in HAL_SMARTCARD_Transmit_DMA() argument
969 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_DMA()
977 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
979 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_DMA()
980 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_DMA()
981 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_DMA()
983 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_DMA()
984 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_DMA()
987 hsc->hdmatx->XferCpltCallback = SMARTCARD_DMATransmitCplt; in HAL_SMARTCARD_Transmit_DMA()
990 hsc->hdmatx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Transmit_DMA()
993 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Transmit_DMA()
997 HAL_DMA_Start_IT(hsc->hdmatx, *(const uint32_t*)tmp, (uint32_t)&hsc->Instance->DR, Size); in HAL_SMARTCARD_Transmit_DMA()
1000 __HAL_SMARTCARD_CLEAR_FLAG(hsc, SMARTCARD_FLAG_TC); in HAL_SMARTCARD_Transmit_DMA()
1003 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
1007 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Transmit_DMA()
1026 HAL_StatusTypeDef HAL_SMARTCARD_Receive_DMA(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t … in HAL_SMARTCARD_Receive_DMA() argument
1031 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_DMA()
1039 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1041 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_DMA()
1042 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_DMA()
1044 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_DMA()
1045 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_DMA()
1048 hsc->hdmarx->XferCpltCallback = SMARTCARD_DMAReceiveCplt; in HAL_SMARTCARD_Receive_DMA()
1051 hsc->hdmarx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Receive_DMA()
1054 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Receive_DMA()
1058 HAL_DMA_Start_IT(hsc->hdmarx, (uint32_t)&hsc->Instance->DR, *(uint32_t*)tmp, Size); in HAL_SMARTCARD_Receive_DMA()
1061 __HAL_SMARTCARD_CLEAR_OREFLAG(hsc); in HAL_SMARTCARD_Receive_DMA()
1064 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1067 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Receive_DMA()
1070 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_DMA()
1074 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Receive_DMA()
1096 HAL_StatusTypeDef HAL_SMARTCARD_Abort(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort() argument
1099 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort()
1100 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort()
1103 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort()
1105 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort()
1108 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort()
1112 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1114 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_Abort()
1119 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort()
1121 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort()
1124 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort()
1128 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1130 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_Abort()
1135 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1136 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1139 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort()
1142 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1143 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1160 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit() argument
1163 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit()
1166 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit()
1168 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit()
1171 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit()
1175 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortTransmit()
1177 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit()
1182 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit()
1185 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit()
1202 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive() argument
1205 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive()
1206 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive()
1209 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive()
1211 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive()
1214 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive()
1218 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortReceive()
1220 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive()
1225 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive()
1228 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive()
1247 HAL_StatusTypeDef HAL_SMARTCARD_Abort_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort_IT() argument
1252 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort_IT()
1253 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort_IT()
1258 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1262 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1264 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1268 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1272 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1276 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1278 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1282 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1287 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1290 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort_IT()
1293 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1299 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1301 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1311 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1313 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort_IT()
1316 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1322 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1324 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1338 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1339 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1342 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort_IT()
1345 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1346 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1351 hsc->AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1354 HAL_SMARTCARD_AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1374 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit_IT() argument
1377 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit_IT()
1380 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit_IT()
1382 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit_IT()
1385 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit_IT()
1389 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxOnlyAbortCallback; in HAL_SMARTCARD_AbortTransmit_IT()
1392 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_AbortTransmit_IT()
1395 hsc->hdmatx->XferAbortCallback(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit_IT()
1401 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1404 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1409 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1412 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1419 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1422 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1427 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1430 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1451 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive_IT() argument
1454 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive_IT()
1455 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive_IT()
1458 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive_IT()
1460 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive_IT()
1463 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive_IT()
1467 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxOnlyAbortCallback; in HAL_SMARTCARD_AbortReceive_IT()
1470 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_AbortReceive_IT()
1473 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive_IT()
1479 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1482 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1487 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1490 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1497 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1500 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1505 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1508 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1521 void HAL_SMARTCARD_IRQHandler(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_IRQHandler() argument
1523 uint32_t isrflags = READ_REG(hsc->Instance->SR); in HAL_SMARTCARD_IRQHandler()
1524 uint32_t cr1its = READ_REG(hsc->Instance->CR1); in HAL_SMARTCARD_IRQHandler()
1525 uint32_t cr3its = READ_REG(hsc->Instance->CR3); in HAL_SMARTCARD_IRQHandler()
1536 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1547 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_PE; in HAL_SMARTCARD_IRQHandler()
1553 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_FE; in HAL_SMARTCARD_IRQHandler()
1559 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_NE; in HAL_SMARTCARD_IRQHandler()
1565 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_ORE; in HAL_SMARTCARD_IRQHandler()
1568 if(hsc->ErrorCode != HAL_SMARTCARD_ERROR_NONE) in HAL_SMARTCARD_IRQHandler()
1573 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1578 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1579 if(((hsc->ErrorCode & HAL_SMARTCARD_ERROR_ORE) != RESET) || dmarequest) in HAL_SMARTCARD_IRQHandler()
1584 SMARTCARD_EndRxTransfer(hsc); in HAL_SMARTCARD_IRQHandler()
1586 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_IRQHandler()
1588 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1591 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_IRQHandler()
1595 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMAAbortOnError; in HAL_SMARTCARD_IRQHandler()
1597 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_IRQHandler()
1600 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_IRQHandler()
1607 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1610 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1618 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1621 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1631 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1634 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1636 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_IRQHandler()
1645 SMARTCARD_Transmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1652 SMARTCARD_EndTransmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1663 __weak void HAL_SMARTCARD_TxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_TxCpltCallback() argument
1666 UNUSED(hsc); in HAL_SMARTCARD_TxCpltCallback()
1679 __weak void HAL_SMARTCARD_RxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_RxCpltCallback() argument
1682 UNUSED(hsc); in HAL_SMARTCARD_RxCpltCallback()
1695 __weak void HAL_SMARTCARD_ErrorCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_ErrorCallback() argument
1698 UNUSED(hsc); in HAL_SMARTCARD_ErrorCallback()
1710 __weak void HAL_SMARTCARD_AbortCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortCpltCallback() argument
1713 UNUSED(hsc); in HAL_SMARTCARD_AbortCpltCallback()
1725 __weak void HAL_SMARTCARD_AbortTransmitCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmitCpltCallback() argument
1728 UNUSED(hsc); in HAL_SMARTCARD_AbortTransmitCpltCallback()
1740 __weak void HAL_SMARTCARD_AbortReceiveCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceiveCpltCallback() argument
1743 UNUSED(hsc); in HAL_SMARTCARD_AbortReceiveCpltCallback()
1775 HAL_SMARTCARD_StateTypeDef HAL_SMARTCARD_GetState(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetState() argument
1778 temp1 = hsc->gState; in HAL_SMARTCARD_GetState()
1779 temp2 = hsc->RxState; in HAL_SMARTCARD_GetState()
1790 uint32_t HAL_SMARTCARD_GetError(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetError() argument
1792 return hsc->ErrorCode; in HAL_SMARTCARD_GetError()
1813 void SMARTCARD_InitCallbacksToDefault(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_InitCallbacksToDefault() argument
1816 …hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1817 …hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1818 …hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in SMARTCARD_InitCallbacksToDefault()
1819 …hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in SMARTCARD_InitCallbacksToDefault()
1820 …hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in SMARTCARD_InitCallbacksToDefault()
1821 …hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in SMARTCARD_InitCallbacksToDefault()
1834 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATransmitCplt() local
1836 hsc->TxXferCount = 0U; in SMARTCARD_DMATransmitCplt()
1840 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMATransmitCplt()
1843 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_DMATransmitCplt()
1854 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAReceiveCplt() local
1856 hsc->RxXferCount = 0U; in SMARTCARD_DMAReceiveCplt()
1859 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_DMAReceiveCplt()
1860 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_DMAReceiveCplt()
1864 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAReceiveCplt()
1867 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMAReceiveCplt()
1871 hsc->RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1874 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1887 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAError() local
1888 hsc->RxXferCount = 0U; in SMARTCARD_DMAError()
1889 hsc->TxXferCount = 0U; in SMARTCARD_DMAError()
1890 hsc->ErrorCode = HAL_SMARTCARD_ERROR_DMA; in SMARTCARD_DMAError()
1893 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMAError()
1894 if((hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) && dmarequest) in SMARTCARD_DMAError()
1896 SMARTCARD_EndTxTransfer(hsc); in SMARTCARD_DMAError()
1900 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAError()
1901 if((hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) && dmarequest) in SMARTCARD_DMAError()
1903 SMARTCARD_EndRxTransfer(hsc); in SMARTCARD_DMAError()
1908 hsc->ErrorCallback(hsc); in SMARTCARD_DMAError()
1911 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAError()
1926 static HAL_StatusTypeDef SMARTCARD_WaitOnFlagUntilTimeout(SMARTCARD_HandleTypeDef *hsc, uint32_t Fl… in SMARTCARD_WaitOnFlagUntilTimeout() argument
1929 while((__HAL_SMARTCARD_GET_FLAG(hsc, Flag) ? SET : RESET) == Status) in SMARTCARD_WaitOnFlagUntilTimeout()
1937 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1938 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1940 hsc->gState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1941 hsc->RxState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1944 __HAL_UNLOCK(hsc); in SMARTCARD_WaitOnFlagUntilTimeout()
1959 static void SMARTCARD_EndTxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTxTransfer() argument
1962 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTxTransfer()
1965 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in SMARTCARD_EndTxTransfer()
1975 static void SMARTCARD_EndRxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndRxTransfer() argument
1978 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndRxTransfer()
1981 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_EndRxTransfer()
1982 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndRxTransfer()
1991 static HAL_StatusTypeDef SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Transmit_IT() argument
1995 if(hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) in SMARTCARD_Transmit_IT()
1997 hsc->Instance->DR = (uint8_t)(*hsc->pTxBuffPtr & 0xFFU); in SMARTCARD_Transmit_IT()
1998 hsc->pTxBuffPtr++; in SMARTCARD_Transmit_IT()
2000 if(--hsc->TxXferCount == 0U) in SMARTCARD_Transmit_IT()
2003 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_Transmit_IT()
2006 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_Transmit_IT()
2023 static HAL_StatusTypeDef SMARTCARD_EndTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTransmit_IT() argument
2026 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_EndTransmit_IT()
2029 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndTransmit_IT()
2032 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTransmit_IT()
2036 hsc->TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2039 HAL_SMARTCARD_TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2051 static HAL_StatusTypeDef SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Receive_IT() argument
2055 if(hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) in SMARTCARD_Receive_IT()
2057 *hsc->pRxBuffPtr = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in SMARTCARD_Receive_IT()
2058 hsc->pRxBuffPtr++; in SMARTCARD_Receive_IT()
2060 if(--hsc->RxXferCount == 0U) in SMARTCARD_Receive_IT()
2062 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_Receive_IT()
2065 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in SMARTCARD_Receive_IT()
2068 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_Receive_IT()
2071 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_Receive_IT()
2075 hsc->RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2078 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2099 SMARTCARD_HandleTypeDef* hsc = (SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAAbortOnError() local
2100 hsc->RxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2101 hsc->TxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2105 hsc->ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2108 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2122 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxAbortCallback() local
2124 hsc->hdmatx->XferAbortCallback = NULL; in SMARTCARD_DMATxAbortCallback()
2127 if(hsc->hdmarx != NULL) in SMARTCARD_DMATxAbortCallback()
2129 if(hsc->hdmarx->XferAbortCallback != NULL) in SMARTCARD_DMATxAbortCallback()
2136 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2137 hsc->RxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2140 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMATxAbortCallback()
2143 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2144 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2148 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2151 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2165 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxAbortCallback() local
2167 hsc->hdmarx->XferAbortCallback = NULL; in SMARTCARD_DMARxAbortCallback()
2170 if(hsc->hdmatx != NULL) in SMARTCARD_DMARxAbortCallback()
2172 if(hsc->hdmatx->XferAbortCallback != NULL) in SMARTCARD_DMARxAbortCallback()
2179 hsc->TxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2180 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2183 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMARxAbortCallback()
2186 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2187 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2191 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2194 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2208 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxOnlyAbortCallback() local
2210 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxOnlyAbortCallback()
2213 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxOnlyAbortCallback()
2217 hsc->AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2220 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2234 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxOnlyAbortCallback() local
2236 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxOnlyAbortCallback()
2239 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxOnlyAbortCallback()
2243 hsc->AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2246 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2256 static void SMARTCARD_SetConfig(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_SetConfig() argument
2262 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in SMARTCARD_SetConfig()
2263 assert_param(IS_SMARTCARD_POLARITY(hsc->Init.CLKPolarity)); in SMARTCARD_SetConfig()
2264 assert_param(IS_SMARTCARD_PHASE(hsc->Init.CLKPhase)); in SMARTCARD_SetConfig()
2265 assert_param(IS_SMARTCARD_LASTBIT(hsc->Init.CLKLastBit)); in SMARTCARD_SetConfig()
2266 assert_param(IS_SMARTCARD_BAUDRATE(hsc->Init.BaudRate)); in SMARTCARD_SetConfig()
2267 assert_param(IS_SMARTCARD_WORD_LENGTH(hsc->Init.WordLength)); in SMARTCARD_SetConfig()
2268 assert_param(IS_SMARTCARD_STOPBITS(hsc->Init.StopBits)); in SMARTCARD_SetConfig()
2269 assert_param(IS_SMARTCARD_PARITY(hsc->Init.Parity)); in SMARTCARD_SetConfig()
2270 assert_param(IS_SMARTCARD_MODE(hsc->Init.Mode)); in SMARTCARD_SetConfig()
2271 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in SMARTCARD_SetConfig()
2275 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TE | USART_CR1_RE)); in SMARTCARD_SetConfig()
2278 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2286 tmpreg |= (uint32_t)(USART_CR2_CLKEN | hsc->Init.CLKPolarity | in SMARTCARD_SetConfig()
2287 hsc->Init.CLKPhase| hsc->Init.CLKLastBit | hsc->Init.StopBits); in SMARTCARD_SetConfig()
2289 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2291 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2297 tmpreg |= (uint32_t)(hsc->Init.StopBits); in SMARTCARD_SetConfig()
2300 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2303 tmpreg = hsc->Instance->CR1; in SMARTCARD_SetConfig()
2313 tmpreg |= (uint32_t)hsc->Init.WordLength | hsc->Init.Parity | hsc->Init.Mode; in SMARTCARD_SetConfig()
2316 WRITE_REG(hsc->Instance->CR1, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2320 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_RTSE | USART_CR3_CTSE)); in SMARTCARD_SetConfig()
2323 if(hsc->Instance == USART1) in SMARTCARD_SetConfig()
2326 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()
2331 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()