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…
295 HAL_StatusTypeDef HAL_SMARTCARD_Init(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Init() argument
298 if(hsc == NULL) in HAL_SMARTCARD_Init()
304 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_Init()
305 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in HAL_SMARTCARD_Init()
307 if(hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_Init()
310 hsc->Lock = HAL_UNLOCKED; in HAL_SMARTCARD_Init()
313 SMARTCARD_InitCallbacksToDefault(hsc); in HAL_SMARTCARD_Init()
315 if (hsc->MspInitCallback == NULL) in HAL_SMARTCARD_Init()
317 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_Init()
321 hsc->MspInitCallback(hsc); in HAL_SMARTCARD_Init()
324 HAL_SMARTCARD_MspInit(hsc); in HAL_SMARTCARD_Init()
328 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_Init()
331 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_PSC, hsc->Init.Prescaler); in HAL_SMARTCARD_Init()
334 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_GT, ((hsc->Init.GuardTime)<<8U)); in HAL_SMARTCARD_Init()
337 SMARTCARD_SetConfig(hsc); in HAL_SMARTCARD_Init()
342 CLEAR_BIT(hsc->Instance->CR2, USART_CR2_LINEN); in HAL_SMARTCARD_Init()
343 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_IREN | USART_CR3_HDSEL)); in HAL_SMARTCARD_Init()
346 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Init()
349 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Init()
352 __HAL_SMARTCARD_ENABLE(hsc); in HAL_SMARTCARD_Init()
355 MODIFY_REG(hsc->Instance->CR3, USART_CR3_NACK, hsc->Init.NACKState); in HAL_SMARTCARD_Init()
358 hsc->Instance->CR3 |= (USART_CR3_SCEN); in HAL_SMARTCARD_Init()
361 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Init()
362 hsc->gState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
363 hsc->RxState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
374 HAL_StatusTypeDef HAL_SMARTCARD_DeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_DeInit() argument
377 if(hsc == NULL) in HAL_SMARTCARD_DeInit()
383 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_DeInit()
385 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_DeInit()
388 __HAL_SMARTCARD_DISABLE(hsc); in HAL_SMARTCARD_DeInit()
392 if (hsc->MspDeInitCallback == NULL) in HAL_SMARTCARD_DeInit()
394 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_DeInit()
397 hsc->MspDeInitCallback(hsc); in HAL_SMARTCARD_DeInit()
399 HAL_SMARTCARD_MspDeInit(hsc); in HAL_SMARTCARD_DeInit()
402 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_DeInit()
403 hsc->gState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
404 hsc->RxState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
407 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_DeInit()
418 __weak void HAL_SMARTCARD_MspInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspInit() argument
421 UNUSED(hsc); in HAL_SMARTCARD_MspInit()
434 __weak void HAL_SMARTCARD_MspDeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspDeInit() argument
437 UNUSED(hsc); in HAL_SMARTCARD_MspDeInit()
465 HAL_StatusTypeDef HAL_SMARTCARD_RegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Callba… in HAL_SMARTCARD_RegisterCallback() argument
472 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
477 if (hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_RegisterCallback()
483 hsc->TxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
487 hsc->RxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
491 hsc->ErrorCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
495 hsc->AbortCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
499 hsc->AbortTransmitCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
503 hsc->AbortReceiveCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
508 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
512 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
517 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
524 else if (hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_RegisterCallback()
529 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
533 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
538 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
548 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
576 HAL_StatusTypeDef HAL_SMARTCARD_UnRegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Call… in HAL_SMARTCARD_UnRegisterCallback() argument
580 if (HAL_SMARTCARD_STATE_READY == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
585hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
589hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
593hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in HAL_SMARTCARD_UnRegisterCallback()
597hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in HAL_SMARTCARD_UnRegisterCallback()
601hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in HAL_SMARTCARD_UnRegisterCallback()
605hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in HAL_SMARTCARD_UnRegisterCallback()
610hsc->MspInitCallback = HAL_SMARTCARD_MspInit; /* Legacy weak MspInitCa… in HAL_SMARTCARD_UnRegisterCallback()
614hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; /* Legacy weak MspDeInit… in HAL_SMARTCARD_UnRegisterCallback()
619 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
626 else if (HAL_SMARTCARD_STATE_RESET == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
631 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_UnRegisterCallback()
635 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_UnRegisterCallback()
640 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
650 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
750 HAL_StatusTypeDef HAL_SMARTCARD_Transmit(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16… in HAL_SMARTCARD_Transmit() argument
755 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit()
763 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit()
765 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit()
766 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit()
771 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit()
772 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit()
773 while(hsc->TxXferCount > 0U) in HAL_SMARTCARD_Transmit()
775 hsc->TxXferCount--; in HAL_SMARTCARD_Transmit()
776 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
780 hsc->Instance->DR = (uint8_t)(*tmp & 0xFFU); in HAL_SMARTCARD_Transmit()
784 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TC, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
790 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Transmit()
793 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit()
812 HAL_StatusTypeDef HAL_SMARTCARD_Receive(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size… in HAL_SMARTCARD_Receive() argument
817 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive()
825 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive()
827 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive()
828 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive()
833 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive()
834 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive()
837 while(hsc->RxXferCount > 0U) in HAL_SMARTCARD_Receive()
839 hsc->RxXferCount--; in HAL_SMARTCARD_Receive()
840 …if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Receive()
844 *tmp = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in HAL_SMARTCARD_Receive()
849 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Receive()
852 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive()
870 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uin… in HAL_SMARTCARD_Transmit_IT() argument
873 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_IT()
881 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
883 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_IT()
884 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_IT()
885 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_IT()
887 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_IT()
888 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_IT()
891 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
894 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Transmit_IT()
897 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Transmit_IT()
900 SET_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in HAL_SMARTCARD_Transmit_IT()
918 HAL_StatusTypeDef HAL_SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t S… in HAL_SMARTCARD_Receive_IT() argument
921 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_IT()
929 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_IT()
931 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_IT()
932 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_IT()
933 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive_IT()
935 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_IT()
936 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_IT()
939 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_IT()
942 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE| USART_CR1_RXNEIE); in HAL_SMARTCARD_Receive_IT()
945 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_IT()
963 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_DMA(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, ui… in HAL_SMARTCARD_Transmit_DMA() argument
968 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_DMA()
976 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
978 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_DMA()
979 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_DMA()
980 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_DMA()
982 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_DMA()
983 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_DMA()
986 hsc->hdmatx->XferCpltCallback = SMARTCARD_DMATransmitCplt; in HAL_SMARTCARD_Transmit_DMA()
989 hsc->hdmatx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Transmit_DMA()
992 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Transmit_DMA()
996 HAL_DMA_Start_IT(hsc->hdmatx, *(const uint32_t*)tmp, (uint32_t)&hsc->Instance->DR, Size); in HAL_SMARTCARD_Transmit_DMA()
999 __HAL_SMARTCARD_CLEAR_FLAG(hsc, SMARTCARD_FLAG_TC); in HAL_SMARTCARD_Transmit_DMA()
1002 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
1006 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Transmit_DMA()
1025 HAL_StatusTypeDef HAL_SMARTCARD_Receive_DMA(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t … in HAL_SMARTCARD_Receive_DMA() argument
1030 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_DMA()
1038 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1040 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_DMA()
1041 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_DMA()
1043 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_DMA()
1044 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_DMA()
1047 hsc->hdmarx->XferCpltCallback = SMARTCARD_DMAReceiveCplt; in HAL_SMARTCARD_Receive_DMA()
1050 hsc->hdmarx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Receive_DMA()
1053 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Receive_DMA()
1057 HAL_DMA_Start_IT(hsc->hdmarx, (uint32_t)&hsc->Instance->DR, *(uint32_t*)tmp, Size); in HAL_SMARTCARD_Receive_DMA()
1060 __HAL_SMARTCARD_CLEAR_OREFLAG(hsc); in HAL_SMARTCARD_Receive_DMA()
1063 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1066 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Receive_DMA()
1069 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_DMA()
1073 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Receive_DMA()
1095 HAL_StatusTypeDef HAL_SMARTCARD_Abort(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort() argument
1098 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort()
1099 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort()
1102 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort()
1104 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort()
1107 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort()
1111 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1113 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_Abort()
1118 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort()
1120 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort()
1123 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort()
1127 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1129 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_Abort()
1134 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1135 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1138 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort()
1141 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1142 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1159 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit() argument
1162 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit()
1165 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit()
1167 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit()
1170 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit()
1174 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortTransmit()
1176 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit()
1181 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit()
1184 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit()
1201 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive() argument
1204 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive()
1205 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive()
1208 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive()
1210 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive()
1213 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive()
1217 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortReceive()
1219 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive()
1224 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive()
1227 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive()
1246 HAL_StatusTypeDef HAL_SMARTCARD_Abort_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort_IT() argument
1251 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort_IT()
1252 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort_IT()
1257 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1261 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1263 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1267 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1271 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1275 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1277 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1281 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1286 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1289 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort_IT()
1292 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1298 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1300 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1310 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1312 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort_IT()
1315 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1321 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1323 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1337 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1338 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1341 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort_IT()
1344 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1345 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1350 hsc->AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1353 HAL_SMARTCARD_AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1373 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit_IT() argument
1376 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit_IT()
1379 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit_IT()
1381 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit_IT()
1384 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit_IT()
1388 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxOnlyAbortCallback; in HAL_SMARTCARD_AbortTransmit_IT()
1391 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_AbortTransmit_IT()
1394 hsc->hdmatx->XferAbortCallback(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit_IT()
1400 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1403 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1408 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1411 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1418 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1421 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1426 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1429 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1450 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive_IT() argument
1453 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive_IT()
1454 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive_IT()
1457 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive_IT()
1459 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive_IT()
1462 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive_IT()
1466 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxOnlyAbortCallback; in HAL_SMARTCARD_AbortReceive_IT()
1469 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_AbortReceive_IT()
1472 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive_IT()
1478 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1481 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1486 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1489 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1496 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1499 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1504 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1507 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1520 void HAL_SMARTCARD_IRQHandler(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_IRQHandler() argument
1522 uint32_t isrflags = READ_REG(hsc->Instance->SR); in HAL_SMARTCARD_IRQHandler()
1523 uint32_t cr1its = READ_REG(hsc->Instance->CR1); in HAL_SMARTCARD_IRQHandler()
1524 uint32_t cr3its = READ_REG(hsc->Instance->CR3); in HAL_SMARTCARD_IRQHandler()
1535 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1546 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_PE; in HAL_SMARTCARD_IRQHandler()
1552 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_FE; in HAL_SMARTCARD_IRQHandler()
1558 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_NE; in HAL_SMARTCARD_IRQHandler()
1564 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_ORE; in HAL_SMARTCARD_IRQHandler()
1567 if(hsc->ErrorCode != HAL_SMARTCARD_ERROR_NONE) in HAL_SMARTCARD_IRQHandler()
1572 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1577 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1578 if(((hsc->ErrorCode & HAL_SMARTCARD_ERROR_ORE) != RESET) || dmarequest) in HAL_SMARTCARD_IRQHandler()
1583 SMARTCARD_EndRxTransfer(hsc); in HAL_SMARTCARD_IRQHandler()
1585 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_IRQHandler()
1587 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1590 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_IRQHandler()
1594 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMAAbortOnError; in HAL_SMARTCARD_IRQHandler()
1596 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_IRQHandler()
1599 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_IRQHandler()
1606 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1609 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1617 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1620 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1630 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1633 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1635 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_IRQHandler()
1644 SMARTCARD_Transmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1651 SMARTCARD_EndTransmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1662 __weak void HAL_SMARTCARD_TxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_TxCpltCallback() argument
1665 UNUSED(hsc); in HAL_SMARTCARD_TxCpltCallback()
1678 __weak void HAL_SMARTCARD_RxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_RxCpltCallback() argument
1681 UNUSED(hsc); in HAL_SMARTCARD_RxCpltCallback()
1694 __weak void HAL_SMARTCARD_ErrorCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_ErrorCallback() argument
1697 UNUSED(hsc); in HAL_SMARTCARD_ErrorCallback()
1709 __weak void HAL_SMARTCARD_AbortCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortCpltCallback() argument
1712 UNUSED(hsc); in HAL_SMARTCARD_AbortCpltCallback()
1724 __weak void HAL_SMARTCARD_AbortTransmitCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmitCpltCallback() argument
1727 UNUSED(hsc); in HAL_SMARTCARD_AbortTransmitCpltCallback()
1739 __weak void HAL_SMARTCARD_AbortReceiveCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceiveCpltCallback() argument
1742 UNUSED(hsc); in HAL_SMARTCARD_AbortReceiveCpltCallback()
1774 HAL_SMARTCARD_StateTypeDef HAL_SMARTCARD_GetState(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetState() argument
1777 temp1 = hsc->gState; in HAL_SMARTCARD_GetState()
1778 temp2 = hsc->RxState; in HAL_SMARTCARD_GetState()
1789 uint32_t HAL_SMARTCARD_GetError(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetError() argument
1791 return hsc->ErrorCode; in HAL_SMARTCARD_GetError()
1812 void SMARTCARD_InitCallbacksToDefault(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_InitCallbacksToDefault() argument
1815hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1816hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1817hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in SMARTCARD_InitCallbacksToDefault()
1818hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in SMARTCARD_InitCallbacksToDefault()
1819hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in SMARTCARD_InitCallbacksToDefault()
1820hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in SMARTCARD_InitCallbacksToDefault()
1833 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATransmitCplt() local
1835 hsc->TxXferCount = 0U; in SMARTCARD_DMATransmitCplt()
1839 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMATransmitCplt()
1842 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_DMATransmitCplt()
1853 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAReceiveCplt() local
1855 hsc->RxXferCount = 0U; in SMARTCARD_DMAReceiveCplt()
1858 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_DMAReceiveCplt()
1859 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_DMAReceiveCplt()
1863 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAReceiveCplt()
1866 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMAReceiveCplt()
1870 hsc->RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1873 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1886 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAError() local
1887 hsc->RxXferCount = 0U; in SMARTCARD_DMAError()
1888 hsc->TxXferCount = 0U; in SMARTCARD_DMAError()
1889 hsc->ErrorCode = HAL_SMARTCARD_ERROR_DMA; in SMARTCARD_DMAError()
1892 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMAError()
1893 if((hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) && dmarequest) in SMARTCARD_DMAError()
1895 SMARTCARD_EndTxTransfer(hsc); in SMARTCARD_DMAError()
1899 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAError()
1900 if((hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) && dmarequest) in SMARTCARD_DMAError()
1902 SMARTCARD_EndRxTransfer(hsc); in SMARTCARD_DMAError()
1907 hsc->ErrorCallback(hsc); in SMARTCARD_DMAError()
1910 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAError()
1925 static HAL_StatusTypeDef SMARTCARD_WaitOnFlagUntilTimeout(SMARTCARD_HandleTypeDef *hsc, uint32_t Fl… in SMARTCARD_WaitOnFlagUntilTimeout() argument
1928 while((__HAL_SMARTCARD_GET_FLAG(hsc, Flag) ? SET : RESET) == Status) in SMARTCARD_WaitOnFlagUntilTimeout()
1936 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1937 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1939 hsc->gState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1940 hsc->RxState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1943 __HAL_UNLOCK(hsc); in SMARTCARD_WaitOnFlagUntilTimeout()
1958 static void SMARTCARD_EndTxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTxTransfer() argument
1961 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTxTransfer()
1964 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in SMARTCARD_EndTxTransfer()
1974 static void SMARTCARD_EndRxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndRxTransfer() argument
1977 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndRxTransfer()
1980 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_EndRxTransfer()
1981 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndRxTransfer()
1990 static HAL_StatusTypeDef SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Transmit_IT() argument
1994 if(hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) in SMARTCARD_Transmit_IT()
1996 hsc->Instance->DR = (uint8_t)(*hsc->pTxBuffPtr & 0xFFU); in SMARTCARD_Transmit_IT()
1997 hsc->pTxBuffPtr++; in SMARTCARD_Transmit_IT()
1999 if(--hsc->TxXferCount == 0U) in SMARTCARD_Transmit_IT()
2002 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_Transmit_IT()
2005 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_Transmit_IT()
2022 static HAL_StatusTypeDef SMARTCARD_EndTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTransmit_IT() argument
2025 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_EndTransmit_IT()
2028 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndTransmit_IT()
2031 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTransmit_IT()
2035 hsc->TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2038 HAL_SMARTCARD_TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2050 static HAL_StatusTypeDef SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Receive_IT() argument
2054 if(hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) in SMARTCARD_Receive_IT()
2056 *hsc->pRxBuffPtr = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in SMARTCARD_Receive_IT()
2057 hsc->pRxBuffPtr++; in SMARTCARD_Receive_IT()
2059 if(--hsc->RxXferCount == 0U) in SMARTCARD_Receive_IT()
2061 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_Receive_IT()
2064 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in SMARTCARD_Receive_IT()
2067 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_Receive_IT()
2070 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_Receive_IT()
2074 hsc->RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2077 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2098 SMARTCARD_HandleTypeDef* hsc = (SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAAbortOnError() local
2099 hsc->RxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2100 hsc->TxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2104 hsc->ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2107 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2121 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxAbortCallback() local
2123 hsc->hdmatx->XferAbortCallback = NULL; in SMARTCARD_DMATxAbortCallback()
2126 if(hsc->hdmarx != NULL) in SMARTCARD_DMATxAbortCallback()
2128 if(hsc->hdmarx->XferAbortCallback != NULL) in SMARTCARD_DMATxAbortCallback()
2135 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2136 hsc->RxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2139 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMATxAbortCallback()
2142 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2143 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2147 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2150 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2164 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxAbortCallback() local
2166 hsc->hdmarx->XferAbortCallback = NULL; in SMARTCARD_DMARxAbortCallback()
2169 if(hsc->hdmatx != NULL) in SMARTCARD_DMARxAbortCallback()
2171 if(hsc->hdmatx->XferAbortCallback != NULL) in SMARTCARD_DMARxAbortCallback()
2178 hsc->TxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2179 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2182 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMARxAbortCallback()
2185 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2186 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2190 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2193 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2207 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxOnlyAbortCallback() local
2209 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxOnlyAbortCallback()
2212 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxOnlyAbortCallback()
2216 hsc->AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2219 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2233 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxOnlyAbortCallback() local
2235 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxOnlyAbortCallback()
2238 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxOnlyAbortCallback()
2242 hsc->AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2245 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2255 static void SMARTCARD_SetConfig(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_SetConfig() argument
2261 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in SMARTCARD_SetConfig()
2262 assert_param(IS_SMARTCARD_POLARITY(hsc->Init.CLKPolarity)); in SMARTCARD_SetConfig()
2263 assert_param(IS_SMARTCARD_PHASE(hsc->Init.CLKPhase)); in SMARTCARD_SetConfig()
2264 assert_param(IS_SMARTCARD_LASTBIT(hsc->Init.CLKLastBit)); in SMARTCARD_SetConfig()
2265 assert_param(IS_SMARTCARD_BAUDRATE(hsc->Init.BaudRate)); in SMARTCARD_SetConfig()
2266 assert_param(IS_SMARTCARD_WORD_LENGTH(hsc->Init.WordLength)); in SMARTCARD_SetConfig()
2267 assert_param(IS_SMARTCARD_STOPBITS(hsc->Init.StopBits)); in SMARTCARD_SetConfig()
2268 assert_param(IS_SMARTCARD_PARITY(hsc->Init.Parity)); in SMARTCARD_SetConfig()
2269 assert_param(IS_SMARTCARD_MODE(hsc->Init.Mode)); in SMARTCARD_SetConfig()
2270 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in SMARTCARD_SetConfig()
2274 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TE | USART_CR1_RE)); in SMARTCARD_SetConfig()
2277 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2285 tmpreg |= (uint32_t)(USART_CR2_CLKEN | hsc->Init.CLKPolarity | in SMARTCARD_SetConfig()
2286 hsc->Init.CLKPhase| hsc->Init.CLKLastBit | hsc->Init.StopBits); in SMARTCARD_SetConfig()
2288 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2290 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2296 tmpreg |= (uint32_t)(hsc->Init.StopBits); in SMARTCARD_SetConfig()
2299 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2302 tmpreg = hsc->Instance->CR1; in SMARTCARD_SetConfig()
2312 tmpreg |= (uint32_t)hsc->Init.WordLength | hsc->Init.Parity | hsc->Init.Mode; in SMARTCARD_SetConfig()
2315 WRITE_REG(hsc->Instance->CR1, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2319 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_RTSE | USART_CR3_CTSE)); in SMARTCARD_SetConfig()
2322 if(hsc->Instance == USART1) in SMARTCARD_SetConfig()
2325 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()
2330 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()