第七节串行扩展之二SPI.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
串行总线---SPI SPI总线概述 SPI(SerialPeripheralInterface――串行外设接口)总线是Motorola公司推出的一种同步串行接口技术。是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换。 美国国家半导体公司NSC也开发了一种MicroWire串行接口,它与SPI兼容。前许多单片机厂商推出了许多带有SPI总线接口的单片机和种类繁多且功能丰富的基于SPI接口的外围芯片。其外围设备包括FLASHRAM、A/D转换器、网络控制器、MCU等。 SPI总线的结构原理 SPI总线系统是一种同步串行外设接口,允许MCU与各种外围设备以同步串行方式进行通信来交换信息。 SPI总线接口一般使用4根线:串行时钟线SCK、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线SS。 由于SPI系统总线只需3根公共的时钟数据线和若干位独立的从机选择线,在SPI从设备较少而没有总线扩展能力的单片机系统中使用特别方便。 SPI总线包括1根串行同步时钟信号线以及2根数据线。SPI总线接口电路结构如下图所示。 SPI总线接口电路结构 SPI模块为了和外设进行数据交换,根据外设工作要求,其输出的串行同步时钟极性和相位可以进行配置。 时钟极性(CPOL)对传输协议没有重大的影响。 如果CPOL=0,串行同步时钟的空闲状态为低电平; 如果CPOL=1,串行同步时钟的空闲状态为高电平。 时钟相位(CPHA)能够用于选择两种不同的传输协议进行数据传输。 如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样; 如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。 SPI主模块和与之通信的外设间时钟相位和极性应该一致。 特点:由于SPI系统总线一共只需3~4位数据线和控制线即可实现与具有SPI总线接口功能的各种I/O器件进行连接,而扩展并行总线则需要8根数据线、8~16位地址线、2~3位控制线,因此,采用SPI总线接口可以简化电路设计,节省很多常规电路中的接口器件和I/O口线,提高设计的可靠性。 应用:在MCS–51系列等不具有SPI接口的单片机组成的智能仪器和工业测控系统中,当传输速度要求不是太高时,使用SPI总线可以增加应用系统接口器件的种类,提高应用系统的性能。 SPI总线的接口特性 利用SPI总线可在软件的控制下构成各种系统。通常可使用1个MCU作为主控机来控制数据,并向1个或几个从外围器件传送该数据。从器件只有在主机发命令时才能接收或发送数据。其数据的传输格式是高位(MSB)在前,低位(LSB)在后。 当一个主控机通过SPI与几种不同的串行I/O器件相连时,必须使用每个器件片的允许控制端,这可通过MCU的I/O端口输出线来实现。否则MCU的MISO端只能连接1个输入芯片。如果输出芯片的串行数据输入有允许控制端时,只有在此芯片允许时,SCK脉冲才把串行数据移入该芯片;在禁止时,SCK对芯片无影响。 SPI总线的数据传输 SPI是一个环形总线结构,其时序主要是在SCK的控制下,两个双向移位寄存器进行数据交换。SPI数据传输原理很简单,它需要至少4根线,事实上3根也可以。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCK(时钟)、CS(片选)。其中CS是控制芯片是否被选中的。由SCK提供时钟脉冲,SDI、SDO则基于此脉冲完成数据传输。数据输出通过SDO线,数据在时钟上沿或下沿时改变,在紧接着的下沿或上沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。假设8位寄存器内装的是待发送的数上升沿发送、下降沿接收、高位先发送。那么第一个上升沿来的时候数据将会是高位数据SDO=1。下降沿到来的时候,SDI上的电平将被存到寄存器中去,那么这时寄存器=0101010SDI,这样在8个时钟脉冲以后,两个寄存器的内容互相交换一次。这样就完成了一个SPI时序。 SPI总线串行外围扩展 SPI总线为同步串行数据传输总线,用于单片机的外围扩展。其通用外围扩展器件有SRAM、EEPROM、ADC、DAC、RTC、I/O口、DTMF等。外围设备模块有LCD驱动控制器构成的LCD显示器,各种LCD驱动控制器构成的段式、图形点阵、字符点阵液晶显示器等。通过SPI总线通用I/O口器件可构成许多通用接口如键盘、码盘、打印机接口和LCD接口等。 SPI总线数据虚拟技术 对于不带SPI串行总线接口的MCS51系列单片机来说,可以使用软件来模拟SPI的操作,包括串行时钟、数据输入和数据输出。 定义三个普通I/O口用来模拟SP

文档评论(0)

xuefei111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档