一文搞懂UART通信协议

原创 亚德诺半导体 2025-02-07 18:02

UART,即通用异步接收器/发送器,是最常用的设备间通信协议之一,正确配置后,UART可以配合许多不同类型的涉及发送和接收串行数据的串行协议工作。在串行通信中,数据通过单条线路或导线逐位传输。在双向通信中,我们使用两根导线来进行连续的串行数据传输。根据应用和系统要求,串行通信需要的电路和导线较少,可降低实现成本。

本文将UART用作硬件通信协议应遵循的标准步骤进行说明,讨论使用UART的基本原则,重点是数据包传输、标准帧协议和定制帧协议;定制帧协议将是安全合规性方面的增值特性,尤其是在代码开发期间。在产品开发过程中,本文还将分享一些基本步骤,以检查数据表的实际使用,目标是帮助更好地理解和遵循UART标准,以便最大程度地发挥其能力和应用优势,特别是在开发新产品时。
通信协议


通信协议在组织设备之间的通信时扮演着重要角色。它基于系统要求而以不同方式进行设计。此类协议具有特定的规则,为实现成功通信,不同设备都遵循该规则。

根据定义,UART是一种硬件通信协议,以可配置的速度使用异步串行通信。异步意味着没有时钟信号来同步从发送设备进入接收端的输出位。

嵌入式系统、微控制器和计算机大多将UART作为设备间硬件通信协议的一种形式。在可用通信协议中,UART的发送和接收端仅使用两条线。尽管它是一种广泛使用的硬件通信方法,但它并非在所有时候都是完全优化的。在微控制器内部使用UART模块时,通常会忽略帧协议的适当实现。
接口



图1.两个UART彼此直接通信


每个UART设备的两个信号分别命名为:
  • 发送器(Tx)
  • 接收器(Rx)

每个设备的发送器和接收器线的主要作用是用于串行通信的串行数据的发送和接收。


图2.带数据总线的UART
发送UART连接到以并行形式发送数据的控制数据总线。然后,数据将在传输线路(导线)上一位一位地串行传输到接收UART。反过来,对于接收设备,串行数据会被转换为并行数据。

UART线用作发送和接收数据的通信介质。请注意,UART设备具有专门用于发送或接收的发送和接收引脚。对于UART和大多数串行通信,发送和接收设备需要将波特率设置为相同的值。波特率是指信息传输到信道的速率。对于串行端口,设定的波特率将用作每秒传输的最大位数。表1总结了关于UART必须了解的几点。

表1.UART概要

UART接口不使用时钟信号来同步发送器和接收器设备,而是以异步方式传输数据。发送器根据其时钟信号生成的位流取代了时钟信号,接收器使用其内部时钟信号对输入数据进行采样。同步点是通过两个设备的相同波特率来管理的。如果波特率不同,发送和接收数据的时序可能会受影响,导致数据处理过程出现不一致。允许的波特率差异最大值为10%,超过此值,位的时序就会脱节。
数据传输


在UART中,传输模式为数据包形式。连接发送器和接收器的机制包括串行数据包的创建和物理硬件线路的控制。数据包由起始位、数据帧、奇偶校验位和停止位组成。


图3.UART数据包
  • 起始位

当不传输数据时,UART数据传输线通常保持高电压电平。若要开始数据传输,发送UART会将传输线从高电平拉到低电平并保持1个时钟周期。当接收UART检测到高到低电压跃迁时,便开始以波特率对应的频率读取数据帧中的位。


图4.起始位
  • 数据帧

数据帧包含所传输的实际数据。如果使用奇偶校验位,数据帧长度可以是5位到8位。如果不使用奇偶校验位,数据帧长度可以是9位。在大多数情况下,数据以最低有效位优先方式发送。


图5.数据帧
  • 奇偶校验

奇偶性描述数字是偶数还是奇数。通过奇偶校验位,接收UART判断传输期间是否有数据发生改变。电磁辐射、不一致的波特率或长距离数据传输都可能改变数据位。

接收UART读取数据帧后,将计数值为1的位,检查总数是偶数还是奇数。如果奇偶校验位为0(偶数奇偶校验),则数据帧中的1或逻辑高位总计应为偶数。如果奇偶校验位为1(奇数奇偶校验),则数据帧中的1或逻辑高位总计应为奇数。

当奇偶校验位与数据匹配时,UART认为传输未出错。但是,如果奇偶校验位为0,而总和为奇数,或者奇偶校验位为1,而总和为偶数,则UART认为数据帧中的位已改变。


图6.奇偶校验位
  • 停止位

为了表示数据包结束,发送UART将数据传输线从低电压驱动到高电压并保持1到2位时间。


