美文网首页
嵌入式开发的通信协议

嵌入式开发的通信协议

作者: 超饿困因子 | 来源:发表于2017-09-24 17:42 被阅读0次

UART

定义

  • UART是一种非常常见的接口或协议,几乎在每台计算机或微处理器上都可以找到它,UART是英文Universal Asynchronous Receiver and Transmitter 的缩写,中文一般称为通用异步收发传输器,也称其为RS-232标准。该协议是全双工协议,它也是一种包括特定通信的电子,机械和物理特性的全面标准。
  • UART允许菊花链拓扑(在这种拓扑结构中,可以将第一个传感器的发送引脚连接到第二个传感器的接收引脚,再将第二个传感器的发送引脚连接到第三个传感器的接收引脚,以此类推,最多可以接8个)

接口

  • UART TX:发送
  • UART RX:接收

数据传输

  • UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接一位地传输。
  • 数据传输
UART数据传输图

1.起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。

2.数据位:紧接着起始位之后。资料位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。

3.奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。

4.停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。

5.空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。

波特率(每秒传送的字符数)

波特率时UART协议中的一个关键数据,即发送数据的速度。
发送器和接受器的波特率应该匹配,通常,我们将波特率定为9600或115200。

SPI

定义

  • SPI(串行外围设备接口),英文Serial Peripheral Interface.是一种全双工短距单主设备通信协议,与UART不同,它是一种同步通信协议。SPI简单的连接方式之一是主从连接,如下图
简单的主从SPI连接图

接口

  • SCLK:串行时钟,用来同步数据传输,由主机输出

  • MISO:主机输入从机输出(Master In Slave Out)

  • MOSI:主机输出从机输入(Master Out Slave In)

  • CS:片选线,低电平有效,由主机输出

  • 在SPI总线上,某一时刻可以出现多个从机,但只能存在一个主机,主机通过片选线来确定要通信的从机。这就要求从机的MISO口具有三态特性,使得该口线在器件未被选通时表现为高阻抗。

数据传输

在一个SPI时钟周期内,会完成如下操作:

  1. 主机通过MOSI线发送1位数据,从机通过该线读取这1位数据;

  2. 从机通过MISO线发送1位数据,主机通过该线读取这1位数据。

这是通过移位寄存器来实现的。如下图,主机和从机各有一个移位寄存器,且二者连接成环。随着时钟脉冲,数据按照从高位到低位的方式依次移出主机寄存器和从机寄存器,并且依次移入从机寄存器和主机寄存器。当寄存器中的内容全部移出时,相当于完成了两个寄存器内容的交换。

I2C

定义

  • I2C(Inter-Integrated Circuit)是一种用两条连线工作的半双工协议(半双工是通信的一种类型,即只要发送端在发送数据,接收端只能监听儿不能发送数据)。

接口

  • SDA:数据线
  • SCL:时钟线
  • I2C的连线总是要通过电阻上拉至输入电压,I2C的连线工作于三种速度:高速,快速,慢速。

工作原理

  • 如果主机要发送数据给从器件,则主机首先寻址从器件,然后主动发送数据至从器件,最后由主机终止数据传送;如果主机要接收从器件的数据,首先由主器件寻址从器件.然后主机接收从器件发送的数据,最后由主机终止接收过程。在这种情况下.主机负责产生定时时钟和终止数据传送。

数据传输

字节格式

  • 每个字节必须是8位,最后一位为响应位
  • 每次传输可以发送的字节数量不受限制
  • 最开始发送的是从机地址

应答响应

  • 地址匹配完成会得到响应信号(ACK),说明这个设备是存在的

  • 开始信号:主机让时钟SCL保持高电平,数据SDA由高电平调转到低电平

  • 停止线号:主机让式中SCL保持高电平,数据SDA由低电平跳转到高电平。

  • 响应信号(ACK):接收器在接收到8位数据后,在第9个时钟周期,拉低SDA为低电平。

  • SDA上传输的数据必须在SCL为高电平的期间保持稳定,外部设备会在SCL在高电平的时候读取数据

  • SDA上的数据只能在SCL为低电平期间发生变化

I2C数据传输图

相关文章

网友评论

      本文标题:嵌入式开发的通信协议

      本文链接:https://www.haomeiwen.com/subject/govosxtx.html