沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第09章 SPI与I2C串行总线

SP|与I2C串行总线第9章
第9章 SPI与I2C串行总线

本章讲述了SPI与I2C串行总线,包括SPI通信原理STM32F103的SPI工作原理、SPI库函数、SPI串行总线应用实例、12C通信原理、STM32F103的I2C接口、STM32F103的12C库函数和12C串行总线应用实例
本章讲述了SPI与I2C串行总线,包括SPI通信原理、 STM32F103的SPI工作原理、SPI库函数、SPI串行总线应用 实例、I2C通信原理、STM32F103的I2C接口、STM32F103 的I2C库函数和I2C串行总线应用实例

9.1SPI通信原理串行外设接口(SerialPeripheralInterface,SP)是由美国摩托罗拉(Motorola)公司提出的一种高速全双工串行同步通信接口,首先出现在M68HC系列处理器中,由于其简单方便,成本低廉,传输速度快,因此被其他半导体厂商广泛使用,从而成为事实上的标准。SP与USART相比,其数据传输速度要快得多,因此它被广泛地应用于微控制器与ADC、LCD等设备的通信,尤其是高速通信的场合。微控制器还可以通过SP组成一个小型后步网络进行高速数据交换,完成较复杂的工作
9.1 SPI通信原理 串行外设接口(Serial Peripheral Interface,SPI)是由 美国摩托罗拉(Motorola)公司提出的一种高速全双工串行同 步通信接口,首先出现在M68HC系列处理器中,由于其简单 方便,成本低廉,传输速度快,因此被其他半导体厂商广泛 使用,从而成为事实上的标准。 SPI与USART相比,其数据传输速度要快得多,因此它 被广泛地应用于微控制器与ADC、LCD等设备的通信,尤其 是高速通信的场合。微控制器还可以通过SPI组成一个小型同 步网络进行高速数据交换,完成较复杂的工作

作为全双工同步串行通信接口,SPI采用主/从模式(master/slave),支持一个或多个从设备,能够实现主设备和从设备之间的高速数据通信。SPI具有硬件简单、成本低廉、易于使用、传输数据速度快等优点,使用于成本敏感或者高速通信的场合。但同时,SP也存在无法检香查纠错、不具备寻址能力和接收方没有应答信号等缺点,不适合复杂或者可靠性要求较高的场合
作为全双工同步串行通信接口,SPI采用主/从模式( master/slave),支持一个或多个从设备,能够实现主设备和 从设备之间的高速数据通信。 SPI具有硬件简单、成本低廉、易于使用、传输数据速度 快等优点,使用于成本敏感或者高速通信的场合。但同时, SPI也存在无法检查纠错、不具备寻址能力和接收方没有应答 信号等缺点,不适合复杂或者可靠性要求较高的场合

9.1.1 SPI介绍SPI是同步全双工串行通信接口。由于同步,SPI有一条公共的时钟线:由于全双工,SPI至少有两条数据线来实现数据的双向同时传输;由于串行,SPI收发数据只能一位一位地在各自的数据线上传输,因此最多只有两条数据线:一条发送数据线和一条接收数据线。由此可见,SPI在物理层体现为4条信号线,分别是SCK、MOSI、MISO和SS。1)SCK(SerialClock),即时钟线,由主设备产生。不同的设备支持的时钟频率不同。但每个时钟周期可以传输一位数据,经过8个时钟周期,一个完整的字节数据就传输完成了。2)MOSl(MasterOutput SlaveInput),即主设备数据输出/从设备数据输入线。这条信号线上的方向是从主设备到从设备,即主设备从这条信号线发送数据,从设备从这条信号线上接收数据。有的半导体厂商(如Microchip公司),站在从设备的角度,将其命名为SDI
SPI是同步全双工串行通信接口。由于同步,SPI有一 条公共的时钟线;由于全双工,SPI至少有两条数据线来实 现数据的双向同时传输;由于串行,SPI收发数据只能一位 一位地在各自的数据线上传输,因此最多只有两条数据线: 一条发送数据线和一条接收数据线。由此可见,SPI在物理 层体现为4条信号线,分别是SCK、MOSI、MISO和SS。 1)SCK(Serial Clock),即时钟线,由主设备产生。 不同的设备支持的时钟频率不同。但每个时钟周期可以传输 一位数据,经过8个时钟周期,一个完整的字节数据就传输 完成了。 2)MOSI(Master Output Slave Input),即主设备数 据输出/从设备数据输入线。这条信号线上的方向是从主设 备到从设备,即主设备从这条信号线发送数据,从设备从这 条信号线上接收数据。有的半导体厂商(如Microchip公司 ),站在从设备的角度,将其命名为SDI。 9.1.1 SPI介绍

