STM32-- 通讯-串口通讯、RS485、232、SPI、I2C

目录

串行通信与并行通信的比较

串行通信与并行通信的比较

1.同步和异步

同步串口通信(Synchronous Serial Communication)

异步串口通信(Asynchronous Serial Communication)

比较

2.全双工,半双工,单工

全双工(Full Duplex)

半双工(Half Duplex)

单工(Simplex)

比较

3.SPI

SPI的主要特点:

SPI的工作流程:

SPI的配置参数:

SPI常用引脚:

4.I2C

I2C的主要特点:

I2C的应用场景:

I2C的工作流程:

I2C常用引脚:

5.RS485

RS485的主要特点:

RS485的工作流程:

RS485常用引脚:

逻辑分析仪、示波器测量RS485信号:

6.RS232

RS232的主要特点:

RS232的工作流程:

7.TTL

TTL的主要特点:

TTL的应用:

TTL的类型:

8.串口信号测量   

9.属于哪个通信层级


串行通信与并行通信的比较

     串口(串行接口)

  • 数据传输:一次传输一个比特,通过单一的通信线路(或通道)。
  • 应用:常用于连接鼠标、键盘、打印机、调制解调器等设备,以及嵌入式系统中的设备间通信。
  • 标准:包括RS-232、RS-422、RS-485等。


    并口(并行接口)
  • 数据传输:一次可以传输多个比特,通过多个并行线路。
  • 应用:曾广泛用于打印机连接(Centronics接口),以及某些扫描仪和外部存储设备。
  • 标准:包括Centronics、IEEE 1284等。

串行通信与并行通信的比较

  • 传输方式:串行通信是按位顺序传输,而并行通信是多位同时传输。
  • 传输速度:串行通信速度较慢,但随着技术发展,高速串行通信标准已经可以支持非常高的数据传输速率。并行通信理论上可以更快,但实际应用中受到信号同步和干扰的限制。
  • 传输距离:串行通信更适合长距离传输,因为信号不容易失真。并行通信则因为信号同步问题,通常限于较短的距离。
  • 抗干扰性:串行通信因为使用单根线,所以抗干扰性较强。并行通信由于多根线之间可能产生串扰,抗干扰性相对较弱。
  • 成本和复杂性:串行通信的硬件成本和复杂性较低,因为只需要少数几根线。并行通信需要更多的线,增加了成本和复杂性。
  • 现代应用:随着技术的发展,串行通信(尤其是USB)已经取代了并行通信在大多数应用中的地位。

1.同步和异步

同步串口通信(Synchronous Serial Communication)

  1. 数据块传输:同步串口通信通常用于数据块的传输,其中数据被组织成帧或数据包。

  2. 时钟信号:同步通信需要一个时钟信号来同步发送方和接收方的数据传输。这个时钟信号可以是内部的或外部的。

  3. 高速数据传输:由于使用了时钟信号,同步串口可以支持更高的数据传输速率。

  4. 全双工通信:同步串口通常支持全双工通信,即可以同时发送和接收数据。

  5. 应用场景:常用于存储设备(如硬盘驱动器)、音频和视频传输,以及需要高速数据传输的应用。

  6. 硬件支持:同步串口通信通常需要硬件支持,如SPI(串行外设接口)或SDIO(安全数字输入输出)、I2C(Inter-Integrated Circuit集成电路互联)。

异步串口通信(Asynchronous Serial Communication)

  1. 字符传输:异步串口通信通常用于字符级别的传输,每个字符的发送和接收是独立的。

  2. 起始位和停止位:每个字符前后都有起始位和停止位,用于标记字符的开始和结束。

  3. 波特率:使用波特率来定义字符传输的速度,而不是时钟信号。

  4. 半双工或全双工通信:异步串口可以支持半双工或全双工通信,但在同一时间内只能发送或接收。

  5. 应用场景:广泛用于计算机与外部设备(如打印机、调制解调器)之间的通信,以及微控制器之间的通信。

  6. 硬件支持:异步串口通信通常由UART(通用异步收发器)或USART(通用同步/异步收发器)硬件支持。

比较

  • 时钟信号:同步通信需要时钟信号同步数据传输,而异步通信使用波特率和起始/停止位来控制数据传输。
  • 数据传输速率:同步通信通常可以实现更高的数据传输速率。
  • 全双工能力:同步通信更易于实现全双工通信。
  • 硬件要求:同步通信可能需要更复杂的硬件支持。
  • 应用范围:异步通信由于其简单性和灵活性,在许多标准设备和微控制器中更为常见。

2.全双工,半双工,单工

全双工、半双工和单工是描述通信通道工作方式的术语,它们指的是在通信过程中发送和接收数据的能力。

全双工(Full Duplex)

全双工通信允许数据同时双向传输,即通信的双方可以同时发送和接收信息。这种模式类似于电话通话,两个人可以同时讲话和听对方讲话。

特点:

  • 同时发送和接收:数据可以在两个方向上同时流动。
  • 通信效率:由于数据可以连续不断地双向传输,通信效率较高。
  • 常用技术:以太网(Ethernet)、双工RS-422和RS-485总线等。

半双工(Half Duplex)

