SD卡系列之spi模式---spi通信

SD卡操作分为SPI模式与SDIO模式,这里选择SPI模式,DSP为SPI主机,SD卡为从机,本文对SD卡SPI通信进行说明,关于SPI双机通信后续有时间也会特别写篇文章进行说明

SPI---串行外设接口,

优点:通信简单,支持全双工通信,数据传输速率快

缺点:没有指定的控制流,完全以时钟携带数据进行通信,没有应答机制,相对来说通信数据的可靠性上有一定缺陷(相对I2C总线协议)

特点:高速,同步,全双工,非差分,总线方式,主从机方式通信

通信时序:

主从方式通信,接线分为4根或3根(使用较少,用于单向传输)

简要概括:主机首先进行片选,选中从机,同时产生通讯时钟,每到来一个时钟周期,按照配置的SPI通信模式,主机移出一位数据发送到从机,同时从机发送一位数据到主机,完成一位数据交换,重复多次,即可完成一个字节数据,若此次传输完成,取消片选。(类似说明文件很多,此处仅作简要说明)

接线:SPISIMO        主收从发        

           SPISOMI        主发从收

           SPICLK           时钟线(主设备产生)

           SPICS             片选(主设备控制,一主多从时可控制选择从机)

配置步骤(使用SPIFIFO---16级FIFO,若不需要可舍去该部分配置):

  1. 使spi保持复位模式,SPISWRESET=0
  2. 配置该机主从模式
  3. 配置时钟相位 0=without delay,1=with delay
  4. 使能传输通道
  5. 配置时钟极性(0=rising,1=failing)(注:时钟相位与时钟极性共同确定数据传输模式)
  6. 选择单个传输的数据位数
  7. 配置spi波特率
  8. 清除overrun_flagint_flag
  9. 使能spi FIFO模式
  10. 使能 接收及发送FIFO的级数
  11. 使能 接收及发送FIFO的中断
  12. 复位接收及发送FIFO寄存器
  13. 复位spi(spirst) (此步骤位置可移动,但不建议改变)
  14. 完成SPI配置 SPISWRESET=1

注:时钟极性CPOL及时钟相位CPHA说明----决定通信模式:        

上图为28377D芯片手册上对于SPI时钟相位及极性的说明,分为4种模式:

SPI在SPICLK的下降沿传输数据,在SPICLK的上升沿接收数据。

SPI在SPICLK信号下降沿前半个周期发送数据,在SPICLK信号下降沿接收数据。

SPI在SPICLK信号的上升沿传输数据,在SPICLK信号的下降沿接收数据。

SPI在SPICLK信号上升沿前半周传输数据,在SPICLK信号上升沿接收数据。

下图为4种模式传输数据图解:

极性与相位配置最好主从机保持一致,避免出现问题(测试过不一致的情况,数据也能正常传输)

由于SPI的主从机制,从机无法主动发送数据之主机,可选择主从机间进行连线,触发外部中断形式来使主机启动通信。

以上为SD卡spi模式之SPI配置。

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值