目前使用牛桥,从PC端每100ms,传送3个byte给予nuc240,
前21次接收,皆正常,只要传送至第22次,RBR暂存就会停在传送的最后1个BYTE,
经确认后,为FIFO最大为64BYTE,故只要传送到第22次就会超过,
此部分,想请问,该如何正确接收完数据后,一并将FIFO内数据清除,使它不会发生满出的情况???
RX_FULL=0,并未显示满的情况
2022/09/06 16:37
FiFo内的数据,读一次RBR清除一个,后面的数据前移。所以接收FIFO是随着读取自动清除的。一直不读取数据,接收FIFO就会满
处理方法一,采用轮询的方式,主循环中不断查询 FiFo中是否有数据,有就读空 FiFo。
处理方法二 ,采用中断的方式,配置 FiFo 到一定字节数据时,就产生中断,读空 FiFo。
BSP中有UART的sample code可以参考
FiFo内的数据,读一个清除一个,后面的数据前移。
处理方法一,主循环中不断读判 FiFo中是否有数据,有就读空 FiFo。
处理方法二 ,配置 FiFo 到一定字节数据时,就产生中断,读空 FiFo。
具体请参阅BSP, 或电话咨寻。