news 2026/4/4 22:26:23

自学嵌入式day47,串口

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
自学嵌入式day47,串口

UART 技术解析

一、核心概念

通用异步收发器(Universal Asynchronous Receiver/Transmitter)是一种采用异步通信全双工模式的串行数据传输协议。其硬件接口内置独立通信规则,无需外部时钟同步。

二、物理连接
设备A 设备B TXD --------- RXD RXD --------- TXD GND --------- GND

⚠️交叉连接原则:发送端(TXD)必须对接接收端(RXD),电源地(GND)需共地。

三、通信特性
模式数据线数量通信方向
单工1固定单向(如广播)
半双工1双向分时(对讲机模式)
全双工2双向实时(电话模式)
四、数据传输原理
  1. LSB 优先
    数据 $b_0b_1...b_7$ 的发送顺序为:$b_0 \rightarrow b_1 \rightarrow \cdots \rightarrow b_7$
    示例:数据A6(二进制10100110)发送序列:
    $$0 \rightarrow 1 \rightarrow 1 \rightarrow 0 \rightarrow 0 \rightarrow 1 \rightarrow 0 \rightarrow 1$$

  2. 串行 vs 并行

    • 串行:单线逐位传输,抗干扰强,成本低
    • 并行:多线同时传输,速率高,成本高
五、帧结构时序

▷ 起始位:1 bit 低电平
▷ 数据位:5~9 bits(含 LSB)
▷ 停止位:1~2 bits 高电平

六、差错检测
校验类型校验位值数据规则
奇校验1$\sum(\text{数据位}1) \mod 2 = 0$
偶校验0$\sum(\text{数据位}1) \mod 2 = 1$
无校验-不检测
七、参数配置格式

波特率 数据位 校验 停止位
示例:

  • 9600 8 N 1:波特率9600,8位数据,无校验,1位停止
  • 115200 8 O 1:波特率115200,8位数据,奇校验,1位停止

波特率:$bps = \frac{f_{osc}}{12 \times (256 - TH1) \times 2^{SMOD}}$

八、寄存器配置
  1. SCON(98H)

    bit名称功能
    B7SM0/FE工作模式选择/帧错误检测
    B6SM1工作模式选择
    B4REN接收使能(1=允许)
    B1TI发送中断标志(需软件清零)
    B0RI接收中断标志(需软件清零)
  2. 波特率计算
    定时器1(8位自动重装模式):
    $$TH1 = 256 - \frac{2^{SMOD} \times f_{osc}}{32 \times 12 \times bps}$$
    示例:$f_{osc}=11.0592MHz, bps=9600, SMOD=0$ 时:
    $$TH1 = 256 - \frac{1 \times 11.0592 \times 10^6}{32 \times 12 \times 9600} \approx 253$$

九、代码实现(Python模拟)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/26 13:26:28

DeepSeek-R1-Distill-Qwen-1.5B快速上手:从零部署完整指南

DeepSeek-R1-Distill-Qwen-1.5B快速上手:从零部署完整指南 1. 引言 随着大模型在实际业务场景中的广泛应用,轻量化、高效率的推理模型成为边缘计算和实时服务的关键需求。DeepSeek-R1-Distill-Qwen-1.5B 正是在这一背景下推出的高性能小型语言模型&…

作者头像 李华
网站建设 2026/3/28 5:07:32

keil5添加stm32f103芯片库快速理解工业时序要求

从零开始构建工业级STM32项目:Keil5中添加STM32F103芯片库的完整实践与时序控制精髓在工业自动化现场,每一个毫秒都可能决定系统的成败。你是否曾遇到过这样的问题:明明代码逻辑正确,Modbus通信却频繁丢帧?PID控制输出…

作者头像 李华
网站建设 2026/4/1 3:22:52

没Linux基础能用Swift-All?保姆级云端教程,小白友好

没Linux基础能用Swift-All?保姆级云端教程,小白友好 你是不是也是一位对AI充满好奇的文科生?看到别人用大模型生成文章、对话机器人、甚至微调专属AI,心里痒痒的,但一打开教程就看到满屏的命令行代码——pip install、…

作者头像 李华
网站建设 2026/3/25 18:26:31

实测Qwen3-Embedding-4B:32k长文本处理能力惊艳展示

实测Qwen3-Embedding-4B:32k长文本处理能力惊艳展示 1. 背景与测试目标 随着大模型在检索、分类、聚类等任务中的广泛应用,高质量的文本嵌入(Text Embedding)模型成为构建智能系统的核心组件。通义千问团队推出的 Qwen3-Embeddi…

作者头像 李华
网站建设 2026/3/27 12:19:25

PDF-Extract-Kit-1.0与MLflow集成:模型版本管理与追踪

PDF-Extract-Kit-1.0与MLflow集成:模型版本管理与追踪 1. 技术背景与集成价值 随着文档智能处理需求的不断增长,PDF内容提取技术在金融、教育、科研等领域扮演着越来越重要的角色。PDF-Extract-Kit-1.0 是一个集成了多种先进深度学习模型的开源工具集&…

作者头像 李华
网站建设 2026/3/31 4:12:10

实测GLM-TTS显存占用,10GB显存够不够用

实测GLM-TTS显存占用,10GB显存够不够用 在AI语音合成技术快速发展的今天,高质量TTS(Text-to-Speech)模型往往伴随着高昂的硬件门槛。动辄20GB以上的显存需求让许多开发者望而却步。最近开源的 GLM-TTS 模型以其“零样本音色克隆”…

作者头像 李华