异步收发器
好的!异步收发器(英文全称:Universal Asynchronous Receiver/Transmitter,通常简称 UART)是电子设备中用于串行通信的一种常见硬件模块或接口标准。
核心概念解释
-
异步 (Asynchronous):
- 核心特点: 发送方和接收方不需要共享同一个精确的时钟信号(时钟线)来同步数据的发送和接收。
- 工作原理:
- 数据传输以独立的、一帧一帧的形式进行。
- 每一帧数据的起始位 (Start Bit) 通知接收方“数据要开始了”。
- 接收方使用自己内部的时钟(与发送方时钟存在一定差异),根据预先约定好的波特率 (Baud Rate)(每秒传输的位数),对起始位后的数据位进行采样。
- 帧的末尾通常有停止位 (Stop Bit),标志帧的结束,并为接收方提供重新同步的时机。
- 优点: 连线简单(只需要数据线,不需要时钟线),成本较低。
- 缺点: 数据传输速率相对较低,不能太长距离传输(容易因时钟漂移积累误差导致采样错误),需要精确匹配波特率。
-
收发器 (Receiver/Transmitter):
- 该硬件模块包含两个独立的功能单元:
- 接收器 (Receiver): 负责将设备外部(如串行线)的串行数据 (Serial Data) 接收进来,并转换成设备内部处理的并行数据 (Parallel Data)。
- 发射器 (Transmitter): 负责将设备内部需要发送出去的并行数据 (Parallel Data) 转换成串行数据 (Serial Data),并发送到设备外部(如串行线)。
- 因此,UART 可以实现全双工通信:设备可以同时发送和接收数据(理论上需要两条数据线:一条发,一条收)。
- 该硬件模块包含两个独立的功能单元:
UART 的主要功能和作用
- 数据格式转换: 在计算机/微控制器内部并行数据格式(通常8位、16位、32位宽度)和外部串行数据格式(一位一位地传输)之间进行转换。
- 添加/移除控制信息: 在发送时,自动添加起始位、可选的校验位和停止位组成一个完整的帧;在接收时,自动检测并移除这些控制位,还原出有效数据。
- 时钟同步管理: 虽然异步,但通过起始位触发接收方内部时钟采样序列,并依赖一致的波特率设定来减少误差。接收方会不断利用起始位重新同步。
- 错误检测 (可选): 可通过添加奇偶校验位 (Parity Bit) 来检测传输过程中单比特错误(非强制)。
- 提供控制信号 (可选): 某些 UART 实现会提供额外的硬件控制信号线,如:
- RTS (Request To Send):告诉对方“我要发送数据了”。
- CTS (Clear To Send):收到对方的 CTS 信号,表示对方“准备好接收数据了”。
- 这些信号主要用于硬件流控 (Hardware Flow Control),防止接收缓冲区溢出。
UART 的结构框图(简化)
设备内部 <-----> 设备内部
(并行数据总线) | | (并行数据总线)
┌──────────┐ ┌──────────┐
并行数据入 (TxD) ---> | 发送移位寄存器 | | 接收移位寄存器 | <--- 串行数据入 (RxD)
|(并行->串行) | |(串行->并行) |
| +控制位生成| | +控制位解析 |
└──────┬───┘ └───────┬───┘
| |
发送缓冲区 接收缓冲区
| (FIFO) | (FIFO)
| |
┌───────────────┐ ┌─────┴─────┐ ┌─────┴─────┐ ┌───────────────┐
| CPU / 处理器 | <---> | 控制/状态 | <---> | 控制/状态 | <---> | CPU / 处理器 |
| | | 寄存器 | | 寄存器 | | |
└───────────────┘ └────────────┘ └────────────┘ └───────────────┘
访问状态/控制 访问状态/控制
发送数据/接收数据 发送数据/接收数据
UART芯片/模块部分
(图示:两个设备通过 UART 通信的基本结构,包括发送端、接收端、缓冲区和控制/状态寄存器)
UART 的常见用途
UART 因其简单性和较低的成本,被广泛应用于各种场合,特别是在嵌入式系统、微控制器、传感器模块、老旧设备通信以及调试接口中:
- 嵌入式系统调试/日志输出: 使用 UART 连接电脑,通过串口终端软件(如 PuTTY, Tera Term, minicom, screen)查看调试信息。
- 微控制器通信: Arduino、树莓派、STM32 等开发板与传感器(GPS、温湿度)、模块(蓝牙、Wi-Fi)、显示屏或其他 MCU 之间的通信。
- PC 串口通信: 虽然现在 PC 原生串口较少见(RS-232 端口),但通过 USB 转 UART 转换器(如 CH340, FT232, CP2102)依然广泛使用。
- 工业控制设备: 某些 PLC、HMI 设备、仪器仪表之间的通信。
- 老旧终端设备: 连接老式调制解调器、终端机等。
- Bootloader: 许多微控制器通过 UART 加载程序。
关键概念区别
- UART vs USART:
- UART: 纯异步收发器,仅支持异步通信模式。
- USART (Universal Synchronous/Asynchronous Receiver/Transmitter): 通用同步/异步收发器,既可以支持异步通信(UART模式),也可以支持需要共用时钟线的同步通信模式(如 SPI)。同步模式可以达到更高的速率和更远的距离。
- UART vs RS-232:
- UART: 定义数据格式(起始位、数据位、停止位、波特率)和硬件功能(收/发、缓冲区、寄存器)。
- RS-232: 是一种定义了电气特性(如电压电平:-3V 到 -15V 表示逻辑1 / MARK, +3V 到 +15V 表示逻辑0 / SPACE,以及信号线定义如 TxD, RxD, RTS, CTS, GND 等)和连接器接口(如 DB9, DB25)的标准。早期的 PC 串口就是 RS-232 接口。
- 关系: UART 芯片生成的逻辑电平(通常是 0V/3.3V 或 0V/5V)通常不满足 RS-232 的电压要求。因此,在需要连接标准的 RS-232 设备时,UART 输出需要经过一个 RS-232 电平转换器(如 MAX232)将逻辑电平转换成 +/-12V 左右的 RS-232 电平。现代设备(如微控制器之间通信)常在 3.3V 或 5V 逻辑电平下直接使用 UART 的 TxD/RxD(称为 TTL UART 或 UART TTL),省去了 RS-232 电平转换器。
- 串行通信 vs 并行通信:
- 串行: 数据一位一位按顺序在单条线(或一对差分线)上传输。连线少,布线简单,成本低,适合较长距离(相对而言),但传输速率较低。
- 并行: 数据多位(如 8 位、16 位、32 位)同时在多条并行线上传输。传输速率快,但连线多,布线复杂,成本高,信号同步难,距离短。随着技术进步,串行通信的速率已大幅提升并成为主流(如 PCIe, SATA, USB),传统的并行总线已较少用于高速长距离传输。
总结
异步收发器 (UART) 是硬件或接口标准,核心功能是实现串行数据的异步通信(无需共享时钟线)。它在发送端并行转串行并添加控制位,在接收端串行转并行并解析控制位和检测错误。UART 因其实现简单、成本低廉,广泛应用于嵌入式系统、微控制器、传感器通信、设备调试等场景。理解其异步机制(起/止位同步、波特率匹配)、基本结构(收/发、缓冲区) 以及它与相关概念(如 USART, RS-232, TTL电平, 串口协议)的区别,是使用好 UART 的关键。
USART通用同步异步收发器介绍
一、USARTUSART介绍通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个串行通信设备,可以灵活
TMS320DM643 DMP通用异步收发器(UART)手册
电子发烧友网站提供《TMS320DM643 DMP通用异步收发器(UART)手册.pdf》资料免费下载
资料下载
胡秋阳
2024-12-16 10:10:46
UART收发器的设计实例详细说明
UART(Universal Asynchronous Receiver Transmitter,通用异步收发器)是广泛使用的异步串行数据通信协
资料下载
zhaojie83
2019-12-27 08:00:00
USART通用同步异步收发器介绍
1、USART介绍通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个串行通信设备,可以灵活地与外部设备
通用同步异步收发器(USART)
标准库3.5实现:《嵌入式-STM32开发指南》第二部分 基础篇 - 第6章串口通信6.1串口简介通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ
通用异步收发器UART的工作原理及协议格式
通用异步收发器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种串行、异步、全
2021-06-18 10:22:10
设计基于FPGA的串行通用异步收发器
UART(Universal Asynchronous Receiver Transmitter通用异步收发器)是一种应用广泛的短距离串行传输接口。常常用于短距离、低速、低成本的通讯中。
2019-08-12 17:46:18
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- dtmb信号覆盖城市查询
- EDA是什么?有什么作用?
- 中科院研发成功2nm光刻机
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- amoled屏幕和oled区别
- 单片机和嵌入式的区别是什么
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机