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.
是接收fifo,我使用的是rxffil中断,那我要是设置的是4级fifo,那不是每次从串口输入的数据要是4的倍数,假如我发送的是3个数据,那不是进不了中断了?要是5个数据的话,那第5个数据就丢失了?
设置RXFFIL为1,SCI有数据就进入中断,或者设为2或3,辅助cputimer,用SysTick进行timeout检查。
或者和上位机协商好,每次只发额定的数据。
不建议设成4容易丢数据。
首先从通讯协议的角度来说的话,使用FIFO,肯定是要清楚其级数,根据级数去取数据。另外,即使你是发了5个字节,而设置的是4级FIFO接收,只要你能即时处理接收中断,将4个字节数据取出,也不应该出现第5个字节数据丢失现象。如果你无法即时取走数据的话,不管是多少级FIFO都有可能会发生Overflow.