第11讲自己动手学习单片机系列讲座-串行外设接口(SPI)..pptVIP

第11讲自己动手学习单片机系列讲座-串行外设接口(SPI)..ppt

  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文档。上传文档
查看更多
第11讲 串行外设接口(SPI) 单工通信的实现 材料清单 ATmega16最小系统板 ATmega8最小系统板 LCD1602液晶显示板 数码管显示板, 5V电源 74HC595 2片 单排圆孔插座若干,2.54单排针若干,跳线帽2个,排线若干。 本章重点 SPI概念及编程方法 通讯模式 时序图(time chart)的理解 单工通讯编程方法 74HC595串行移位锁存芯片使用方法 SPI通信模式 SPI(serial peripheral interface) 串行外设接口,是Motorola首先在其MC68HCXX系列处理器上定义的,现在已经成为一种标准的总线接口。主要用于CPU和外围低速器件之间进行同步串行数据传输。 串行外设 传统意义上是指FlashRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。由于在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,简单高效。许多致力于工业测量与控制的厂商都推出了符合SPI标准的传感器(Sensor),因此SPI的应用会越来越广泛。 通信方式一般有三种:单工,半双工,全双工。 单工通信: 数据传输是单向的。通信双方中,一方固定为发送端,一方则固定为接收端。信息只能沿一个方向传输,使用一根数据线。 半双工通信: 使用同一根传输线,既可以发送数据又可以接收数据,但不能同时进行发送和接收。数据传输允许数据在两个方向上传输,但是,在任何时刻只能由其中的一方发送数据,另一方接收数据。因此半双工模式既可以使用一条数据线,也可以使用两条数据线。(对讲机) 全双工通信: 允许数据同时在两个方向上传输,使用两条数据线,它要求发送设备和接收设备都有独立的接收和发送能力,就和电话一样。在全双工模式中,每一端都有发送器和接收器。 注:有时人们也用“单工”这个名词表示“半双工”。 配置SPI信号线 SPI信号线有四条,MOSI(Master Out Slaver In),MISO(Master In Slaver Out),SCK(Synchronous Clock),SS(Slaver Selcet)。在使用这4条信号线时,必须对这4个I/O端口进行配置。若配置该CPU为主机,或配置为从机,按下表进行配置。虽然SS在主机模式下可以配置为输入,记住不要给自己找麻烦,SS最好配置为输出。 与多外设通讯的连接 当CPU使用多个SPI外设时,SS一般空出不用,但最好配置为输出,用PXn代替SS进行SPI通讯。过程为 (1)检查SS,若为低,等待,若为高,拉低SS开始通讯 (2)拉低PXn,选中从机。(此时相当于用PXn代替了SS引 脚功能) (3)通讯完成后,拉高PXn (4)拉高SS,完成一次通讯过程。 SPI数据寄存器SPDR(移位寄存器) 双工通信的实现: 主机SPDR和从机SPDR都装载要发送和接收的数据。在主机同步时钟SCK的作用下,主从机SPDR一次1bit,循环移出自己的数据。这样主机发送完成后,从机SPDR和数据缓冲区中存放着主机发送的数据,而主机SPDR中确存放着从机移过来的数据。这是标准的SPI通讯过程。若只发不收,可不连接MISO线(例如本讲数码管显示);若只收不发,可不连接MOSI线(例如SPI键盘)。 SPI状态寄存器SPSR SPI控制寄存器SPCR CPOL,CPHA时钟极性和时钟相位 SPI通讯接口编程 与74HC595的通信(单工) 74HC595是带有输出锁存功能的8bitCMOS移位寄存器。 SI(14):串行输入端。接CPU的MOSI。 SCK(11):移位寄存器时钟输入端。接CPU的SCK SCLR(10):输入,低电平清0移位寄存器。使用时直接连接到+5V RCK(12):输入,上升沿时移位寄存器数据存储到存储寄存器中。 G(13):输入,低电平时存储寄存器中的数据进入三态缓冲寄存器输出。高电平时高阻态。 QA-QH:8位数据输出端。 QH’(9):级联输出端。由于4位数码管位码4个引脚,段码8个引脚。因此需要2片CH595,QH’引脚连接到下一个CH595的SI端。 VCC:+5V电源 GND:接地 两片CH595级联,第1片控制段码,第2片控制位码。SI,SCK,RCK,G分别连接到cpu的MOSI,SCK,PC0,PC1。 数码显示电路实际焊接图正面 数码显示电路实际焊接图反面 CH595扩展显示接口编程 CH595的datasheet给出的时序图。可以看出 (1)SCK上升沿采样SI数据存储到移位寄存器中,SCK下降沿主机应该将数据送到SI总线上,同时595移位寄存器移位。对比SPI的CPHA和CPOL,只能采用SPI方式模式0或模式3。1,2都为下降沿采样。 CPU的SCK(

文档评论(0)

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

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

1亿VIP精品文档

相关文档