news 2026/4/16 14:28:37

51单片机——UART

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
51单片机——UART

一、UART

1.UART概念:

  • Unversial Aysnc Recevier Transmitter,通用异步收发器,与外界设备进行异步信方式
  • 硬件电路中的接口,UART有一套自己通信的规则,协议
  • 异步、全双工、串行通信协议

2.UART接线方式:

  • VCC:接电源正极
  • GND:接地
  • RXD:数据接收线
  • TXD:数据发送线

3.通信方式:

  • 单工
    • 通信时,数据接收方和发送方是固定的
    • 数据传输时,通过一根数据线进行传输
    • 数据传输的方向是单一的
  • 半双工
    • 通信双方既可以作为数据的发送方,也可以作为数据接收方
    • 数据传输时,通过一根数据线进行传输
    • 数据传输的方向可以是双向的,但在同一时刻传输的方向必须是单向的(A
    • 给B发的时候,B不能给A发。B给A发的时候,A也不能给B发)
  • 全双工
    • 通信双方既可以作为数据的发送方,也可以作为数据接收方
    • 数据传输时,通过两根数据线进行传输
    • 数据传输的方向在任意时刻都是双向的(数据的收发可以同时进行)

二、UART发送方式

1.UART发送数据顺序

遵循LSB优先原则,低位先行

2.数据传输形式

  • 串行
    • 通过一根数据线将多个bit按照先后次序,逐个bit逐个bit发送
    • 传输速率慢
    • 硬件成本低
    • 传输距离远,抗干扰性好
  • 并行
    • 通过多根数据线将多个bit同时发送
    • 传输速率快
    • 硬件成本高
    • 传输距离近,抗干扰性差(距离增加后会造成多根数据线的信号偏移,会
    • 受到电磁波的干扰,会出现一些误差)

3.串行通信的时序图

4.奇偶校验

不足:无法判断偶数个bit出错的问题

奇校验:

奇校验的校验位为'1',若数据位中'1'的个数加上校验位的'1',保持'1‘的总
个数是奇数个,代表奇校验通过

偶校验:

偶校验的校验位为'0',若数据位中'1'的个数加上校验位的'0',保持'1'的总
个数是偶数个,代表偶校验通过

无校验:

不需要校验位

5.串口通信参数(波特率 数据位 校验位 停止位)

串口参数组合波特率数据位校验位停止位
9600 8 N 196008无校验(N)1
2400 8 E 124008偶校验(E)1
115200 8 O 11152008奇校验(O)1

6.同步与异步的区别

对比维度同步通信异步通信
时钟线情况存在独立时钟线无独立时钟线
同步方式依赖时钟线统一通信频率依赖数据帧的起始 / 停止位、波特率约定
传输效率
高(无额外同步位开销)
较低(包含起始 / 停止位等开销)
硬件复杂度较高(需时钟线及同步逻辑)较低(仅需数据线)
数据帧结构通常为连续数据流(无额外同步位)以帧为单位,包含起始位、数据位、校验位、停止位
使用场景高速、长距离(如 SPI、I2C)低速、短距离(如 UART 串口)

三、串口相关寄存器配置

1.SCON寄存器

  • 将SCON寄存器中的bit6和bit7清0
  • 再将SCON寄存器中的bit6置1,代表串口工作在8位UART,波特率可变模式

  • 将SCON寄存器中的REN位置1,代表允许串口接收数据

  • TI位,用来查询8位数据是否发送完毕,发送完毕后会自动置1;必须用软件清0

  • RI位,用来查询8位数据是否接收完毕,接收完毕后会自动置1;必须用软件清0

2.PCON寄存器

  • 将PCON寄存器中的,SMOD位置1,波特率翻倍
  • 将PCON寄存器中的,SMOD0位清0,代表通过SCON寄存器中的SM0和SM1这两个位共同指定串口

波特率 定时器初值(定时器1 8位自动重装)计算:


工作模式:

TCON寄存器:

IE寄存器

四、主机和从机

主机:主机拥有对通信的绝对控制权,通信都是由主机发起
从机:从机不能直接发起通信,根据主机下发的指令完成对应的控制,并回复给主机应答

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

verl镜像哪里下载?火山引擎官方部署教程

verl镜像哪里下载?火山引擎官方部署教程 verl 是一个灵活、高效且可用于生产环境的强化学习(RL)训练框架,专为大型语言模型(LLMs)的后训练设计。它由字节跳动火山引擎团队开源,是 HybridFlow 论…

作者头像 李华
网站建设 2026/4/16 12:59:57

5分钟快速部署WebDAV文件共享服务:跨平台文件同步的终极解决方案

5分钟快速部署WebDAV文件共享服务:跨平台文件同步的终极解决方案 【免费下载链接】webdav Simple Go WebDAV server. 项目地址: https://gitcode.com/gh_mirrors/we/webdav 在数字化办公时代,团队协作和远程文件管理变得日益重要。WebDAV文件共享…

作者头像 李华
网站建设 2026/4/16 10:45:14

OpenWrt访问控制工具:智能管理家庭网络上网时间

OpenWrt访问控制工具:智能管理家庭网络上网时间 【免费下载链接】luci-access-control OpenWrt internet access scheduler 项目地址: https://gitcode.com/gh_mirrors/lu/luci-access-control OpenWrt访问控制工具是一款功能强大的网络时间管理软件&#xf…

作者头像 李华
网站建设 2026/4/14 13:35:26

零配置部署VibeThinker-1.5B,开箱即用太省心

零配置部署VibeThinker-1.5B,开箱即用太省心 在算法竞赛的深夜刷题中,你是否曾为一道动态规划题卡壳数小时?如果有一个能陪你一步步推导状态转移方程、自动生成可执行代码并分析时间复杂度的AI助手,而且完全运行在本地、无需调用…

作者头像 李华
网站建设 2026/4/13 1:33:11

零编码实现AI翻译:Hunyuan-MT-7B-WEBUI轻松上手

零编码实现AI翻译:Hunyuan-MT-7B-WEBUI轻松上手 在企业全球化进程不断加速的今天,语言障碍早已超越简单的沟通问题,成为影响知识传递效率、产品本地化速度和跨团队协作流畅度的关键瓶颈。尤其是在技术文档处理、系统界面多语言适配以及内部知…

作者头像 李华
网站建设 2026/4/16 13:55:21

FinBERT:金融文本情感分析的革命性AI工具

FinBERT:金融文本情感分析的革命性AI工具 【免费下载链接】finbert 项目地址: https://ai.gitcode.com/hf_mirrors/ai-gitcode/finbert 在当今信息爆炸的金融领域,如何从海量文本数据中快速准确地提取情感信号,已成为投资决策和市场分…

作者头像 李华