SPI通信四大模式

 我来答
抛下思念17
2022-07-07 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6213
采纳率:99%
帮助的人:34.1万
展开全部
SPI是由Motorola公司提出的一种同步串行外围接口;它在速度要求不高,低功耗,需要保存少量参数的智能化传感系统中得到了广泛应用;

  SPI是一个全双工的同步串行接口,在数据传输过程中,总线上只能是一个主机和一个从机进行通信;

  通信四种模式:

  1、MISO(Master In Slave Out)

  主机输入,从机输出;

  2、MOSI(Master Out Slave In)

  主机输出,从机输入;

  3、SCK(Serial Clock)

  串行时钟信号

  4、SS(Slave Select)

  从机选择信号,低电平有效;(即作从机时,该位置低)

  SPI总线可在软件的控制下构成各种系统

  SPI总线与多从机连接

  SPI的基本结构相当于两个8位移位寄存器的首尾相接,构成16位的环形移位寄存器,从而实现了主机与从机的数据交换;

  SPI接口的基本结构图

  SPI主从模式

  设置MSTR(主设备选择)和SPE位(使能位)来选择是否工作在主模式还是从模式;

  stm32强大之处:因为从机NSS位必须接0,而主机NSS位接1;stm32可以有软件来设置相应的主从位;

  SPI下时钟信号的相位和极性(设置由与之通信的具体芯片来设定)

  SPI接口可由CPOL和CPHA设定4种不同传输格式的时序;

  CPOL决定时钟脉冲SCK的有效脉冲方式(正脉冲、负脉冲)。CPHA决定数据线MOSI什么时候输出数据或采集数据;

  根据CPOL和CPHA的组合数目,一共四种设置情况;

  数据图分析:

  数据帧的格式

  根据SPI_CR1寄存器中的LSBFIRST位,输出数据位时可以MSB(高位先传)在先也可以是LSB(低位先传),根据SPI_CR1寄存器的DFF位,每个数据帧可以是8位或者16位,所选择的数据帧格式对发送/接收都有效;

  SPI通信配置步骤:(在主模式下,串行时钟在SCK脚产生)

  1、通过SPI_CR1寄存器的BR[2:0]位定义串行时钟波特率;

  2、选择CPOL和CPHA位,定义数据传输和串行时钟间的相位关系;

  3、设置DFF位来定义8/16位数据帧格式;

  4、配置SPI_CR1寄存器的LSBFIRST位定义帧格式;

  5、如果NSS引脚需要工作在输入模式,硬件模式中在整个数据帧传输期间应把NSS脚连接到高电平;在软件模式中,需要设置SPI_CR1寄存器的SSM和SSI位,如果NSS引脚工作在输出模式,则只需设置SSOE位;

  6、必须设置MSTR和SPE位(只当NSS被连到高电平,这些位才能保存置位)。

  在这个配置中,MOSI脚是数据输出,而MISO脚是数据输入;

  SPI通信过程:

stm32之SPI通信视频资料

http://www.makeru.com.cn/live/3523_1795.html?s=156461
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晓网科技
2024-10-17 广告
网状网通信实际上就是多通道通信,在实际工业现场,由于各种原因,往往并不能确保每一个无线通道都能够始终畅通,就像城市的街道一样,可能因为车祸,道路维修等,使得某条道路的交通出现暂时中断,此时由于我们有多个通道,车辆(相当于我们的控制数据)仍然... 点击进入详情页
本回答由晓网科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式