3)MiSO(MasterInputSlaveOutput),即主设备数据输入/从设备数据输出线。这条信号线上的方向是由从设备到主设备,即从设备从这条信号线发送数据,主设备从这条信号线上接收数据。有的半导体厂商(如Microchip公司),站在从设备的角度,将其命名为SDO。4)SS(Slave Select),有时候也叫CS(ChipSelect),SPI从设备选择信号线,当有多个SPI从设备与SPI主设备相连(即一主多从)时,SS用来选择激活指定的从设备,由SPI主设备(通常是微控制器)驱动,低电平有效。当只有一个SPI从设备与SPI主设备相连(即一主一从)时,SS并不是必需的。因此,SPI也被称为三线同步通信接口。除了SCK、MOSI、MISO和SS这4条信号线外,SPI接口还包含一个串行移位寄存器,如图9-1所示
3) MISO(Master Input Slave Output),即主设备数 据输入/从设备数据输出线。这条信号线上的方向是由从设 备到主设备,即从设备从这条信号线发送数据,主设备从这 条信号线上接收数据。有的半导体厂商(如Microchip公司 ),站在从设备的角度,将其命名为SDO。 4)SS(Slave Select),有时候也叫CS(Chip Select ),SPI从设备选择信号线,当有多个SPI从设备与SPI主设 备相连(即一主多从)时,SS用来选择激活指定的从设备 ,由SPI主设备(通常是微控制器)驱动,低电平有效。当 只有一个SPI从设备与SPI主设备相连(即一主一从)时, SS并不是必需的。因此,SPI也被称为三线同步通信接口。 除了SCK、MOSI、MISO和SS这4条信号线外,SPI接 口还包含一个串行移位寄存器,如图9-1所示

SPI主设备SPI从设备(微控制器)(外设模块或微控制器)SCKSCKMOSISPISPI数据数据寄存器寄存器MISOSsSS图9-1SPI接口组成
图9-1 SPI接口组成 MOSI MISO SPI主设备 (微控制器) SPI从设备 (外设模块或微控制器) SPI 数据 寄存器 SPI 数据 寄存器 SCK SCK SS SS SS SS VDD

9.1.2SPI互连SP互连主要有一主一从和一主多从两种互连方式。1.一主一从在一主一从的SPI互连方式下,只有一个SPI主设备和一个SPI从设备进行通信。这种情况下,只需要分别将主设备的SCK、MOSI、MISO和从设备的SCK、MOSI、MISO直接相连,并将主设备的SS置为高电平,从设备的SS接地(置为低电平,片选有效,选中该从设备)即可,如图9-2所示
SPI互连主要有一主一从和一主多从两种互连方式。 1.一主一从 在一主一从的SPI互连方式下,只有一个SPI主设备和 一个SPI从设备进行通信。这种情况下,只需要分别将主设 备的SCK、MOSI、MISO和从设备的SCK、MOSI、MISO 直接相连,并将主设备的SS置为高电平,从设备的SS接地 (置为低电平,片选有效,选中该从设备)即可,如图9-2 所示。 9.1.2 SPI互连

