使用FIFO功能时,当接收数据时,假设设置RXFFIL位为2,那么接收到2个字节后,RXFFST位也为2(通过单步调试程序发现此位的确变为2了),此时RXFFST位和RXFFIL位匹配,接收FIFO将产生一个中断请求。但是当发送数据时就出现问题了,问题描述如下:
单步调试发现,TXFFST位始终为0。如果设置TXFFIL位为2,由于TXFFST位始终为0,那不就进不了中断了?怎样操作会使TXFFST位为2呢?
peng huifeng:
使用FIFO发送数据时,根据你的设置,需要先往TXFIFO里面填充2个数据数据,才能触发发送中断,后续的数据在中断里面填充就好了;