半双工通信允许数据双向传输,但在同一时间内只能有一个方向的数据传输。这意味着发送和接收不能同时进行,通信双方需要交替进行发送和接收。

特点:

  • 交替发送和接收:数据可以在两个方向上传输,但不是同时。
  • 通信效率:通信效率可能低于全双工,因为需要时间来切换发送和接收模式。
  • 常用技术:某些类型的无线通信、某些网络协议等。

单工(Simplex)

单工通信只允许数据在一个方向上传输。在这种模式下,只有一个通信方可以发送数据,而另一个通信方只能接收数据。

特点:

  • 单向传输:数据只能从发送方流向接收方。
  • 通信效率:通信效率可能较低,因为没有反馈或确认机制。
  • 常用技术:广播、电视信号传输、某些类型的警报系统等。

比较

  • 全双工:可以想象成一条双向道路,车辆可以同时双向行驶。
  • 半双工:类似于单车道的道路,车辆需要交替行驶,不能同时双向行驶。
  • 单工:类似于一条单向道路,车辆只能朝一个方向行驶。

在实际应用中,选择哪种通信模式取决于通信需求、成本、技术限制和系统设计。例如,电话系统需要全双工通信以实现双向对话,而广播系统则使用单工通信,因为信息只从广播站向听众单向传输。

3.SPI

SPI(Serial Peripheral Interface)是一种广泛使用的同步串行通信协议,用于短距离通信,主要应用于微控制器和它们的外围设备之间。SPI是一种全双工通信协议,它允许数据在两个方向上同时传输。

SPI的主要特点:

  1. 全双工通信:SPI可以在两个方向上同时发送和接收数据,这是通过单独的数据线(MOSI - 主设备发送,从设备接收;MISO - 主设备接收,从设备发送)实现的。

  2. 同步通信:SPI使用一个时钟信号(SCLK或SCK)来同步数据传输,数据在时钟信号的上升沿或下降沿被采样。

  3. 主从架构:SPI通信需要一个主设备来初始化通信,它可以是微控制器或其他类型的设备。主设备控制时钟信号并选择从设备。

  4. 最少三线接口:SPI通信至少需要三条线:主设备发送(MOSI)、主设备接收(MISO)和时钟信号(SCLK)。

  5. 片选(Chip Select):SPI通常使用单独的片选线(CS或[nSS]),主设备可以通过这根线来选择特定的从设备。

  6. 数据速率:SPI的数据传输速率(时钟频率)可以变化,取决于主设备和从设备的速率能力。

  7. 灵活性:SPI协议相对简单,易于实现,支持多种数据格式和传输速率。

  8. 广泛的应用:SPI被广泛应用于各种电子设备,包括传感器、存储器、显示器、音频设备等。

SPI的工作流程:

  1. 初始化:主设备通过片选线选择特定的从设备,并将数据线配置为发送或接收模式。

  2. 发送时钟信号:主设备生成时钟信号,从设备根据这个信号同步数据传输。

  3. 数据传输:主设备通过MOSI线发送数据,同时从设备通过MISO线发送数据给主设备。

  4. 结束通信:主设备停止发送时钟信号,并通过片选线取消选择从设备,结束通信。

SPI的配置参数:

  • 时钟极性(CPOL):时钟信号的空闲状态,可以是高电平或低电平。
  • 时钟相位(CPHA):数据采样的时钟相位,可以是第一个时钟周期的边缘或第二个时钟周期的边缘。
  • 数据顺序:数据传输的顺序,可以是高位在前(MSB First)或低位在前(LSB First)。

SPI是一种非常灵活且高效的通信协议,适用于需要高速数据传输和简化布线的应用场景。然而,由于SPI是同步通信协议,它要求所有设备共享一个时钟信号,这可能会限制其在某些分布式系统中的使用。

SPI常用引脚:

SPI(Serial Peripheral Interface)是一种常见的串行通信协议,用于微控制器和它们的外围设备之间的通信。SPI通信协议通常涉及以下四种基本的引脚(接口信号):

  1. MOSI (Master Out Slave In) - 主设备发送,从设备接收:这是主设备用来向从设备发送数据的线路。

  2. MISO (Master In Slave Out) - 主设备接收,从设备发送:这是从设备用来向主设备发送数据的线路。

  3. SCLK (Serial Clock) - 时钟信号:由主设备生成的时钟信号,用于同步数据传输。数据通常在SCLK的上升沿或下降沿采样。

  4. CS (Chip Select) - 片选信号:这是一个控制信号,用于激活特定的从设备。在SPI总线上可以连接多个从设备,每个从设备都有自己的CS引脚。当主设备想要与特定从设备通信时,它会将该设备的CS引脚拉低(使能),其他设备的CS引脚保持高电平(禁用)。

除了这些基本的SPI引脚,某些设备或特定的SPI实现可能还包括以下额外的引脚:

  • STE (Slave Select Enable) - 从设备使能:在某些SPI设备中,STE用于独立于CS控制从设备的激活。
  • ALERT - 警告或中断信号:某些从设备可能提供一个ALERT引脚,用于向主设备发送中断或警告信号。
  • RST (Reset) - 复位信号:用于复位从设备。
  • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值