小白速通嵌入式第二天————串口通信协议

一、串口通讯基础

最基础的串口通信协议有UART、SPI、I2C和汽车总线协议CAN,RS232和RS485都是串口通讯的变种,本文将依次介绍。

  • 基础串口通讯UART只需要三根线就能实现,分别为TX、RX和地线;

  •   实现串口通讯,首先要确定帧格式波特率;

帧格式:分为起始位、数据位和停止位三部分。普遍起始位位低电平,停止位为高电平,数据位一般为8位,正好是一个字节,内容可由我们自己定义。

波特率 :规定一秒内可发送多少个数据和一秒内接收多少个数据。数据通过高低电平区分,串口通讯普遍采用TTL逻辑。高电平:2.4v~5v。低电平:0v~0.4v。

二、SPI通讯协议

  • SPI通信模式是一主多从,一个主芯片(master)连接多个从芯片(slave);
  • SPI通讯协议为串行(xing)、全双工总线 ,主芯片可以同时发送和接受数据信号。

1.信号线

SPI通讯需要四条信号线,分别是:SS、SCK、MOSI(master output slave input)和 MISO(master input slave output):

2.实现通讯 

 首先由SS发送片选信号,MOSI/MISO和SCK配合实现写入/读取数据。

MOSI/MISO任务:发送起始位,操作码(规定读/写),地址码(写入/读取数据地址),数据码(具体内容),结束码。

SCK任务:时钟信号提供上升沿或者下降沿,方便规定何时数据会被采集。

三、I2C通讯协议

  • I2C通信模式是一主多从,一个主芯片(如图中单片机)连接多个从芯片;
  • I2C通讯协议为串行半双工总线通讯协议 ,因为串口一根线分给了时钟,单片机同一时间要么发送数据要么接收数据;
  • 当处于空闲状态时,时钟线和数据线都处于高电平状态。

1.实现通讯 

 由时钟线和数据线配合发送信号,一帧标准的读/写数据信号如下图所示:

  • 起始位:时钟信号为高电平期间,数据信号完成由高到低的跳变(下降沿);
  • 设备地址码:区别和哪一个从设备通讯,时钟线为高电平时,数据线上的数据必须保持高/低电平的稳定,则为逻辑1/0;
  • 读写位:读数据置1,写数据置0;
  • 应答信号:如果地址码对应从机收到之前的信号应答0,没有收到或者读/写完成应答1;
  • 停止位:时钟信号为高电平期间,数据信号完成由低到高的跳变(上升沿)。

四、RS232和RS485

TTL逻辑规定高低电平最大相差5v,最小相差2v,这就导致信号传输抗干扰能力很弱,相应的有效传输距离也很短。为了提升串口通讯的距离和稳定性,RS232应运而生。

1.RS232

RS232通讯就是在原串口通讯(UART)基础上加了一个MAX232芯片,将原TTL电平转换为232电平,保留了UART串口通讯的全双工特性。  

MAX232将TTL高低电平差放大,如图所示:

因高低电平相差近20v,这样即使某一个信号受到干扰,高低电平还有很大的改变余量。所以它的抗干扰能力增强了很多,传输距离也会更长,由原来串口通讯的1m增加到15m。

2.RS485

RS232增加了抗干扰能力和传输距离,但是速率只有20k,波特率最大只能达到19200。RS485则克服了这个缺点。RS485是在原串口通讯的基础上加了一块485转换芯片。负责将原高低电平信号转换为差分信号。差分信号只需要两根线不需要地线。通过判断信号A、B的高低来输出逻辑0/1。

485转换芯片和232转换芯片一样不仅能将TTL高低电平转换为差分信号,也能将差分信号转换为TTL高低电平,RS485是半双工串行异步通信。

五、CAN总线协议

CAN总线在汽车领域应用较多。全称为控制器局域网,这里的控制器指集成了供电系统、单片机和驱动系统的ECU,是汽车里最小的控制模块。CAN总线协议就是方便ECU之间进行通讯的。

1.实现通讯

CAN通讯需要专门的CAN手法芯片,普通信号被转换为差分信号(类似于RS485),差分信号使用两根线表示一个信号。

由于差分信号由两条线组成,而且是双绞线缠绕,即使有一点收到干扰,也是两根线电压同时受到干扰,电压差不变,所以CAN信号可以传输的距离很长,可达1000米(低速),抗干扰能力大大加强。CAN也是半双工通信。


本文内容借鉴B站博主“爱上半导体”,视频通俗易懂,为上上品。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值