Hi all
I'm debugging an application with SCI communication using the FIFO enhancements for TX and RX. I've found that, occasionally, the for loop in which the transmit buffer is written to 16 times (to fill the TX FIFO) is interrumped by a HWI, causing an idle time between bytes in the frame that the other controller involved in the transmission interprets as a faulty frame. This is caused by the peripheral trying to empty the FIFO as soon as it has anything to be sent.
I have been looking for something in the SCI register that would allow me to block transmission as I write into the FIFO, and then allow back transmission as soon as the FIFO is full, so the frame is delayed but its bytes are sent back to back, which is the desired behaviour. Something akin to what the TALK bit does in SPI.
I've tried disabling TX and FIFO enhancements but apparently the FIFO can't be written to if any of those is cleared. Any ideas on how to implement this?
Thanks