SPI主设备SPI从设备(外设模块或微控制器)(微控制器)SCKSCKMOSIMOSIMISOMISOVDDSsSS图9-2一主一从的SPI互连
图9-2 一主一从的SPI互连 SPI主设备 (微控制器) SPI从设备 (外设模块或微控制器) SCK MOSI MISO SCK MOSI MISO SS SS VDD

2.一主多从在一主多从的SPI互连方式下,一个SPI主设备可以和多个SPI从设备相互通信。这种情况下,所有的SPI设备(包括主设备和从设备)共享时钟线和数据线,即SCK、MOSI、MISO这3条线,并在主设备端使用多个GPIO引脚来选择不同的SPI从设备,如图9-3所示。显然,在多个从设备的SPI互连方式下,片选信号SS必须对每个从设备分别进行选通,增加了连接的难度和连接的数量,失去了串行通信的优势
2.一主多从 在一主多从的SPI互连方式下,一个SPI主设备可以和多 个SPI从设备相互通信。这种情况下,所有的SPI设备(包括 主设备和从设备)共享时钟线和数据线,即SCK、MOSI、 MISO这3条线,并在主设备端使用多个GPIO引脚来选择不同 的SPI从设备,如图9-3所示。显然,在多个从设备的SPI互 连方式下,片选信号SS必须对每个从设备分别进行选通,增 加了连接的难度和连接的数量,失去了串行通信的优势
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第08章 USART串行通信.ppt
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第07章 模数转换器(ADC).ppt
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第06章 定时器.ppt
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第05章 通用输入输出接口GPIO.pptx
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第04章 中断系统.ppt
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第03章 STM32微控制器的开发平台.pptx
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第03章 嵌入式开发环境的搭建.pptx
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第02章 STM32微控制器.pptx
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第01章 绪论.ppt
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学资源(PPT课件)第10章 DMA控制器.ppt
- 《单片机原理与接口技术应用》课程教学资源(文献资料)普中F103-Z400开发板原理图.pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)从ARM9到A15手机处理器架构进化历程.doc
- 《单片机原理与接口技术应用》课程教学资源(文献资料)AN2606 应用笔记(STM32微控制器系统存储器自举模式).pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)STM32F10xxx Cortex-M3编程手册(PM0056 Programming manual STM32F10xxx/20xxx/21xxx/L1xxxx Cortex®-M3 programming manual).pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)Cortex-M3权威指南中文.pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)Cortex-M3技术参考手册(共十七章,含附录).pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)STM32F103xCDE数据手册(英文,第5版).pdf
- 《单片机原理与接口技术应用》课程教学资源(文献资料)STM32F103xCDE数据手册(中文,第5版).pdf
- 沈阳师范大学:《单片机原理与接口技术应用》课程教学大纲 Principle and interface technology of single chip microcomputer.docx
- 沈阳师范大学:《单片机原理与接口技术应用》课程授课教案(完整讲义,共三十八讲).docx
- 黄河水利职业技术大学:《电商网站建设与优化》课程思政教案(教学设计)PHP动态网站开发.pdf
- 江苏大学:RISC-V CPU设计实验(讲义).pdf
- 《计算机导论》课程教学资源(授课教案,教材讲义,共六章).pdf
- 长春大学:旅游学院:《Visual FoxPro程序设计》课程教学资源(授课教案,共七章).pdf
- 《程序设计》课程教学资源(书籍文献)Google开源项目风格指南(中文版).pdf
- 《程序设计》课程教学资源(实验指导)C++语言习题集(南京航空航天大学:陈哲).pdf
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)01 计算机和程序.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)02 常量和变量.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)03 运算符和表达式.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)04 控制流.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)05 函数.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)06 数组.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)07 记录类型.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)08 文件.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,一)09 编译预处理和多文件项目.pptx
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,二)Chapter 1-C++程序设计基础.ppt
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,二)Chapter 2-文件操作.ppt
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,二)Chapter 3-类的基础部分.ppt
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,二)Chapter 4-类的高级部分.ppt
- 南京航空航天大学:《程序设计》课程教学课件(PPT讲稿,二)Chapter 5-继承多态和虚函数.ppt
