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…
299 HAL_StatusTypeDef HAL_SMARTCARD_Init(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Init() argument
302 if(hsc == NULL) in HAL_SMARTCARD_Init()
308 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_Init()
309 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in HAL_SMARTCARD_Init()
311 if(hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_Init()
314 hsc->Lock = HAL_UNLOCKED; in HAL_SMARTCARD_Init()
317 SMARTCARD_InitCallbacksToDefault(hsc); in HAL_SMARTCARD_Init()
319 if (hsc->MspInitCallback == NULL) in HAL_SMARTCARD_Init()
321 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_Init()
325 hsc->MspInitCallback(hsc); in HAL_SMARTCARD_Init()
328 HAL_SMARTCARD_MspInit(hsc); in HAL_SMARTCARD_Init()
332 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_Init()
335 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_PSC, hsc->Init.Prescaler); in HAL_SMARTCARD_Init()
338 MODIFY_REG(hsc->Instance->GTPR, USART_GTPR_GT, ((hsc->Init.GuardTime)<<8U)); in HAL_SMARTCARD_Init()
341 SMARTCARD_SetConfig(hsc); in HAL_SMARTCARD_Init()
346 CLEAR_BIT(hsc->Instance->CR2, USART_CR2_LINEN); in HAL_SMARTCARD_Init()
347 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_IREN | USART_CR3_HDSEL)); in HAL_SMARTCARD_Init()
350 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Init()
353 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Init()
356 __HAL_SMARTCARD_ENABLE(hsc); in HAL_SMARTCARD_Init()
359 MODIFY_REG(hsc->Instance->CR3, USART_CR3_NACK, hsc->Init.NACKState); in HAL_SMARTCARD_Init()
362 hsc->Instance->CR3 |= (USART_CR3_SCEN); in HAL_SMARTCARD_Init()
365 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Init()
366 hsc->gState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
367 hsc->RxState= HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Init()
378 HAL_StatusTypeDef HAL_SMARTCARD_DeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_DeInit() argument
381 if(hsc == NULL) in HAL_SMARTCARD_DeInit()
387 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in HAL_SMARTCARD_DeInit()
389 hsc->gState = HAL_SMARTCARD_STATE_BUSY; in HAL_SMARTCARD_DeInit()
392 __HAL_SMARTCARD_DISABLE(hsc); in HAL_SMARTCARD_DeInit()
396 if (hsc->MspDeInitCallback == NULL) in HAL_SMARTCARD_DeInit()
398 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_DeInit()
401 hsc->MspDeInitCallback(hsc); in HAL_SMARTCARD_DeInit()
403 HAL_SMARTCARD_MspDeInit(hsc); in HAL_SMARTCARD_DeInit()
406 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_DeInit()
407 hsc->gState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
408 hsc->RxState = HAL_SMARTCARD_STATE_RESET; in HAL_SMARTCARD_DeInit()
411 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_DeInit()
422 __weak void HAL_SMARTCARD_MspInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspInit() argument
425 UNUSED(hsc); in HAL_SMARTCARD_MspInit()
438 __weak void HAL_SMARTCARD_MspDeInit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_MspDeInit() argument
441 UNUSED(hsc); in HAL_SMARTCARD_MspDeInit()
469 HAL_StatusTypeDef HAL_SMARTCARD_RegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Callba… in HAL_SMARTCARD_RegisterCallback() argument
476 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
481 if (hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_RegisterCallback()
487 hsc->TxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
491 hsc->RxCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
495 hsc->ErrorCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
499 hsc->AbortCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
503 hsc->AbortTransmitCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
507 hsc->AbortReceiveCpltCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
512 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
516 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
521 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
528 else if (hsc->gState == HAL_SMARTCARD_STATE_RESET) in HAL_SMARTCARD_RegisterCallback()
533 hsc->MspInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
537 hsc->MspDeInitCallback = pCallback; in HAL_SMARTCARD_RegisterCallback()
542 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
552 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_RegisterCallback()
580 HAL_StatusTypeDef HAL_SMARTCARD_UnRegisterCallback(SMARTCARD_HandleTypeDef *hsc, HAL_SMARTCARD_Call… in HAL_SMARTCARD_UnRegisterCallback() argument
584 if (HAL_SMARTCARD_STATE_READY == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
589 …hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
593 …hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in HAL_SMARTCARD_UnRegisterCallback()
597 …hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in HAL_SMARTCARD_UnRegisterCallback()
601 …hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in HAL_SMARTCARD_UnRegisterCallback()
605 …hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in HAL_SMARTCARD_UnRegisterCallback()
609 …hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in HAL_SMARTCARD_UnRegisterCallback()
614 …hsc->MspInitCallback = HAL_SMARTCARD_MspInit; /* Legacy weak MspInitCa… in HAL_SMARTCARD_UnRegisterCallback()
618 …hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; /* Legacy weak MspDeInit… in HAL_SMARTCARD_UnRegisterCallback()
623 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
630 else if (HAL_SMARTCARD_STATE_RESET == hsc->gState) in HAL_SMARTCARD_UnRegisterCallback()
635 hsc->MspInitCallback = HAL_SMARTCARD_MspInit; in HAL_SMARTCARD_UnRegisterCallback()
639 hsc->MspDeInitCallback = HAL_SMARTCARD_MspDeInit; in HAL_SMARTCARD_UnRegisterCallback()
644 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
654 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_INVALID_CALLBACK; in HAL_SMARTCARD_UnRegisterCallback()
754 HAL_StatusTypeDef HAL_SMARTCARD_Transmit(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uint16… in HAL_SMARTCARD_Transmit() argument
759 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit()
767 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit()
769 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit()
770 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit()
775 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit()
776 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit()
777 while(hsc->TxXferCount > 0U) in HAL_SMARTCARD_Transmit()
779 hsc->TxXferCount--; in HAL_SMARTCARD_Transmit()
780 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
784 hsc->Instance->DR = (uint8_t)(*tmp & 0xFFU); in HAL_SMARTCARD_Transmit()
788 … if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_TC, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Transmit()
794 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Transmit()
797 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit()
816 HAL_StatusTypeDef HAL_SMARTCARD_Receive(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t Size… in HAL_SMARTCARD_Receive() argument
821 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive()
829 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive()
831 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive()
832 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive()
837 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive()
838 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive()
841 while(hsc->RxXferCount > 0U) in HAL_SMARTCARD_Receive()
843 hsc->RxXferCount--; in HAL_SMARTCARD_Receive()
844 …if(SMARTCARD_WaitOnFlagUntilTimeout(hsc, SMARTCARD_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK) in HAL_SMARTCARD_Receive()
848 *tmp = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in HAL_SMARTCARD_Receive()
853 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Receive()
856 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive()
874 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, uin… in HAL_SMARTCARD_Transmit_IT() argument
877 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_IT()
885 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
887 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_IT()
888 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_IT()
889 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_IT()
891 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_IT()
892 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_IT()
895 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_IT()
898 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Transmit_IT()
901 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Transmit_IT()
904 SET_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in HAL_SMARTCARD_Transmit_IT()
922 HAL_StatusTypeDef HAL_SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t S… in HAL_SMARTCARD_Receive_IT() argument
925 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_IT()
933 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_IT()
935 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_IT()
936 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_IT()
937 hsc->RxXferCount = Size; in HAL_SMARTCARD_Receive_IT()
939 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_IT()
940 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_IT()
943 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_IT()
946 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE| USART_CR1_RXNEIE); in HAL_SMARTCARD_Receive_IT()
949 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_IT()
967 HAL_StatusTypeDef HAL_SMARTCARD_Transmit_DMA(SMARTCARD_HandleTypeDef *hsc, const uint8_t *pData, ui… in HAL_SMARTCARD_Transmit_DMA() argument
972 if(hsc->gState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Transmit_DMA()
980 __HAL_LOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
982 hsc->pTxBuffPtr = pData; in HAL_SMARTCARD_Transmit_DMA()
983 hsc->TxXferSize = Size; in HAL_SMARTCARD_Transmit_DMA()
984 hsc->TxXferCount = Size; in HAL_SMARTCARD_Transmit_DMA()
986 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Transmit_DMA()
987 hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; in HAL_SMARTCARD_Transmit_DMA()
990 hsc->hdmatx->XferCpltCallback = SMARTCARD_DMATransmitCplt; in HAL_SMARTCARD_Transmit_DMA()
993 hsc->hdmatx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Transmit_DMA()
996 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Transmit_DMA()
1000 HAL_DMA_Start_IT(hsc->hdmatx, *(const uint32_t*)tmp, (uint32_t)&hsc->Instance->DR, Size); in HAL_SMARTCARD_Transmit_DMA()
1003 __HAL_SMARTCARD_CLEAR_FLAG(hsc, SMARTCARD_FLAG_TC); in HAL_SMARTCARD_Transmit_DMA()
1006 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Transmit_DMA()
1010 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Transmit_DMA()
1029 HAL_StatusTypeDef HAL_SMARTCARD_Receive_DMA(SMARTCARD_HandleTypeDef *hsc, uint8_t *pData, uint16_t … in HAL_SMARTCARD_Receive_DMA() argument
1034 if(hsc->RxState == HAL_SMARTCARD_STATE_READY) in HAL_SMARTCARD_Receive_DMA()
1042 __HAL_LOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1044 hsc->pRxBuffPtr = pData; in HAL_SMARTCARD_Receive_DMA()
1045 hsc->RxXferSize = Size; in HAL_SMARTCARD_Receive_DMA()
1047 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Receive_DMA()
1048 hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; in HAL_SMARTCARD_Receive_DMA()
1051 hsc->hdmarx->XferCpltCallback = SMARTCARD_DMAReceiveCplt; in HAL_SMARTCARD_Receive_DMA()
1054 hsc->hdmarx->XferErrorCallback = SMARTCARD_DMAError; in HAL_SMARTCARD_Receive_DMA()
1057 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Receive_DMA()
1061 HAL_DMA_Start_IT(hsc->hdmarx, (uint32_t)&hsc->Instance->DR, *(uint32_t*)tmp, Size); in HAL_SMARTCARD_Receive_DMA()
1064 __HAL_SMARTCARD_CLEAR_OREFLAG(hsc); in HAL_SMARTCARD_Receive_DMA()
1067 __HAL_UNLOCK(hsc); in HAL_SMARTCARD_Receive_DMA()
1070 SET_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in HAL_SMARTCARD_Receive_DMA()
1073 SET_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Receive_DMA()
1077 SET_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Receive_DMA()
1099 HAL_StatusTypeDef HAL_SMARTCARD_Abort(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort() argument
1102 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort()
1103 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort()
1106 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort()
1108 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort()
1111 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort()
1115 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1117 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_Abort()
1122 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort()
1124 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort()
1127 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort()
1131 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort()
1133 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_Abort()
1138 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1139 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort()
1142 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort()
1145 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1146 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort()
1163 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit() argument
1166 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit()
1169 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit()
1171 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit()
1174 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit()
1178 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortTransmit()
1180 HAL_DMA_Abort(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit()
1185 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit()
1188 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit()
1205 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive() argument
1208 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive()
1209 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive()
1212 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive()
1214 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive()
1217 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive()
1221 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_AbortReceive()
1223 HAL_DMA_Abort(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive()
1228 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive()
1231 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive()
1250 HAL_StatusTypeDef HAL_SMARTCARD_Abort_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_Abort_IT() argument
1255 …CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_TCI… in HAL_SMARTCARD_Abort_IT()
1256 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_Abort_IT()
1261 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1265 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1267 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1271 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1275 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1279 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1281 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxAbortCallback; in HAL_SMARTCARD_Abort_IT()
1285 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1290 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_Abort_IT()
1293 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_Abort_IT()
1296 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_Abort_IT()
1302 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1304 hsc->hdmatx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1314 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_Abort_IT()
1316 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_Abort_IT()
1319 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_Abort_IT()
1325 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_Abort_IT()
1327 hsc->hdmarx->XferAbortCallback = NULL; in HAL_SMARTCARD_Abort_IT()
1341 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1342 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_Abort_IT()
1345 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_Abort_IT()
1348 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1349 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_Abort_IT()
1354 hsc->AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1357 HAL_SMARTCARD_AbortCpltCallback(hsc); in HAL_SMARTCARD_Abort_IT()
1377 HAL_StatusTypeDef HAL_SMARTCARD_AbortTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmit_IT() argument
1380 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in HAL_SMARTCARD_AbortTransmit_IT()
1383 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT)) in HAL_SMARTCARD_AbortTransmit_IT()
1385 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in HAL_SMARTCARD_AbortTransmit_IT()
1388 if(hsc->hdmatx != NULL) in HAL_SMARTCARD_AbortTransmit_IT()
1392 hsc->hdmatx->XferAbortCallback = SMARTCARD_DMATxOnlyAbortCallback; in HAL_SMARTCARD_AbortTransmit_IT()
1395 if(HAL_DMA_Abort_IT(hsc->hdmatx) != HAL_OK) in HAL_SMARTCARD_AbortTransmit_IT()
1398 hsc->hdmatx->XferAbortCallback(hsc->hdmatx); in HAL_SMARTCARD_AbortTransmit_IT()
1404 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1407 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1412 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1415 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1422 hsc->TxXferCount = 0x00U; in HAL_SMARTCARD_AbortTransmit_IT()
1425 hsc->gState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortTransmit_IT()
1430 hsc->AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1433 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in HAL_SMARTCARD_AbortTransmit_IT()
1454 HAL_StatusTypeDef HAL_SMARTCARD_AbortReceive_IT(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceive_IT() argument
1457 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in HAL_SMARTCARD_AbortReceive_IT()
1458 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in HAL_SMARTCARD_AbortReceive_IT()
1461 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_AbortReceive_IT()
1463 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_AbortReceive_IT()
1466 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_AbortReceive_IT()
1470 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMARxOnlyAbortCallback; in HAL_SMARTCARD_AbortReceive_IT()
1473 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_AbortReceive_IT()
1476 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_AbortReceive_IT()
1482 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1485 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1490 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1493 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1500 hsc->RxXferCount = 0x00U; in HAL_SMARTCARD_AbortReceive_IT()
1503 hsc->RxState = HAL_SMARTCARD_STATE_READY; in HAL_SMARTCARD_AbortReceive_IT()
1508 hsc->AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1511 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in HAL_SMARTCARD_AbortReceive_IT()
1524 void HAL_SMARTCARD_IRQHandler(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_IRQHandler() argument
1526 uint32_t isrflags = READ_REG(hsc->Instance->SR); in HAL_SMARTCARD_IRQHandler()
1527 uint32_t cr1its = READ_REG(hsc->Instance->CR1); in HAL_SMARTCARD_IRQHandler()
1528 uint32_t cr3its = READ_REG(hsc->Instance->CR3); in HAL_SMARTCARD_IRQHandler()
1539 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1550 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_PE; in HAL_SMARTCARD_IRQHandler()
1556 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_FE; in HAL_SMARTCARD_IRQHandler()
1562 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_NE; in HAL_SMARTCARD_IRQHandler()
1568 hsc->ErrorCode |= HAL_SMARTCARD_ERROR_ORE; in HAL_SMARTCARD_IRQHandler()
1571 if(hsc->ErrorCode != HAL_SMARTCARD_ERROR_NONE) in HAL_SMARTCARD_IRQHandler()
1576 SMARTCARD_Receive_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1581 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1582 if(((hsc->ErrorCode & HAL_SMARTCARD_ERROR_ORE) != RESET) || dmarequest) in HAL_SMARTCARD_IRQHandler()
1587 SMARTCARD_EndRxTransfer(hsc); in HAL_SMARTCARD_IRQHandler()
1589 if(HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR)) in HAL_SMARTCARD_IRQHandler()
1591 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in HAL_SMARTCARD_IRQHandler()
1594 if(hsc->hdmarx != NULL) in HAL_SMARTCARD_IRQHandler()
1598 hsc->hdmarx->XferAbortCallback = SMARTCARD_DMAAbortOnError; in HAL_SMARTCARD_IRQHandler()
1600 if(HAL_DMA_Abort_IT(hsc->hdmarx) != HAL_OK) in HAL_SMARTCARD_IRQHandler()
1603 hsc->hdmarx->XferAbortCallback(hsc->hdmarx); in HAL_SMARTCARD_IRQHandler()
1610 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1613 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1621 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1624 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1634 hsc->ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1637 HAL_SMARTCARD_ErrorCallback(hsc); in HAL_SMARTCARD_IRQHandler()
1639 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in HAL_SMARTCARD_IRQHandler()
1648 SMARTCARD_Transmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1655 SMARTCARD_EndTransmit_IT(hsc); in HAL_SMARTCARD_IRQHandler()
1666 __weak void HAL_SMARTCARD_TxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_TxCpltCallback() argument
1669 UNUSED(hsc); in HAL_SMARTCARD_TxCpltCallback()
1682 __weak void HAL_SMARTCARD_RxCpltCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_RxCpltCallback() argument
1685 UNUSED(hsc); in HAL_SMARTCARD_RxCpltCallback()
1698 __weak void HAL_SMARTCARD_ErrorCallback(SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_ErrorCallback() argument
1701 UNUSED(hsc); in HAL_SMARTCARD_ErrorCallback()
1713 __weak void HAL_SMARTCARD_AbortCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortCpltCallback() argument
1716 UNUSED(hsc); in HAL_SMARTCARD_AbortCpltCallback()
1728 __weak void HAL_SMARTCARD_AbortTransmitCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortTransmitCpltCallback() argument
1731 UNUSED(hsc); in HAL_SMARTCARD_AbortTransmitCpltCallback()
1743 __weak void HAL_SMARTCARD_AbortReceiveCpltCallback (SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_AbortReceiveCpltCallback() argument
1746 UNUSED(hsc); in HAL_SMARTCARD_AbortReceiveCpltCallback()
1778 HAL_SMARTCARD_StateTypeDef HAL_SMARTCARD_GetState(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetState() argument
1781 temp1 = hsc->gState; in HAL_SMARTCARD_GetState()
1782 temp2 = hsc->RxState; in HAL_SMARTCARD_GetState()
1793 uint32_t HAL_SMARTCARD_GetError(const SMARTCARD_HandleTypeDef *hsc) in HAL_SMARTCARD_GetError() argument
1795 return hsc->ErrorCode; in HAL_SMARTCARD_GetError()
1816 void SMARTCARD_InitCallbacksToDefault(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_InitCallbacksToDefault() argument
1819 …hsc->TxCpltCallback = HAL_SMARTCARD_TxCpltCallback; /* Legacy weak TxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1820 …hsc->RxCpltCallback = HAL_SMARTCARD_RxCpltCallback; /* Legacy weak RxCpltCal… in SMARTCARD_InitCallbacksToDefault()
1821 …hsc->ErrorCallback = HAL_SMARTCARD_ErrorCallback; /* Legacy weak ErrorCall… in SMARTCARD_InitCallbacksToDefault()
1822 …hsc->AbortCpltCallback = HAL_SMARTCARD_AbortCpltCallback; /* Legacy weak AbortCplt… in SMARTCARD_InitCallbacksToDefault()
1823 …hsc->AbortTransmitCpltCallback = HAL_SMARTCARD_AbortTransmitCpltCallback; /* Legacy weak AbortTran… in SMARTCARD_InitCallbacksToDefault()
1824 …hsc->AbortReceiveCpltCallback = HAL_SMARTCARD_AbortReceiveCpltCallback; /* Legacy weak AbortRece… in SMARTCARD_InitCallbacksToDefault()
1837 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATransmitCplt() local
1839 hsc->TxXferCount = 0U; in SMARTCARD_DMATransmitCplt()
1843 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMATransmitCplt()
1846 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_DMATransmitCplt()
1857 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAReceiveCplt() local
1859 hsc->RxXferCount = 0U; in SMARTCARD_DMAReceiveCplt()
1862 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_DMAReceiveCplt()
1863 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_DMAReceiveCplt()
1867 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAReceiveCplt()
1870 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMAReceiveCplt()
1874 hsc->RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1877 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_DMAReceiveCplt()
1890 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAError() local
1891 hsc->RxXferCount = 0U; in SMARTCARD_DMAError()
1892 hsc->TxXferCount = 0U; in SMARTCARD_DMAError()
1893 hsc->ErrorCode = HAL_SMARTCARD_ERROR_DMA; in SMARTCARD_DMAError()
1896 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAT); in SMARTCARD_DMAError()
1897 if((hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) && dmarequest) in SMARTCARD_DMAError()
1899 SMARTCARD_EndTxTransfer(hsc); in SMARTCARD_DMAError()
1903 dmarequest = HAL_IS_BIT_SET(hsc->Instance->CR3, USART_CR3_DMAR); in SMARTCARD_DMAError()
1904 if((hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) && dmarequest) in SMARTCARD_DMAError()
1906 SMARTCARD_EndRxTransfer(hsc); in SMARTCARD_DMAError()
1911 hsc->ErrorCallback(hsc); in SMARTCARD_DMAError()
1914 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAError()
1929 static HAL_StatusTypeDef SMARTCARD_WaitOnFlagUntilTimeout(SMARTCARD_HandleTypeDef *hsc, uint32_t Fl… in SMARTCARD_WaitOnFlagUntilTimeout() argument
1932 while((__HAL_SMARTCARD_GET_FLAG(hsc, Flag) ? SET : RESET) == Status) in SMARTCARD_WaitOnFlagUntilTimeout()
1940 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1941 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_WaitOnFlagUntilTimeout()
1943 hsc->gState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1944 hsc->RxState= HAL_SMARTCARD_STATE_READY; in SMARTCARD_WaitOnFlagUntilTimeout()
1947 __HAL_UNLOCK(hsc); in SMARTCARD_WaitOnFlagUntilTimeout()
1962 static void SMARTCARD_EndTxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTxTransfer() argument
1965 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTxTransfer()
1968 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE)); in SMARTCARD_EndTxTransfer()
1978 static void SMARTCARD_EndRxTransfer(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndRxTransfer() argument
1981 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndRxTransfer()
1984 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE)); in SMARTCARD_EndRxTransfer()
1985 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndRxTransfer()
1994 static HAL_StatusTypeDef SMARTCARD_Transmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Transmit_IT() argument
1998 if(hsc->gState == HAL_SMARTCARD_STATE_BUSY_TX) in SMARTCARD_Transmit_IT()
2000 hsc->Instance->DR = (uint8_t)(*hsc->pTxBuffPtr & 0xFFU); in SMARTCARD_Transmit_IT()
2001 hsc->pTxBuffPtr++; in SMARTCARD_Transmit_IT()
2003 if(--hsc->TxXferCount == 0U) in SMARTCARD_Transmit_IT()
2006 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TXEIE); in SMARTCARD_Transmit_IT()
2009 SET_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_Transmit_IT()
2026 static HAL_StatusTypeDef SMARTCARD_EndTransmit_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_EndTransmit_IT() argument
2029 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_TCIE); in SMARTCARD_EndTransmit_IT()
2032 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_EndTransmit_IT()
2035 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_EndTransmit_IT()
2039 hsc->TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2042 HAL_SMARTCARD_TxCpltCallback(hsc); in SMARTCARD_EndTransmit_IT()
2054 static HAL_StatusTypeDef SMARTCARD_Receive_IT(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_Receive_IT() argument
2058 if(hsc->RxState == HAL_SMARTCARD_STATE_BUSY_RX) in SMARTCARD_Receive_IT()
2060 *hsc->pRxBuffPtr = (uint8_t)(hsc->Instance->DR & (uint8_t)0xFFU); in SMARTCARD_Receive_IT()
2061 hsc->pRxBuffPtr++; in SMARTCARD_Receive_IT()
2063 if(--hsc->RxXferCount == 0U) in SMARTCARD_Receive_IT()
2065 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_RXNEIE); in SMARTCARD_Receive_IT()
2068 CLEAR_BIT(hsc->Instance->CR1, USART_CR1_PEIE); in SMARTCARD_Receive_IT()
2071 CLEAR_BIT(hsc->Instance->CR3, USART_CR3_EIE); in SMARTCARD_Receive_IT()
2074 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_Receive_IT()
2078 hsc->RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2081 HAL_SMARTCARD_RxCpltCallback(hsc); in SMARTCARD_Receive_IT()
2102 SMARTCARD_HandleTypeDef* hsc = (SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMAAbortOnError() local
2103 hsc->RxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2104 hsc->TxXferCount = 0x00U; in SMARTCARD_DMAAbortOnError()
2108 hsc->ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2111 HAL_SMARTCARD_ErrorCallback(hsc); in SMARTCARD_DMAAbortOnError()
2125 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxAbortCallback() local
2127 hsc->hdmatx->XferAbortCallback = NULL; in SMARTCARD_DMATxAbortCallback()
2130 if(hsc->hdmarx != NULL) in SMARTCARD_DMATxAbortCallback()
2132 if(hsc->hdmarx->XferAbortCallback != NULL) in SMARTCARD_DMATxAbortCallback()
2139 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2140 hsc->RxXferCount = 0x00U; in SMARTCARD_DMATxAbortCallback()
2143 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMATxAbortCallback()
2146 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2147 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxAbortCallback()
2151 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2154 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMATxAbortCallback()
2168 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxAbortCallback() local
2170 hsc->hdmarx->XferAbortCallback = NULL; in SMARTCARD_DMARxAbortCallback()
2173 if(hsc->hdmatx != NULL) in SMARTCARD_DMARxAbortCallback()
2175 if(hsc->hdmatx->XferAbortCallback != NULL) in SMARTCARD_DMARxAbortCallback()
2182 hsc->TxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2183 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxAbortCallback()
2186 hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; in SMARTCARD_DMARxAbortCallback()
2189 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2190 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxAbortCallback()
2194 hsc->AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2197 HAL_SMARTCARD_AbortCpltCallback(hsc); in SMARTCARD_DMARxAbortCallback()
2211 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMATxOnlyAbortCallback() local
2213 hsc->TxXferCount = 0x00U; in SMARTCARD_DMATxOnlyAbortCallback()
2216 hsc->gState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMATxOnlyAbortCallback()
2220 hsc->AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2223 HAL_SMARTCARD_AbortTransmitCpltCallback(hsc); in SMARTCARD_DMATxOnlyAbortCallback()
2237 SMARTCARD_HandleTypeDef* hsc = ( SMARTCARD_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; in SMARTCARD_DMARxOnlyAbortCallback() local
2239 hsc->RxXferCount = 0x00U; in SMARTCARD_DMARxOnlyAbortCallback()
2242 hsc->RxState = HAL_SMARTCARD_STATE_READY; in SMARTCARD_DMARxOnlyAbortCallback()
2246 hsc->AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2249 HAL_SMARTCARD_AbortReceiveCpltCallback(hsc); in SMARTCARD_DMARxOnlyAbortCallback()
2259 static void SMARTCARD_SetConfig(SMARTCARD_HandleTypeDef *hsc) in SMARTCARD_SetConfig() argument
2265 assert_param(IS_SMARTCARD_INSTANCE(hsc->Instance)); in SMARTCARD_SetConfig()
2266 assert_param(IS_SMARTCARD_POLARITY(hsc->Init.CLKPolarity)); in SMARTCARD_SetConfig()
2267 assert_param(IS_SMARTCARD_PHASE(hsc->Init.CLKPhase)); in SMARTCARD_SetConfig()
2268 assert_param(IS_SMARTCARD_LASTBIT(hsc->Init.CLKLastBit)); in SMARTCARD_SetConfig()
2269 assert_param(IS_SMARTCARD_BAUDRATE(hsc->Init.BaudRate)); in SMARTCARD_SetConfig()
2270 assert_param(IS_SMARTCARD_WORD_LENGTH(hsc->Init.WordLength)); in SMARTCARD_SetConfig()
2271 assert_param(IS_SMARTCARD_STOPBITS(hsc->Init.StopBits)); in SMARTCARD_SetConfig()
2272 assert_param(IS_SMARTCARD_PARITY(hsc->Init.Parity)); in SMARTCARD_SetConfig()
2273 assert_param(IS_SMARTCARD_MODE(hsc->Init.Mode)); in SMARTCARD_SetConfig()
2274 assert_param(IS_SMARTCARD_NACK_STATE(hsc->Init.NACKState)); in SMARTCARD_SetConfig()
2278 CLEAR_BIT(hsc->Instance->CR1, (USART_CR1_TE | USART_CR1_RE)); in SMARTCARD_SetConfig()
2281 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2289 tmpreg |= (uint32_t)(USART_CR2_CLKEN | hsc->Init.CLKPolarity | in SMARTCARD_SetConfig()
2290 hsc->Init.CLKPhase| hsc->Init.CLKLastBit | hsc->Init.StopBits); in SMARTCARD_SetConfig()
2292 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2294 tmpreg = hsc->Instance->CR2; in SMARTCARD_SetConfig()
2300 tmpreg |= (uint32_t)(hsc->Init.StopBits); in SMARTCARD_SetConfig()
2303 WRITE_REG(hsc->Instance->CR2, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2306 tmpreg = hsc->Instance->CR1; in SMARTCARD_SetConfig()
2316 tmpreg |= (uint32_t)hsc->Init.WordLength | hsc->Init.Parity | hsc->Init.Mode; in SMARTCARD_SetConfig()
2319 WRITE_REG(hsc->Instance->CR1, (uint32_t)tmpreg); in SMARTCARD_SetConfig()
2323 CLEAR_BIT(hsc->Instance->CR3, (USART_CR3_RTSE | USART_CR3_CTSE)); in SMARTCARD_SetConfig()
2327 if((hsc->Instance == USART1) || (hsc->Instance == USART6)) in SMARTCARD_SetConfig()
2330 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()
2333 if(hsc->Instance == USART1) in SMARTCARD_SetConfig()
2336 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()
2342 hsc->Instance->BRR = SMARTCARD_BRR(pclk, hsc->Init.BaudRate); in SMARTCARD_SetConfig()