This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I must not understand how the SCI FIFO works because when I try to empty the Rx FIFO by reading out the number of words indicated by RXFFST, RXFFST still equals 1. I think it should be zero and I think this leads to an OVF condition eventually.
uint16_t fifo_len = sci_reg_->SCIFFRX.bit.RXFFST;
for (i = 0; i < fifo_len; i++) {
rx_data_[rx_ready_index_ ^ 1][rx_index_ + i] = sci_reg_->SCIRXBUF.bit.SAR;
}
// RXFFST isn't 0
The interrupt level is 13 but nothing in the datasheet indicates that that matters for the FFST bits. I'll step the debugger through the loop to watch RXFFST but I'm just wondering if my expectations are correct about how the RXFFST works.