我不太理解UART的FIFO,是什么样的工作机制?
1、接收FIFO接收到数据后,如何知道数据已经被CPU读取?
2、FIFO接收16字节,空间满了后,再接收数据的时候是自动覆盖原先的数据吗?
这是我使用查询方式,仅仅是把FIFO接收到的数据存到数组中,
void UART6_Recive_Done(void)
{
uint8_t Recive_Date[255] = {0}, ii = 0;
while(UARTCharsAvail(UART6_BASE))
{
Recive_Date[ii] = UARTCharGetNonBlocking(UART6_BASE);
ii++;
}
}
如何判断数据接收完,ii接收完一次数据如何归零?
希望大侠赐教!!!