Rev 56 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 56 | Rev 61 | ||
---|---|---|---|
Line 734... | Line 734... | ||
734 | to be evaluated by user : this concerns Frame Error, Parity Error or Noise Error in Interrupt mode reception . |
734 | to be evaluated by user : this concerns Frame Error, Parity Error or Noise Error in Interrupt mode reception . |
735 | Received character is then retrieved and stored in Rx buffer, Error code is set to allow user to identify error type, |
735 | Received character is then retrieved and stored in Rx buffer, Error code is set to allow user to identify error type, |
736 | and HAL_SMARTCARD_ErrorCallback() user callback is executed. Transfer is kept ongoing on SMARTCARD side. |
736 | and HAL_SMARTCARD_ErrorCallback() user callback is executed. Transfer is kept ongoing on SMARTCARD side. |
737 | If user wants to abort it, Abort services should be called by user. |
737 | If user wants to abort it, Abort services should be called by user. |
738 | (+) Error is considered as Blocking : Transfer could not be completed properly and is aborted. |
738 | (+) Error is considered as Blocking : Transfer could not be completed properly and is aborted. |
739 | This concerns Frame Error in Interrupt mode tranmission, Overrun Error in Interrupt mode reception and all errors in DMA mode. |
739 | This concerns Frame Error in Interrupt mode transmission, Overrun Error in Interrupt mode reception and all errors in DMA mode. |
740 | Error code is set to allow user to identify error type, and HAL_SMARTCARD_ErrorCallback() user callback is executed. |
740 | Error code is set to allow user to identify error type, and HAL_SMARTCARD_ErrorCallback() user callback is executed. |
741 | 741 | ||
742 | @endverbatim |
742 | @endverbatim |
743 | * @{ |
743 | * @{ |
744 | */ |
744 | */ |
Line 768... | Line 768... | ||
768 | __HAL_LOCK(hsc); |
768 | __HAL_LOCK(hsc); |
769 | 769 | ||
770 | hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; |
770 | hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; |
771 | hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; |
771 | hsc->gState = HAL_SMARTCARD_STATE_BUSY_TX; |
772 | 772 | ||
773 | /* Init tickstart for timeout managment */ |
773 | /* Init tickstart for timeout management */ |
774 | tickstart = HAL_GetTick(); |
774 | tickstart = HAL_GetTick(); |
775 | 775 | ||
776 | hsc->TxXferSize = Size; |
776 | hsc->TxXferSize = Size; |
777 | hsc->TxXferCount = Size; |
777 | hsc->TxXferCount = Size; |
778 | while(hsc->TxXferCount > 0U) |
778 | while(hsc->TxXferCount > 0U) |
Line 830... | Line 830... | ||
830 | __HAL_LOCK(hsc); |
830 | __HAL_LOCK(hsc); |
831 | 831 | ||
832 | hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; |
832 | hsc->ErrorCode = HAL_SMARTCARD_ERROR_NONE; |
833 | hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; |
833 | hsc->RxState = HAL_SMARTCARD_STATE_BUSY_RX; |
834 | 834 | ||
835 | /* Init tickstart for timeout managment */ |
835 | /* Init tickstart for timeout management */ |
836 | tickstart = HAL_GetTick(); |
836 | tickstart = HAL_GetTick(); |
837 | 837 | ||
838 | hsc->RxXferSize = Size; |
838 | hsc->RxXferSize = Size; |
839 | hsc->RxXferCount = Size; |
839 | hsc->RxXferCount = Size; |
840 | 840 |