一、基础概念
1.1 通信方法
并行通信:传输原理:数据各个位同时传输;优点:速度快; 缺点:占用引脚资源多。是指使用 8、16、32 及 64 根或更多的数据线(有多少信号为就需要多少信号位)进行传输的通讯方式,可以同一时刻传输多个数据位的数据。
串行通信: 传输原理:数据按位顺序传输;优点:占用引脚资源少; 缺点:速度相对较慢。
是指设备之间通过一根数据信号线,地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式,同一时刻只能传输一位(bit)数据。


1.2 通信方向
单工: 数据传输只支持数据在一个方向上传输。信息只能单方向传输的工作方式,一个固定为发送设备,另一个固定为接收设备,发送端只能发送信息不能接收信息,接收端只能接收信息不能发送信息,只需一根信号线
半双工:允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信。可以实现双向的通信,但不能在两个方向上同时进行,必须轮流交替进行,其实也可以理解成一种可以切换方向的单工通信,同一时刻必须只能一个方向传输,只需一根数据线。
全双工:允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。在同一时刻,两个设备之间可以同时收发数据,全双工方式无需进行方向的切换,这种方式要求通讯双方均有发送器和接收器,同时,需要2根数据线。

1.3 通信方式
同步通信:带时钟同步信号传输。如SPI,IIC通信接口。收发设备双方会使用一根信号线表示时钟信号,在时钟信号的驱动下双方进行协调,同步数据,通讯中通常双方会统一规定在时钟信号的上升沿或下降沿对数据线进行采样,对应时钟极性与时钟相位。
I2C 的同步通信:

异步通信:不带时钟同步信号。如UART(通用异步收发器),单总线。不需要时钟信号进行数据同步,它们直接在数据信号中穿插一些同步用的信号位,或者把主体数据进行打包,以数据帧(串口:起始位 数据 校验位(可以没有) 停止位)的格式传输数据,某些通讯中还需要双方约定数据的传输速率(波特率),以便更好地同步。

1.4 电平
TTL电平、RS232电平、RS485电平、差分信号
RS232电平中-15V ~ -3V表示1,+3V ~ +15V表示0;
TTL电平中+5V表示1,0V表示0。
就是用不同的电压范围来表示高低电平而已
1.5 单片机的通信方式
内部通信:DMA
外部通信:TCP/UDP(非裸机开发) CAN、UART/USART(一个有时钟一个无)、SPI、I2C等

二、串口通信
USART是指单片机的一个端口模块,可以根据需要配置成同步模式(SPI,I2C,LIN),也可以将其配置为异步模式,后者就是UART。
2.1 STM32串口简介
USART-通用同步异步收发器是一个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个UART,它是在 USART 基础上裁剪掉了同步通信功能(时钟同步),只有异步通信。简单区分同步和异步就是看通信时需不需要对外提供时钟输出,我们平时用的串口通信基本都是 UART。
串行通信一般是以帧格式传输数据,即是一帧一帧的传输,每帧包含有起始信号、数据信息、校验信息(由我们自己设置)、停止信号。
2.2 通信特点
串行通信,接地可全双工、异步通信、TTL电平
通讯协议:分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输(通俗一点就是硬件部分)。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准(软件)。
2.3 波特率
波特率,指的是串口通信的速率,也就是串口通信时每秒钟可以传输多少个二进制位。譬如,每秒钟可以传输9600个二进制位(传输一个二进制位需要的时间是1/9600秒,也就是104us),波特率就是9600。
fck是串口时钟,就是挂载在哪一条时钟线上,USARTDIV寄存器装的值

2.4 起始位、数据位、奇偶校验位、停止位
串口通信时,收发是一个周期一个周期进行的,每个周期传输n个二进制位。这一个周期就叫做一个通信单元,一个通信单元由:起始位+数据位+奇偶校验位+停止位组成的。
起始位:表示发送方要开始发送一个通信单元,起始位的定义是串口通信标准事先指定的,是由通信线上的电平变化来反映的。数据包的起始信号由一个逻辑 0 的数据位表示。
数据位:是一个通信单元中发送的有效信息位,是本次通信真正要发送的有效数据,串口通信一次发送多少位有效数据是可以设定的(可选的有6、7、8、9,一般都是选择8位数据位,因为一般通过串口发送的文字信息都是ASCII码编码,而ASCII码中一个字符刚好编码为8位)。
校验位:是用来校验数据位,以防止数据位出错的。
&nbs

本文深入探讨了嵌入式系统中的关键通信技术,包括串口、CAN、I2C和SPI通信的基础概念、工作原理及应用场景。介绍了串口通信的全双工特性、波特率设置等;CAN通信的总线竞争机制、位同步方法;I2C通信的时钟同步信号;SPI通信的同步传输原理。
最低0.47元/天 解锁文章
1万+





