2020-10-06
STM32学习笔记—01—USART(串口通信)
1.串口通信协议简介
-
1.1 物理层
物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。其实就是硬件部分。
RS232标准串口主要用于工业设备直接通信,电平转换芯片一般有MAX3232,SP3232;
连接方法:
USB转串口主要用于设备跟电脑通信,电平转换芯片一般有CH340、PL2303、CP2102、FT232,使用的时候电脑端需要安装电平转换芯片的驱动
连接方法:
原生的串口通信主要是控制器跟串口的设备或者传感器通信,不需要经过电平转换芯片来转换电平,直接就用TTL电平通信,比如GPS模块、GSM模块、串口转WIFI模块、HC04蓝牙模块等等
连接方法:
1.1.1电平标准 -
1.2 协议层
协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。其实就是软件部分。1.2.1串口数据包的组成
①起始位:由1个逻辑 0 的数据位表示
②结束位:由 0.5、 1、 1.5 或 2 个逻辑 1 的数据位表示(一般都是1个停止位)
③有效数据:在起始位后紧接着的就是有效数据,有效数据的长度常被约定为 5、 6、 7 、8或9 位长度
④校验位:可选,为的是数据的抗干扰性。校验方法分为:
1-奇校验(odd)-有效数据和校验位中“ 1”的个数为奇数;2-偶校验(even)-有效数据和校验位中“ 1”的个数为偶数
3-0校验(space)-不管有效数据中的内容是什么,校验位总为“ 0”
4-1校验(mark)-不管有效数据中的内容是什么,校验位总为“ 1”
5-无校验(noparity)-不包含校验位