图7.停止位
UART传输步骤


第一步:发送UART从数据总线并行接收数据。

图8.数据总线至发送UART
第二步:发送UART将起始位、奇偶校验位和停止位添加到数据帧。


图9.Tx侧的UART数据帧
第三步:从起始位到结束位,整个数据包以串行方式从发送UART送至接收UART。接收UART以预配置的波特率对数据线进行采样。


图10.UART传输
第四步:接收UART丢弃数据帧中的起始位、奇偶校验位和停止位。


图11.Rx侧的UART数据帧

第五步:接收UART将串行数据转换回并行数据,并将其传输到接收端的数据总线。


图12.接收UART至数据总线

帧协议


UART的一个关键特性是帧协议的实现,但还没有被充分使用。其主要用途和重要性是为每台设备提供安全和保护方面的增值。例如,当两个设备使用相同的UART帧协议时,有可能在没有检查配置的情况下连接到同一个UART,设备会连接到不同的引脚,这可能导致系统故障。

另一方面,实现帧协议可确保安全性,因为需要根据设计帧协议解析接收到的信息。每个帧协议都经过专门设计,以确保唯一性和安全性。

在设计帧协议时,设计人员可以给不同设备设置期望的报头和报尾(包括CRC)。在图13中,2个字节被设置为报头的一部分。

图13.UART帧协议示例
根据示例,您可以给您的设备设置独有的报头、报尾和CRC。
  • 报头1(H1为0xAB)和报头2(H2为0xCD)

报头是确定您是否在与正确的设备通信的唯一标识符。
  • 命令(CMD)选择

命令将取决于用于创建两个设备之间通信的命令列表。
  • 每个命令的数据长度(DL)
数据长度将取决于所选的命令。您可以根据所选的命令来使数据长度最大化,因此它会随选择而变化。在这种情况下,数据长度可以调整。
  • 数据n(可变数据)
数据是要从设备传输的有效载荷。
  • 报尾1(T1为0xE1)和报尾2(T2为0xE2)
报尾是在传输结束后添加的数据。就像报头一样,报尾也可以唯一标识符。
  • 循环冗余校验(CRC公式)
循环冗余校验公式是一种附加的错误检测模式,用于检测原始数据是否发生意外更改。发送设备的CRC值必须始终等于接收器端的CRC计算值。


建议为每个UART设备实现帧协议来增加安全性,帧协议要求发送和接收设备使用相同的配置。

UART工作原理


使用任何硬件通信协议时,首先必须检查数据手册和硬件参考手册。以下是要遵循的步骤:


第一步:检查设备的数据手册接口。

图14.微控制器数据手册

第二步:在存储器映射下面检查UART地址。


图15.微控制器存储器映射

第三步:检查UART端口的具体信息,例如工作模式、数据位长度、奇偶校验位和停止位。示例MCU提供了一个全双工UART端口,其与PC标准UART完全兼容。UART端口提供一个简化的UART接口用于连接其他外设或主机,支持全双工、DMA和异步串行数据传输。UART端口支持5到8个数据位,以及无校验、偶校验和奇校验。帧由一个半或两个停止位终止。


第四步:检查UART操作的详细信息,包括波特率计算。波特率通过以下示例公式进行配置。此公式随微控制器而异。


