news 2026/2/6 11:38:02

异步串行通信及UART硬件工作机制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
异步串行通信及UART硬件工作机制

异步串行通信原理

外设电路根据波特率在相应的时间点对引脚上的电平进行采样,并根据采样结果将电平信号转化为相应的数字值(也就是0或1),并且填充到相应的寄存器。这样一个过程就是物理信号转化成数字信号的过程。

提出有关问题

  • 既然是通过约定的波特率来进行采样,如果通信双方系统晶振有误差,随着通信的进行,那么采样点就会偏移,甚至产生错位,导致乱码?

答:对于uart通信来说,一般会有起始位,数据位和停止位这样几个阶段。其中,起始位为低电平,终止位位高电平。正常在空闲时,信号线处于高电平,当一个字节开始发送时,会先发送一个起始位(由硬件自动产生),这时候信号线电平被拉低,接收方uart电路检测到一个下降沿,标志着数据要来了,然后8个比特的数据位发送完成后,再发送一个终止位将信号线拉高,代表一个字节的数据发送完毕。由于每次发送一个字节都会有一个起始位和终止位进行同步,那么整个误差就不会随着通信时间而累加。

  • 如何减少采样时,信号线上电平浮动的干扰?

答:一般电路会在一个位时间的中间点进行采样。通过在一个位时间内进行多次采样,取中间几次的采样结果作为最终结果,这样的技术成为过采样。一般有8倍或者16倍过采样。

  • 采样时core会参与吗?

答:采样时只有uart硬件电路在工作,内核不参与。只有拿数据的时候,内核才参与,也可以让DMA去搬数据。比喻:硬件电路(USART 外设): 它像是一个勤劳的前台助理。它不停地盯着 RX 引脚(采样、计数、校验、打包装箱)。在数据没攒够一个“字长”之前,它绝对不会去打扰 Core。中断控制器(NVIC): 它像是一个门铃。当外设助理把数据装好盒(RXNE=1)并按响门铃时,Core 才会停下正在处理的复杂算法(比如 PID 控制或 UI 刷新)。Core(处理器核心): 它只负责**“决策”**。进中断后,Core 只需执行一条指令data = RDR,拿走结果,然后继续干大事。这就是为什么“外设”存在的意义:把高频、机械、实时的物理层动作固化在逻辑电路里。

总结

  • 异步串行通信按照相应的物理协议将物理信号转化成数字信号的通信过程;
  • 根据原理,我们需要告诉外设电路波特率字长有无校验位停止位长度
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/6 16:13:59

springboot党员教育和管理系统(11641)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

作者头像 李华
网站建设 2026/2/3 12:49:02

PM2入门指南:从零开始学习Node.js进程管理

适合人群:Node.js新手、需要部署Node服务的开发者 核心目标:搞懂PM2是什么、怎么用,轻松实现Node服务稳定运行 一、PM2是什么?为什么需要它? PM2 是一款专门为 Node.js 应用设计的 守护进程管理工具 ,核…

作者头像 李华
网站建设 2026/2/5 12:26:37

GLM-4.6V-Flash-WEB模型在热气球着陆点选择中的视觉辅助

GLM-4.6V-Flash-WEB模型在热气球着陆点选择中的视觉辅助 在一次山区热气球试飞任务中,飞行员正缓慢下降至预定降落区。地面风速突变,原本开阔的田野边缘突然出现一群未标记的放牧牛群——这个细节在高空肉眼难以分辨。传统依赖目视判断的方式面临严峻挑战…

作者头像 李华
网站建设 2026/2/4 11:09:27

2种方法搭建知识库,喂饭级保姆教程来啦!

前天参加了小鹅通商家在石家庄的线下沙龙,我分享了如何搭建知识库。那今天就跟大家聊聊AI知识库搭建。 大白话来说,就是将一些碎片化的知识上传到一个库里,在我需要找资料的时候直接调用。他的好处是通过你的知识库,运营AI来调用&…

作者头像 李华
网站建设 2026/2/4 10:10:09

声学之电声学

电声学是研究声能与电能相互转换原理及声信号处理技术的学科,涵盖次声波、可听声到超声波的波长范围,涉及声信号的接收、存储、加工、传输和应用 。 其核心内容包括机电类比理论和电声换能器技术。机电类比通过电路方法分析机械振动与声波现象&#xff…

作者头像 李华