Calculate the number of data to process in RX/TX ISR.
456 uint8_t rx_fifo_depth;
457 uint8_t tx_fifo_depth;
458 uint8_t rx_fifo_threshold;
459 uint8_t tx_fifo_threshold;
461 uint8_t numerator[] = {1U, 1U, 1U, 3U, 7U, 1U, 0U, 0U};
462 uint8_t denominator[] = {8U, 4U, 2U, 4U, 8U, 1U, 1U, 1U};
464 if (hsmartcard->
FifoMode == SMARTCARD_FIFOMODE_DISABLE)
471 rx_fifo_depth = RX_FIFO_DEPTH;
472 tx_fifo_depth = TX_FIFO_DEPTH;
473 rx_fifo_threshold = (uint8_t)(READ_BIT(hsmartcard->
Instance->CR3, USART_CR3_RXFTCFG) >> USART_CR3_RXFTCFG_Pos);
474 tx_fifo_threshold = (uint8_t)(READ_BIT(hsmartcard->
Instance->CR3, USART_CR3_TXFTCFG) >> USART_CR3_TXFTCFG_Pos);
475 hsmartcard->
NbTxDataToProcess = ((uint16_t)tx_fifo_depth * numerator[tx_fifo_threshold]) / (uint16_t)denominator[tx_fifo_threshold];
476 hsmartcard->
NbRxDataToProcess = ((uint16_t)rx_fifo_depth * numerator[rx_fifo_threshold]) / (uint16_t)denominator[rx_fifo_threshold];
uint16_t NbTxDataToProcess
uint16_t NbRxDataToProcess