数据手册中的UART端口详细信息示例:

  • 5到8个数据位
  • 1、2或1 ½个停止位
  • 无、偶数或奇数奇偶校验
  • 可编程过采样率为4、8、16、32
  • 波特率 = PCLK/((M + N/2048) × 2OSR + 2 × DIV
其中:
OSR(过采样率)
UART_LCR2.OSR = 0至3
DIV(波特率分频器)
UART_DIV = 1至65535
M(DIVM小数波特率M)
UART_FBR.DIVM = 1至3
N(DIVM小数波特率M)
UART_FBR.DIVN = 0至2047


第五步:对于波特率,务必检查要使用的外设时钟(PCLK)。此示例有26 MHz PCLK和16 MHz PCLK可用。请注意,OSR、DIV、DIVM和DIVN随设备而异。


表2.基于26 MHz PCLK的波特率示例

表3.基于16 MHz PCLK的波特率示例
第六步:下一部分是检查UART配置的详细寄存器。了解计算波特率时的参数,例如UART_LCR2、UART_DIV和UART_FBR。表4要列出所涉及的具体寄存器。


表4.UART寄存器描述
第七步:检查每个寄存器下的详细信息,代入值以计算波特率,然后开始实现UART。
应用范例


当开发稳健的、质量驱动的产品时,熟悉UART通信协议非常有优势。知道如何仅使用两条线发送数据,以及如何传输整个数据包或有效载荷,将有助于确保数据正确无误地发送和接收。UART是最常用的硬件通信协议,具备相关知识可以在将来的设计中实现设计灵活性。


您可以将UART用于许多应用,例如:
  • 调试:在开发过程中及早发现系统错误很重要。添加UART便可从系统捕捉消息,帮助排除错误。
  • 制造功能级追踪:日志在制造业中非常重要。通过日志可确定功能,提醒操作员生产线上正在发生的事情。
  • 客户更新:软件更新非常重要。完整的动态硬件和支持更新的软件对于拥有完整系统至关重要。
  • 测试/验证:在产品离开制造过程之前进行验证有助于为客户提供最优质的产品。





👇点击探索ADI“芯”世界

·
·


亚德诺半导体 Analog Devices, Inc.(简称ADI)始终致力于设计与制造先进的半导体产品和优秀解决方案,凭借杰出的传感、测量和连接技术,搭建连接真实世界和数字世界的智能化桥梁,从而帮助客户重新认识周围的世界。
评论 (0)
  •   电磁兼容故障诊断系统平台深度解析   北京华盛恒辉电磁兼容(EMC)故障诊断系统平台是解决电子设备在复杂电磁环境下性能异常的核心工具。随着电子设备集成度提升与电磁环境复杂化,EMC 问题直接影响设备可靠性与安全性。以下从平台架构、核心功能、技术实现、应用场景及发展趋势展开全面剖析。   应用案例   目前,已有多个电磁兼容故障诊断系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁兼容故障诊断系统。这些成功案例为电磁兼容故障诊断系统的推广和应用提供了有力支持。  
    华盛恒辉l58ll334744 2025-04-22 14:29 60浏览
  • 4 月 19 日,“增长无界・智领未来” 第十六届牛商大会暨电子商务十大牛商成果报告会在深圳凤凰大厦盛大举行。河南业之峰科技股份有限公司总经理段利强——誉峰变频器强哥凭借在变频器领域的卓越成就,荣膺第十六届电子商务十大牛商,携誉峰变频器品牌惊艳亮相,以十几年如一日的深耕与创新,书写着行业传奇。图 1:誉峰变频器强哥在牛商大会领奖现场,荣耀时刻定格牛商大会现场,誉峰变频器强哥接受了多家媒体的专访。面对镜头,他从容分享了自己在变频器行业二十年的奋斗历程与心路感悟。谈及全域营销战略的成功,誉峰变频器强
    电子与消费 2025-04-22 13:22 79浏览
  • 在消费金融的赛道上,马上消费曾是备受瞩目的明星企业。自2015年成立以来,它以年均 30% 的净利润增速一路狂奔,成为持牌消费金融公司的标杆,2023年更是斩获19.82亿元净利润,风光无限。然而,2024年却成了马上消费的一道分水岭。2024年上半年,其营收为77.38亿元,同比下降2.11%;净利润更是同比骤降20.66%,仅为10.68亿元,创下历史最大跌幅 。与此同时,不良贷款率攀升至2.5%,不良余额高达16.54亿元,核心资本充足率降至12.72%,融资
    用户1742991715177 2025-04-21 21:29 97浏览
  • 引言:工业安全与智能化需求的双重驱动在工业安全、环境保护及家庭安防领域,气体泄漏引发的安全事故始终是重大隐患。随着传感器技术、物联网及语音交互的快速发展,气体检测报警器正朝着智能化、低成本、高可靠的方向演进。WT588F02B-8S语音芯片,以“离在线语音更换+多协议通信”为核心优势,为气体检测报警器提供了一套高效、灵活的低成本语音解决方案,助力开发者快速响应市场需求。产品功能与市场需求1. 核心功能:从监测到预警的全流程覆盖实时气体监测:支持一氧化碳、臭氧、硫化氢等多种气体浓度检测,精度可达p
    广州唯创电子 2025-04-22 09:14 68浏览
  • 据国际精益六西格玛研究所(ILSSI)成员大卫·哈钦斯(David Hutchins)的回忆,在“六西格玛”名称出现前,摩托罗拉组建了约100个质量改进团队,接受朱兰博士制作的16盘录像带培训,名为《朱兰论质量改进》(Juran on Quality Improvement),为了推广这种严谨的分析方法(朱兰博士视频中的核心内容),摩托罗拉前首席执行官鲍勃·加尔文创造了“六西格玛”这一标签,用以表彰这种“最顶尖"的方法。大卫·哈钦斯(David Hutchins)是朱兰博士的好友,也为他的工作做
    优思学院 2025-04-22 12:03 66浏览
  •   北京华盛恒辉基于GIS的电磁态势可视化系统软件是将地理空间信息与电磁态势数据相结合,通过图形化手段直观展示电磁环境态势的系统。这类软件在军事、通信、无线电管理等领域具有广泛应用,能够辅助用户进行电磁频谱分析、干扰监测、态势研判和决策支持。以下是关于此类系统的详细介绍:   应用案例   目前,已有多个电磁态势可视化系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁态势可视化系统。这些成功案例为电磁态势可视化系统的推广和应用提供了有力支持。   一、系统功能   电磁
    华盛恒辉l58ll334744 2025-04-22 11:44 68浏览
  •   北京华盛恒辉机场保障能力评估系统软件深度解析   在航空运输业快速发展的背景下,机场保障任务愈发复杂,传统人工评估方式已无法满足高效精准的管理需求。机场保障能力评估系统软件作为提升机场运行效率、保障飞行安全的关键工具,其重要性日益凸显。   应用案例   目前,已有多个机场保障能力评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润机场保障能力评估系统。这些成功案例为机场保障能力评估系统的推广和应用提供了有力支持。   一、系统功能模块   数据采集与整合模块  
    华盛恒辉l58ll334744 2025-04-22 10:28 85浏览
  •   卫星通信效能评估系统平台全面解析   北京华盛恒辉卫星通信效能评估系统平台是衡量卫星通信系统性能、优化资源配置、保障通信服务质量的关键技术工具。随着卫星通信技术的快速发展,特别是低轨卫星星座、高通量卫星和软件定义卫星的广泛应用,效能评估系统平台的重要性日益凸显。以下从技术架构、评估指标、关键技术、应用场景及发展趋势五个维度进行全面解析。   应用案例   目前,已有多个卫星通信效能评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润卫星通信效能评估系统。这些成功案例为卫
    华盛恒辉l58ll334744 2025-04-22 16:34 57浏览
  • 引言:老龄化社会的健康守护需求随着全球老龄化进程加速,老年人的健康管理与生活质量成为社会焦点。记忆衰退、用药混乱、日程遗漏等问题频发,催生了智能健康设备的市场需求。WTR096录音语音芯片,凭借其高度集成的录放音、计时时钟与计划管理功能,为老年人量身打造了一站式健康管理方案,重新定义智能语音时钟的价值。功能亮点:1. 用药安全守护:多维度提醒,拒绝遗忘多时段精准提醒:支持一天内设置多个用药时间(如早、中、晚),适配复杂用药需求。个性化语音定制:家属可录制专属提醒语音(如“上午9点,请服用降压药”
    广州唯创电子 2025-04-22 08:41 91浏览
  • 近期,金融界消息称,江西万年芯微电子有限公司申请一项名为“基于预真空腔体注塑的芯片塑封方法及芯片”的专利。此项创新工艺的申请,标志着万年芯在高端芯片封装领域取得重要突破,为半导体产业链提升注入了新动能。专利摘要显示,本发明公开了一种基于预真空腔体注塑的芯片塑封方法,方法包括将待塑封的大尺寸芯片平铺于下模盒腔体内的基板并将大尺寸芯片的背向表面直接放置于基板上以进行基板吸附;将上模盒盖合于下模盒形成塑封腔,根据基板将塑封腔分为上型腔以及下型腔;将下型腔内壁与大尺寸芯片间的空隙进行树脂填充;通过设置于
    万年芯 2025-04-22 13:28 66浏览
  •   电磁干扰抑制系统平台深度解析   一、系统概述   北京华盛恒辉电磁干扰抑制系统在电子技术快速发展、电磁环境愈发复杂的背景下,电磁干扰(EMI)严重影响电子设备性能、稳定性与安全性。电磁干扰抑制系统平台作为综合性解决方案,通过整合多元技术手段,实现对电磁干扰的高效抑制,确保电子设备稳定运行。   应用案例   目前,已有多个电磁干扰抑制系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁干扰抑制系统。这些成功案例为电磁干扰抑制系统的推广和应用提供了有力支持。   二
    华盛恒辉l58ll334744 2025-04-22 15:27 57浏览
  •   电磁兼容(EMC)故障诊断系统软件解析   北京华盛恒辉电磁兼容故障诊断系统软件是攻克电子设备电磁干扰难题的专业利器。在电子设备复杂度攀升、电磁兼容问题频发的背景下,该软件于研发、测试、生产全流程中占据关键地位。以下为其详细介绍:   应用案例   目前,已有多个电磁兼容故障诊断系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁兼容故障诊断系统。这些成功案例为电磁兼容故障诊断系统的推广和应用提供了有力支持。   一、软件核心功能   干扰与敏感分析:深度剖析电磁干
    华盛恒辉l58ll334744 2025-04-22 14:53 68浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