TI中文支持网
TI专业的中文技术问题搜集分享网站

关于SPI的疑问

问大家一个基础问题,一直都没有想明白:

SPI的简介里面有这样的介绍:得益于SPI是一个全双工的同步通讯协议,与异步通讯不同,在传输过程中无需起始位、终止位、应答等等,因此可以达到很高的速度。

使用过IO口模拟SPI的朋友也肯定对这个深有感触,发送数据只是借助CLK上升沿或下降沿变化,这样一位一位的把数据发送出去,因此也非常简单。

但是问题来了,从机如何得知传输字符的间隔呢,如果在接收过程中丢失了一位,那意味着后面所有的数据都会错移一位,将会导致大量的错误。我唯一想到的只有CS端可以同步这个时序(CS从高到低,意味着后面接收到的8位应该组成一个完整的byte,继而再后面8位组成第二个byte),而如果CS一直处于低电平,在通讯过程中出现了位数错误,则从机没有其他办法解决(获知)了。

大家是怎样理解的?

灰小子:

实际的应用中,可以使用完整性校验,错误重传等级制

赞(0)
未经允许不得转载:TI中文支持网 » 关于SPI的疑问
分享到: 更多 (0)