通讯协议

UART

  • 通用异步收发器,串行、全双工、异步通信总线。

  • 重点是异步,通信双方只要采用相同的帧格式和波特率,就能在未共享时钟信号的情况下,仅用两根信号线(Rx 和Tx)就可以完成通信过程,因此也称为异步串行通信。。

  • 波特率:用于描述UART通信时的通信速度,其单位为bps 即每秒钟传送的bit的数量。

  • 串口一次发送一个字节的数据,避免收发双方时钟不同步。

image-20240829101405487

  • 全双工

image-20240829101511750

  • UART通信时一般直接使用处理器使用的电平,即TTL电平;

​ (5V系统,逻辑1: 2.4V–5V   逻辑0: 0V–0.5V)

  • UART存在的问题:

    image-20240829101742432

    image-20240829101752612

RS232

  • RS-232接口符合美国电子工业联盟(EIA)制定的串行数据通信的接口标准;

  • 全双工

  • 接口

    DB-25、DB-9;现在工业控制的RS-232接口一般只使用RXD、TXD、GND三条线;

  • RS232逻辑电平

    • 逻辑“1”为-3到-15V

    • 逻辑“0”为+3到+15V

  • 电平转换(RS232-TTL)

image-20240829103221828

  • RS232存在的问题

    image-20240829103531543

    注:共模干扰是两条走线和PCB地线之间的电位差引起的干扰。

RS485

  • 串行通信标准
  • 半双工
  • RS485采用两线制(双绞线),这种接线方式为总线式拓扑结构,在同一总线上可以同时存在多个节点;

image-20240829104533310

​ 该标准允许连接多个收发器,即具有多站能力,这样可以利用单一的RS485接口方便地建立起一个设备网络。

  • RS485逻辑电平

    采用差分信号进行数据传输

    • 两线间的电压差为+2v到+6v表示逻辑“1”

    • 两线间的电压差为-2v到-6v表示逻辑“0”

    • 优点:

      • 使用差分信号能有效地减少噪声信号的干扰,延长通信距离(1500m)

      • RS485接口信号的电平比RS232降低了所以不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便地与TTL电路连接;

  • 电平转换(TTL-RS485)

image-20240829105402786

image-20240829105628575

IIC总线

  • IIC总线是由Philips公司开发的一种半双工双向二线制同步串行总线

  • IIC总线有两根双向的信号线,一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步;

image-20240829112153079

  • 同一时刻可以单主机多从机单主机单从机,I2C总线上的任意设备都可以当主机(同一时刻只有一个主机),一般主机是MCU,当有多个主机时,会通过总线仲裁的方式选出一个主机,其他退出作从机。

  • 主要用于近距离、低速的芯片之间的通信。

  • 通信过程

    image-20240827101013304

  • 寻址方式

    image-20240827105155063

  • 空闲状态,SCL和SDA 处于高电平

image-20240827101943589

  • 一帧包含9位,8位数据,先传送高位,后低位;1位应答位,接收器发送低电平应答发送器。

image-20240827102122382

  • 时钟线SCL低电平,发送数据,SCL高电平,接受数据。

image-20240827102915711

image-20240827104157109

image-20240827105503609

SPI

  • 串行外设接口(Serial Peripheral Interface)

  • SPI是一种高速的,全双工同步的通信总线,SPI的速率比I2C高,一般可以到几十Mbps。

  • 采用主从工作方式

  • SPI至少需要四根线,MIS0(主设备输入从设备输出)、MOSI(主设备输出从设备输入)、SCLK(时钟)、CS(片选)

image-20240827160614001

  • 寻址方式

    image-20240827161854136

  • 通信过程

    image-20240827162045467

    • 数据传送时,先传送高位,后传送低位;
    • 数据线为高电平表示逻辑'1’,低电平表示逻辑'0’;
    • 无需应答;
    • 同步时钟通信;
    • 时钟线在上升沿(下降沿)时发送数据,在紧接着的下降沿(上升沿)时读取数据;
  • 极性和相位

    SPI总线四种不同的工作模式,取决于极性(CPOL)和相位(CPHL)这两个因素。

    • CPOL表示SCLK空闲时的状态
      • CPOL=0,空闲时SCLK为低电平
      • CPOL=1,空闲时SCLK为高电平
    • CPHA表示采样时刻
      • CPHL=0,每个周期的第一个时钟沿采样
      • CPHL=1,每个周期的第二个时钟沿采样

    主从设备的工作模式必须保持一致。

image-20240827170523007

image-20240827170535002

image-20240827170546345

image-20240827170557002

IIC和SPI的异同

◼ 相同点
1.均采用串行、同步的方式
2.均采用TTL电平,传输距离(距离短)和应用场景类似(电路板芯片之间的通信);
3.均采用主从方式工作
◼ 不同点
1.IIC为半双工,SPI为全双工;
2.IIC有应答机制,SPI无应答机制;
3.IIC通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址;SPI传输速度快于IIC;
4.IIC的时钟极性和时钟相位固定,SPI的时钟极性和时钟相位可调

posted @ 2024-08-29 11:33  youngwuu  阅读(39)  评论(0编辑  收藏  举报