- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、SPI接口简介SPI(Serial Peripheral Interface--串行外设接口)总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。SPI有三个寄存器分别为:控制寄存器SPCR,状态寄存器SPSR,数据寄存器SPDR。外围设备FLASHRAM、网络控制器、LCD显示驱动器、A/D转换器(如图一所示)和MCU等。 图一、ADC中的SPI二、SPI接口一个典型的SPI模块的核心部件是一个8位的移位寄存器和一个8位的数据寄存器SPIDR。通过SPI进行数据传送的设备有主SPI和从SPI之分,即SPI传送在一个主SPI和一个从SPI之间进行。图二给出了两个SPI模块相互连接、进行SPI传送的示意图,图左边是一个主SPI,图右边为一个从SPI。图二、典型SPI示意图在AN-877应用笔记中,对spi的接口定义与典型spi接口有所不同,AN-877使用一根线SDIO代替了典型SPI的MISO和MOSI,SS接口用CSB代替。图三和图四分别是双线模式下单器件控制(主从一对一)和双线模式下多器件控制(主从一对多)。图三:主从一对一控制图四:主从一对多控制不管是典型SPI还是三引脚SPI,其基本原理都是一样的,都是主SPI通过SDIO(或MISO与MOSI)将数据传递到从SPI中,通过从SPI控制功能模块。一般来说ADC中的SPI指的是模块中的从SPI极其接口,主SPI可以使用MCU或者单片机实现。主SPI不属于器件的部分,可以不用考虑,操作起来比较简单。从SPI由指令移位寄存器、指令数据缓存器、寄存器控制逻辑、寄存器构成,如图五所示。主SPI发送过来的串行数据先依次进入指令移位寄存器,指令移位寄存器再依次将数据传送到指令缓存器。寄存器控制逻辑根据MSB优先或LSB优先控制指令移位寄存器的移位以及控制指令缓存器的输出,将其传送到相应地址的寄存器当中。寄存器包括三种类型:配置寄存器、传送寄存器和编程寄存器。寄存器存入相应数据之后,先根据配置寄存器配置串行接口,编程寄存器再根据寄存器功能表中的定义输出相对应的控制信号,最后根据传送寄存器指令统一输出控制信号。图五: SPI接口的功能模块三、SPI协议(根据AN-877应用笔记)SPI接口有主机跟从机之分,主从机可以是一对一,也可以是一对多,但是原理都一样。主从机之间一般由3个引脚组成:串行时钟引脚(SCLK)、串行数据输入/输出引脚(SDIO)、片选引脚(CSB)。1、引脚数据输入/输出(SDIO):该引脚用作数据的输入/输出,用作输入还是用作输出具体取决于所发送的指令(读或写)以及时序帧中的相对位置(指令周期或数据周期)。在读或写的第一个阶段,该引脚用作输入,将信息传递到内部状态机。如果该命令为读命令,状态机把该引脚(SDIO)变为输出,然后该引脚将数据回传给外部控制器。如果该命令为写命令,该引脚始终用作输入。串行时钟(SCLK):SCLK由外部控制器提供,时钟频率最高为25MHZ。所有数据的输入输出都是与SCLK同步的。输入数据在SCLK的上升沿有效,输出数据在SCLK的下降沿有效。片选信号(CSB):CSB是低电平有效的控制信号,用于选通读写周期。当CSB为低电平时,SPI才会处理SDIO上的数据信息。当CSB为高电平时,SPI忽略SDIO上的数据信息。此外,CSB还有一种特殊作用。CSB可以在字节边界处停止在高电平,为外部的时序处理提供更多的时间。(见图2)图六:带有停止时间的MSB优先指令和数据2、格式当内部状态机处在空闲状态且第一次在SCLK的上升沿检测到CSB为低电平时,确认为帧的开始。传输的第一个阶段为指令阶段,指令由16位组成,之后是数据阶段,数据由一个或多个8位组成,长度不定。(1)指令周期指令周期为传输的前16位,如下图所示,指令周期划分为若干位段。A、读/写在MSB优先(参见“位序”部分)时,数据流中的第一位是读/写指示位。若该位为高电平,则表示指令为读取指令。当指令周期(前16位)完成时,内部状态机使用所提供的信息解码要读取的内部地址。随后SDIO由输入变为输出,由字长定义的适当数量的字从器件移位出来(参见“字长”部分)。一旦字长所要求的所有数据均已移位输出,状态机便返回空闲模式,等待下一个指令周期。此时应拉高CSB,表示一次处理结束。若数据流中的第一位为低电平,则表示指令为写入指令。指令周期完成时,内部状态机使用所提供的信息解码要写入的内部地址。指令之后的所有数据均将移入SDIO引脚并送往目标地址(当需要写入的数据为多个时,地址将自动递增或递减)。一旦传输完所有数据,状态机便返回空闲模式,等待下一个指令周期。此时应拉高CSB,表示一次结束。无论是读取模式还是写入模式,处理过程都会持续到字长要求时或CSB线路拉高(在非
您可能关注的文档
- 第十一章 俄罗斯方块程序设计思想终结.doc
- 《C#程序设计基础教程和实训》习题答案.doc
- 作业1,线程的管理及结构.doc
- 全国电工进网作业许可考试(三)教材.doc
- 第3课 实验五 嵌套查询.doc
- 长城腾翼C30用户手册(使用说明书)01详解.pdf
- 用友t1常见问题解决资料.doc
- 第一章 江西联通2011年WCDMA网优集采项目人员技能试卷2-含答案.doc
- 第二章 教师教学技能测试课件脚本参考.doc
- 实验1: C程序的运行环境及运行一个C程序的方法.doc
- 2025江浙沪居民睡眠健康小调研报告.pdf
- 毕业论文的开题报告范文.docx
- 团委活动方案(拓展).docx
- 汽车智能驾驶行业深度报告:端到端与AI共振,智驾平权开启新时代.pdf
- 小核酸行业深度:技术平台和适应症不断验证,迎来销售和临床密集兑现期-华福证券-2025.3.31-65页.docx
- 医药生物行业医疗AI专题报告二多组学篇AI技术驱动精准诊断实现重要突破-25031440页.docx
- CXO行业系列报告三寒冬已过行业需求逐步回暖-25031430页.docx
- 全国租赁市场报告2025年3月_可搜索.pdf
- 玩具行业“情绪经济”专题:创新玩法+IP赋能,重新定义玩具-华鑫证券-2025.docx
- 医疗保健行业PCAB抑制剂药物深度报告抑酸药物市场空间广阔PCAB抑制剂大有可为-25.pdf
文档评论(0)