STM32 串口概念 UART协议

串口概念

1. 串口说明

以上都是串行通信电器标准,是串口通信的方式之一

  1. TTL(重点介绍)

  2. RS232

  3. RS485

  4. RS422

2. TTL

(1) TTL 介绍

TTL 的全称是:Transistor--Transistor Logic(晶体管-晶体管逻辑)

最初是指一种数字电路逻辑标准(早期 74 系列逻辑芯片就是 TTL 逻辑)。

在串口通信中,"TTL 电平"通常指:

使用 0V 和 3.3V 或 5V 电平 表示逻辑 0 和逻辑 1 的串行通信信号标准

TTL 串口通常基于 UART(通用异步收发器)

其通信过程如下:

  1. 两端事先约定通信参数:波特率、数据位、校验位、停止位;
  2. 数据以位为单位串行发送;
  3. 一帧数据格式如下:
scss 复制代码
   ┌─起始位(0)─┬──数据位(8位)──┬─校验位(可选)─┬─停止位(1或2)─┐
   │             │                │               │               │
时间→  L         xxxxxxxx          ?               H

举例:波特率=9600,数据位=8,停止位=1,无校验 → 称为"8N1"格式。

TTL 串口 = UART 协议 + TTL 电平。

TTL 串口的连接方式:

常见连接方法:

复制代码
设备A(TTL)         设备B(TTL)
-------------------------------
TX (发送)   --->   RX (接收)
RX (接收)   <---   TX (发送)
GND         <----> GND
  • 发送端的TX 要链接 接收端的RX
  • 发送端的RX 要链接 接收端的TX

基于发送与接收都是不同的线的特点,所以它是全双工的(能同时发送和同时接受)。

(2) TTL 做板级通信

板级通信 指的是:

同一设备内部、不同电路板(或芯片模块)之间 进行的数据通信。

选择TTL做板级通信的优势:

  • 板内部件较近,只需引脚连接,简单成本低
  • 不需要高压驱动,成本低
  • 不会远距离干扰,抗干扰强

(3) TTL 使用的 UART协议

TTL 与 UART 关系

UART 是通信协议层(通信规则),TTL 是它的电平实现层(信号电平)。

对于其他的电气标准,它们也是使用UART协议,只是电平实现方式不同而已。

a. UART 是什么

UART 全称是 Universal Asynchronous Receiver/Transmitter (通用 异步 收发器),是一种 串行通信方式/协议

它定义了:

  • 数据如何分成一帧帧发送(起始位、数据位、校验位、停止位);
  • 波特率(bit 速率);
  • 同步规则(异步);
  • 数据流方向(TX→RX)
b. UART 协议包含部分
类别 内容 说明
通信方式 异步串行通信 不用时钟线,只用 TX、RX
帧结构定义 起始位 + 数据位 + 校验位 + 停止位 一帧即一个字节(Byte)
波特率(Baud Rate) 9600、115200 等 每秒传输的位数
数据位长度 一般 5~9 位(常用 8 位) 数据部分长度
校验位(Parity) 无、偶、奇 检测错误用
停止位(Stop Bit) 1 位或 2 位 表示一帧结束
数据传输方向 全双工 可以同时收发
电平标准 TTL / RS232 / RS485 物理层电平实现
流控(可选) 硬件(RTS/CTS)或软件(XON/XOFF) 控制发送节奏
c. UART 通信设备

它的通信设备有很多种,我下面列举部分:

分类 代表设备 电平类型 通信说明
传感器类 GPS、PM2.5、超声波模块 TTL 输出数据给 MCU
通信模块 WiFi、蓝牙、4G、LoRa TTL 串口发送/接收 AT 命令
扩展模块 串口屏、RS232/RS485 转换 TTL/RS232/RS485 控制显示或扩展通信
电脑端 USB 转 TTL、RS232 口 TTL/RS232 与 MCU 通信或调试

我后面会重点讲解 串口A-B、蓝牙模块、WIFI模块。

d. UART 与 USART 的区别
  • UART 是"通用异步收发器"(Universal Asynchronous Receiver/Transmitter
  • USART 是"通用同步/异步收发器"(Universal Synchronous/Asynchronous Receiver/Transmitter

USART 比 UART 多了同步功能,所以它比UART多了条时钟线,用于同步功能。

3. 基础知识点

(1) 什么叫异步、同步

同步通信 :"发送端和接收端 共用同一个时钟,靠时钟节拍同步数据传输。"

异步通信 :"发送端和接收端 没有共用时钟,而是通过帧结构来保持同步。"

本质就是异步没有时钟,同步有时钟。

(2) 什么叫串行、并行

**串行通信:**同个数据一次用一条传输线传输数据

  • 优点:线少,成本低,适合远距离传输
  • 缺点:传输速度慢

**并行通信:**同个数据一次用多条传输线传输数据

  • 优点:适合近距离传输,传输速度快
  • 缺点:线多,成本高

(3) 什么叫单工、半双工、全双工

单工

  • 数据只能 A → B
  • B 端不能同时回传

半双工

  • A 和 B 都可以发送,但不能同时发
  • 需要协议/时序控制谁先发

全双工

  • A 发 B 收,B 发 A 收 同时进行
  • 通信效率最高

注:以上均是学习笔记。

相关推荐
小莞尔2 小时前
【51单片机】【protues仿真】基于51单片机自动浇花系统
单片机·嵌入式硬件
沐欣工作室_lvyiyi3 小时前
基于51单片机的宠物喂食器的设计与实现(论文+源码)
单片机·嵌入式硬件·毕业设计·51单片机·宠物
hazy1k7 小时前
51单片机基础-最小系统设计
stm32·单片机·嵌入式硬件·mcu·51单片机·proteus
奋斗的牛马7 小时前
FPGA—ZYNQ学习spi(六)
单片机·嵌入式硬件·学习·fpga开发·信息与通信
清风6666668 小时前
基于单片机的智能高温消毒与烘干系统设计
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
Jerry丶Li9 小时前
二十四、STM32的DMA
stm32·单片机·嵌入式硬件
辛河11 小时前
单片机.RS485
单片机·嵌入式硬件
SKYDROID云卓小助手11 小时前
无人设备遥控器之数字图传技术
运维·服务器·单片机·嵌入式硬件·fpga开发
Brianna Home12 小时前
边缘智能革命:TinyML赋能微控制器
单片机·嵌入式硬件·物联网·嵌入式实时数据库