什么是FIFO
英文名:first in first out
👀典型的串口设计,串口,它的发送和缓冲区只有一个字节,每次只能处理一个数据,(是CPU处理),这样在复杂的系统中,本来CPU就工作量大,使用串口的时候,数据一帧一帧发送,就要求CPU在干别的事时候停下来去发送一帧,发送后再继续原来的事情,过一会,再跑过去去发送一帧,这样对CPU的效率就很低了。
既然串口的发送和缓冲区只有一个字节,那为什么多增加几个字节呢?
👀FIFO就这样来了。
FIFO是一个寄存器,CPU一次性把64个数据放在FIFO中。
然后对FIFO说:“你发送吧,我还有事要做,我给你的工作干完了再叫我”
这个过程就是:CPU给了FIFO寄存器,然后交给FIFO一位一位地给串口缓冲区发送。
值得注意的是,串口缓冲区的大小还是1,没有变,然后串口再一位一位发送出去。
这样,CPU的负担大大就降低了,这只是串口上的应用,它的作用还是很大的。