注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Dragonfly

人生若只如初见

 
 
 

日志

 
 

SPI接口  

2009-10-17 18:19:55|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

        SPI总线是MOTOROLA公司推出的一种同步串行传输规范,常作为单片机外设芯片串行扩展接口。该接口共使用4条信号线:主机输出片选信号线NSS、主机输出时钟信号线SCLK、主机输出/从机输入数据线MOSI和主机输入/从机输出数据线MISO。串行时钟SCLK用于同步MOSI和异步MOSO传输信号。NSS信号决定了唯一的与主设备通信的从设备,若没有NSS信号,则只能存在一个从设备,主设备通过产生移位时钟来发起通讯。SPI串行扩展接口是高速、全双工同步通信口。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。

       SPI传输串行数据时首先传输最高位。

        SPI的通信原理:它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少四根线,事实上3根线也可以(单向传输时)。NSS控制芯片是否被选中,也就是只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。通信是通过数据交换完成的。这里先要了解SPI是串行通信协议,也就是说数据是一位一位传输的。这里SCLK提供时钟脉冲,MOSI、MISO则基于这个脉冲信号完成数据传输。数据输出通过MOSI线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入原理也是如此。这样在8次时钟信号的改变,就可以完成9位数据的传输了。其中,SCLK信号线只由主设备控制,从设备不能控制信号线。这种传输方式有一个优点,与普通的串行通训不同,普通的串行通讯一次连续至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCLK由主设备控制,当没有时钟跳变时,从设备不采集或传送数据。也即,主设备通过对SCLK的控制可以完成对通讯的控制。SPI的另一个数据交换协议:SPI数据输入和输出线独立,允许同时完成数据的输入和输出。不同的SPI设备实现方式不尽相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采集有不同定义,具体请参考相关器件的文档。再点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,简单高效。

       缺点:SPI没有指定的流控制,没有应答机制确认是否接收到数据。

  评论这张
 
阅读(688)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017