• STM32之SPI通信


    SPI总线简介

    >SPI总线介绍 

        SPI接口是Motorola首先提出的全双工三线同步串行外围接口,采用主从模式(Master Slave)架构;支持多slave模式应用,一般仅支持单Master. 时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSB first); SPI接口有2根单向数据线,为全双工通信,目前应用中的 数据速率可达几Mbps的水平。

        SPI总线被广泛地使用在FLASH,  ADC,  LCD等设备与MCU间,要求通讯速率较高的场合。

      

    SPI总线物理—拓扑结构

      >SPI接口共有4根信号线,分别是:设备选择线,时钟线,串行输出数据线,串行输入数据线。

      1.MOSI : 主器件数据输出,从器件数据输入

      2.MISO :主器件数据输入,从 器件数据输出

      3.SCLK :时钟信号 ,由主器件产生

      4./SS   :从器件使能信号,由主器件控制(片选)

    SPI总线协议

    >起始信号 :NSS信号线由高变低,是SPI通讯的起始信号

    >结束信号 :NSS信号 由 低变高,是SPI通讯的停止信号

    >数据传输 :SPI使用MOSI及MISO信号线来传输数据,使用SCK信号线进行数据同步。 MOSI及MISO数据线在SCK的每个时钟周期传输一位数据,且数据输入输出

          是同时     SPI每次数据传输可以8位或16位单位,每次传输的单位数不受限制。

    SPI的四种通信模式

      在SPI操作中,最重要的两项设置就是时钟极性(CPOL)和 时钟相位 (CPHA)这两项即是主从设备数据采样的约定方式。

      >时钟极性CPOL :设置时钟空闲时 的电平。

        当CPOL = 0,SCK引脚在空闲状态保持低电平;

        当CPOL = 1,SCK引脚在空闲状态保持高电平。

      >时钟相位CPHA :设置数据采样时的时钟沿

        当CPHA = 0时,MOSI或MISO数据线上的信号将会在SCK时钟线的奇数边沿被采样

        当CPHA = 1时,MOSI或MISO数据线上的信号将会在SCK时钟线的偶数边沿被采样

    >通信模式的设置:

        由CPOL及CPHA的不同状态,SPI分成了四种模式,主机与从机需要工作在相同模式下才可以正常通讯,因此主机要按照从机支持的模式去设置。

  • 相关阅读:
    SMS Error code: +CMS
    本地分支的使用
    Android模拟器上不了网的解决办法
    Ubuntu 下 java 版本的切换
    3GPP2 协议下载网站
    View.VISIBLE、INVISIBLE、GONE的区别
    android系统属性值的权限管理
    Ubuntu 10.10下挂载的window盘符无法获得可执行权限的问题
    appwidget 制作 note
    迭代器
  • 原文地址:https://www.cnblogs.com/ghwxxg/p/14364493.html
Copyright © 2020-2023  润新知