关闭

SPI浅谈

标签: SPI浅谈SPI
601人阅读 评论(0) 收藏 举报
分类:

转载地址:http://blog.sina.com.cn/s/blog_50cfd0fc0101flsn.html

转载地址:http://blog.csdn.net/ce123/article/details/6897293

SPI接口介绍(转)

   SPI接口的全称是"Serial Peripheral Interface",意为串行外围接口,是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。

我的笔记:这里只需要知道SPI英文名字是Serial Peripheral Interface,是由摩托罗拉开发的,应用方面见的多了,自然就知道的多了。


   SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在主器件的移脉冲下,数据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来说比I2C总线要快,速度可达到几Mbps。

我的笔记:SPI总线传输可以弥补CPU与外围设备间的速度差异。传输数据时,按位传输,高位在前,地位在后,一般频率设置为5Mbps。


时钟极性和时钟相位

       在SPI操作中,最重要的两项设置就是时钟极性(CPOL或UCCKPL)和时钟相位(CPHA或UCCKPH)。时钟极性设置时钟空闲时的电平,时钟相位设置读取数据和发送数据的时钟沿。
主机和从机的发送数据是同时完成的,两者的接收数据也是同时完成的。所以为了保证主从机正确通信,应使得它们的SPI具有相同的时钟极性和时钟相位。

    SPI接口时钟配置心得:在主设备这边配置SPI接口时钟的时候一定要弄清楚从设备的时钟要求,因为主设备这边的时钟极性和相位都是以从设备为基准的。因此在时钟极性的配置上一定要搞清楚从设备是在时钟的上升沿还是下降沿接收数据,是在时钟的下降沿还是上升沿输出数据。

我的笔记:SPI总线的两个重要属性:时钟极性和时钟相位,即SPI的工作模式,共有4种,具体使用那种方式方式需要参考芯片手册。


   SPI接口是以主从方式工作的,这种模式通常有一个主器件和一个或多个从器件,其接口包括以下四种信号:
(1)MOSI – 主器件数据输出,从器件数据输入
(2)MISO – 主器件数据输入,从器件数据输出
(3)SCLK – 时钟信号,由主器件产生
(4)SS/CS  – 从器件使能信号,由主器件控制

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转) - hailany - hailany 的博客

   在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。
      在多个从器件的系统中,每个从器件需要独立的使能信号,硬件上比I2C系统要稍微复杂一些。

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转) - hailany - hailany 的博客

我的笔记:上面是SPI(主从)一对多的硬件设计,除了使能信号,其他的线可以共用。注意这里所有的从设备工作于同一模式下。


我的笔记:下面这些是SPI硬件的内部设计,可以了解,实现的话可以使用FPGA模拟一下。

SPI接口在内部硬件实际上是两个简单的移位寄存器,传输的数据为8位,在主器件产生的从器件使能信号和移位脉冲下,按位传输,高位在前,低位在后。如下图所示,在SCLK的下降沿上数据改变,同时一位数据被存入移位寄存器。

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转) - hailany - hailany 的博客

 SPI接口内部硬件图示:

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转) - hailany - hailany 的博客

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

0
0
查看评论

SPI总线协议及SPI时序图详解

SPI总线协议及SPI时序图详解 SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这...
  • dragon101788
  • dragon101788
  • 2011-12-01 16:32
  • 2882

(学习笔记) SPI通信协议

概念SPI, Serial Perripheral Interface, 串行外围设备接口, 是 Motorola 公司推出的一种通信接口技术。SPI,是一种高速的,全双工,同步串行通信总线,并且在芯片的管脚上只占用四根线(MISO,MOSI,NSS,SCK)。主要应用在 EEPROM,FLASH,...
  • fly__chen
  • fly__chen
  • 2016-10-02 16:15
  • 5790

单片机软件模拟SPI接口—加深理解SPI总线协议

单片机软件模拟SPI接口—加深理解SPI总线协议           SPI(Serial Peripheral Interfacer 串行外设接口)是摩托罗拉公司推出的一种同步串行通讯接口,用于微处理器臌控制器和外围扩展芯片之间的串行连接,现已发...
  • ce123
  • ce123
  • 2011-11-01 00:01
  • 44446

Linux系统SPI驱动学习笔记(一)

SPI是"Serial Peripheral Interface" 的缩写,是一种四线制的同步串行通信接口,用来连接微控制器、传感器、存储设备,SPI设备分为主设备和从设备两种,用于通信和控制的四根线分别是: CS    片选信号SCK ...
  • dang_guoying
  • dang_guoying
  • 2017-02-04 14:13
  • 950

spi协议及工作原理分析

说明.文章摘自:SPI协议及其工作原理浅析 http://bbs.chinaunix.net/thread-1916003-1-1.html 一、概述.      SPI, Serial Perripheral Interface, 串行...
  • skyflying2012
  • skyflying2012
  • 2013-09-15 17:11
  • 126794

spi协议及工作原理分析

http://blog.csdn.net/skyflying2012/article/details/11710801 说明.文章摘自:SPI协议及其工作原理浅析 http://bbs.chinaunix.net/thread-1916003-1-1.html 一、概述. ...
  • sunjing_
  • sunjing_
  • 2016-06-05 22:05
  • 525

spi协议及工作原理分析

说明.文章摘自:SPI协议及其工作原理浅析 http://bbs.chinaunix.net/thread-1916003-1-1.html 一、概述.      SPI, Serial Perripheral Interface, ...
  • yuzeze
  • yuzeze
  • 2016-04-15 11:12
  • 1713

SPI 协议

一. 概念 1. 通常SPI通信要求4根线,分别是MOSI(mast output salve input), MISO, CLK, CS。 2. 当发送和接受数据的工作都准备好了,只要有时钟CLK,就发送数据,没有时钟就不发送,而且一个时钟周期发送一位(bit)数据,所以发送数据的快慢由时钟频...
  • lwbeyond
  • lwbeyond
  • 2013-04-02 09:53
  • 23335

基于SPI的数据报过滤原理与实现

一、个人防火墙技术概述     随着网络安全问题日益严重,广大用户对网络安全产品也越来越关注。防火墙作为一种网络安全工具,早已受到大家的青睐。在PC机上使用的个人防火墙,很大程度上成为广大网民的安全保护者。Windows下的个人防火墙都是基于对数据报的拦...
  • playboy1
  • playboy1
  • 2011-10-18 09:45
  • 211

SPI通信

SPI是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI是一种高速的,全双...
  • eager7
  • eager7
  • 2013-03-05 09:07
  • 12831
    个人资料
    • 访问:30064次
    • 积分:952
    • 等级:
    • 排名:千里之外
    • 原创:62篇
    • 转载:23篇
    • 译文:0篇
    • 评论:3条
    文章分类
    最新评论