您的位置 首页 编程

对UART的FIFO的了解

FIFO的必要性。在进行UART通信时,中断方式比轮询方式要简便且效率高。但是,如果没有收发FIFO,则每传输一个数据(5~8位)都要中断处理

FIFO的必要性。在进行UART通讯时,中止方法比轮询方法要简洁且功率高。可是,假如没有收发FIFO,则每传输一个数据(5~8位)都要中止处理一次,功率依然不高。假如有了收发FIFO,则能够在接连收发若干个数据(可多至14个)后才发生一次中止,然后一同处理。这就大大提高了收发功率。

  接纳超时问题。假如没有接纳超时功用,则在对方现已发送结束而接纳FIFO未填满时并不会触发中止(FIFO满才会触发中止),成果形成最终接纳的有用数据得不到处理的问题。有了接纳超时功用后,假如接纳FIFO未填满而对方发送现已停,则在不超越3个数据的接纳时刻内就会触发超时中止,因而数据会照旧得到处理。
  发送时,只需发送FIFO不满,数据只管往里接连放,放完后就直接退出发送子程序。随后,FIFO真实发送完结后会主动发生中止,告诉主程序说:我现已完结真实的发送。
  接纳时,假如对方是接连不间断发送,则填满FIFO后会以中止的方法告诉主程序说:现在有一批数据来了,请处理。
  假如对方是间断性发送,也没关系,当间隔时刻过长时(2~3个字符传输时刻),也会发生中止,这次是超时中止,告诉主程序说:对方或许现已发送结束,但FIFO未满,也请处理。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/261586.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部