S5PV210串行通信接口详解2

《朱老师物联网大讲堂》学习笔记

学习地址:www.zhulaoshi.org


上一节课,我们讲了串口通信的原理,

谈到了,当发送数据速率大于接收速率情况下,产生的AFC技术,

这节要谈论的问题也是速率问题,但是对象有所变化,

这回是CPU。


由此而诞生的技术有FIFO,DMA.


FIFO

典型的串口发送/接收缓冲区只有8位,

每次发送/接收只能处理一帧数据,

这在单片机中没有问题,但是在复杂的SOC(一般是有操作系统)中就有问题,会导致效率低下,

因为CPU需要反复不断地切换上下文,

解决方法是想办法扩展我们串口控制器的发送/接收缓冲区,比如将发送/接收缓冲区设置位64字节,

CPU一次过来就直接给缓冲区64字节的数据,

然后transmitter慢慢发,

发完再找CPU要64字节。


想的和做的总是难免有区别,

扩展这个缓冲区,但是不能直接去扩展原来的那个缓冲区,

因为那个缓冲区是不能变得,这里面涉及到原来这个里面电路的设计以及向前兼容的考虑,

所以并不适合去改变原来那个缓冲区,我们做了个变相的扩展,

在原来缓冲区外,加了个更大的缓冲区,这个说法好像有点怪,不过没关系!

总之就是FIFO。


DMA

direct memeory access,直接内存访问。

DMA技术的核心是在交换数据时候不需要CPU参与。

FIFO是一种轻量级的解决方案,DMA模式适合大量数据迸发式的发送/接收。



IrDA

其实就是红外,

在某些开发板上,是通过串口来实现红外的,

但这并不是说,你没有红外硬件就可以实现红外,

还是得需要相关硬件,只不过在软件的层面,是用串口发送数据的方式来实现的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值