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 | ||