通信协议介绍---SPI

一、概念介绍

SPI:Serial Peripheral Interface 串行外设接口

MicrowireSPI的精简接口,microwire的时钟极性和相位是固定的,而SPI的时钟极性和相位则是可编程的

二、SPI与Microwire

1、SPI四种模式

SPI的极性(POL:polarity)相位(PHA:phase)分别可以为0或1,对应的4种组合构成了SPI的4种模式(mode),一般的SPI器件支持mode 0和3。

Mode 0 CPOL=0, CPHA=0 空闲时CLK为低,CLK第一个边沿开始采样数据。

Mode 1 CPOL=0, CPHA=1 空闲时CLK为低,CLK第二个边沿开始采样数据。

Mode 2 CPOL=1, CPHA=0 空闲时CLK为高,CLK第一个边沿开始采样数据。

Mode 3 CPOL=1, CPHA=1 空闲时CLK为高,CLK第二个边沿开始采样数据。

MICROWIRE标准的时钟极性和时钟相位是固定的(CPOL = 0和CPHA = 0)。DIN的数据读取总是锁定在SCLK的上升沿。DOUT的数据输出总是在SCLK的下降沿。MICROWIRE标准没有规定最大数据速率。

SPI可以是三线(MI和MO共用一根线)或者四线,三线的时候只能做半双工。

2、SPI CS的两种接法

       2.1 CPU多个CS接口:CPU与SPI设备的CS一对一不共用,如下左图。

       2.2 CPU一个CS接口:采取菊花链方式(不是所有SPI器件都支持),如下右图。

      

3、实测---DM9051的SPI

   

   

如上,DM9051 SPI正常通信流程为:CPU发2A,9051回51;然后CPU发2B,9051回90。如同波形,CPU接收到SPI的ID(0x9051),读到后CPU才对应继续发数据。

逻辑分析仪使用提示:

  1. 记得用CS下降沿触发(CS低有效,主机拉低SPI从设备的CS进行通信采样数据)。因为在CS下降沿之前CLK和DAT也有信号,有些是使能信号指令,有些是无用信号,所以要过滤掉这些信号。
  2. 如果是1.8V电平,记得把阈值电压略调低点,以免未抓到遗漏的数据。

      4、SPI的时钟CLK频率一般最大是几十兆,比如MT6762是27.3MHz。有的CLK频率和SPI器件电源有关,供电越高,CLK频率会更高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值