USART

1.串口通信协议的简介

物理层:规定通讯系统中具有机械.电子功能部分的特性,确保原始数据在物理媒体的传输。其实就是硬件部分。
协议层:协议层主要规定通讯逻辑,统一收发双方的数据打包 解包标准。其实就是软件部分。
简单来说物理层规定我们是用嘴巴还是用肢体交流,协议层则规定我们是用中文还是用英文进行交流。

2.串口通信常用的三个标准

A RS232标准
B USB转串口( TTL标准)
C 原生的串口到串口 (TTL—TTL)

3.RS232与TTL的区别(电平方面)

USART

4.RS232标准串口通讯结构图
USART RS232标准串口主要用于工业设备直接通信
电平转换芯片一般有MAX3232,SP3232

5.DB9标准的公头及母头接法
USART

6.USB转串口通讯结构图
USART
USB转串口主要用于设备跟电脑通信。
电平转换芯片一般有CH340 PL2303 CP2102 FT232。
使用的时候电脑端需要安装电平转换芯片的驱动。

7.原生的串口到串口
USART
原生的串口通信主要是 控制器跟串口的设备或者传感器通信,不需要经过电平转换芯片来转换电平,直接就用TTL电平通信。eg:GPS模块 GSM模块 串口转WIFI模块 HC04蓝牙模块
8串口数据包的基本组成
USART
起始位:由1个逻辑0的数据位表示。
结束位:由0.5 1 1.5 或2个逻辑1的数据位表示。
有效数据:在起始位后紧接着的就是有效数据,有效数据的长度被约定为5 6 7 8位长。
校验位:可选,为的是数据的抗干扰性。
校验方法分为:
1—奇校验
2—偶校验
3—0校验
4—1校验
5—无校验
奇校验(odd):有效数据和校验位中“1”的个数为奇数。比如一个8位长的有效数据为:0110 1100,此时总共有4个“1”,为达到奇校验效果,校验位为1,最后传输的数据将是8位的有效数据加上1位的校验总共9位。

偶校验(even):有效数据和校验位中的”1“的个数为偶数。比如1个8位长的有效数据为0110 1001,此时总共有4个“1”,为达到偶校验的效果,校验位为0,最后传输的数据将是8位的有效数据加上1位的校验位共9位。

0校验是不管有效数据中的内容是什么,校验位总为“0”

1校验是校验位总为“1”。

无校验就是数据包中不包含校验位。
USART
USART_DR(9位有效),到底是几位有效,由 USART_CR1: M决定
停止位由USART_CR2: STOP决定
USART_CR1: M,0 8bit 19bit
USART_CR2: STOP

校验位由USART_CR1: PCE、PS决定
USART_CR1: PCE、PS、PEIE
USART_SR:PE
9.串口功能框图讲解
USART
TX:数据发送
RX:数据接收

SCLK:时钟,仅同步通信时使用
nRTS:请求发送(Request To Send)n表示低电平有效
nCTS:允许发送(Clear To Send)n表示低电平有效
10.STM32F103VET6芯片的USART引脚
USART
11.USART相关寄存器
11.1数据寄存器—USART_DR
9位有效,包含一个发送数据寄存器TDR和一个接收数据寄存器RDR。一个地址对应了两个物理内存。