当前位置: 首页 > article >正文

嵌入式硬件篇---Uart和Zigbee


文章目录

  • 前言
  • 一、UART(通用异步收发传输器)
    • 1. 基本概念
    • 2. 工作原理
      • 帧结构
        • 起始位
        • 数据位
        • 校验位
        • 停止位
      • 异步通信
      • 波特率
    • 3. 特点
      • 优点
      • 缺点
    • 4. 典型应用
  • 二、ZigBee
    • 1. 基本概念
    • 2. 技术细节
      • 工作频段
        • 2.4GHz
        • 868MHz
      • 网络拓扑
        • 星型网络
        • 网状网络
        • 簇状网络
      • 协议栈
        • 物理层
        • 网络层
        • 应用层
      • 低功耗设计
        • 支持休眠模式
        • 数据传输时间短
      • 安全性
    • 3. 特点
      • 优点
      • 缺点
    • 4. 典型应用
  • UART与ZigBee的对比与协同
    • 1. 核心区别
    • 2. 协同应用示例
  • 总结


前言

本文简单介绍了Uart和Zigbee的区别以及各自适应的场合。


一、UART(通用异步收发传输器)

1. 基本概念

UART(Universal Asynchronous Receiver/Transmitter)是一种串行通信协议,用于设备间的异步数据传输。它通过两根信号线(TX发送、RX接收)实现全双工通信,无需共享时钟信号,依赖双方预先约定的**波特率(Baud Rate)**进行同步。

2. 工作原理

帧结构

每帧数据包含以下部分:

起始位

起始位(1位,低电平

数据位

数据位(5-9位,通常8位)

校验位

校验位(可选,奇偶校验)

停止位

停止位(1-2位,高电平

异步通信

发送端和接收端独立计时,通过起始位和停止位界定数据边界,依赖波特率匹配来减少时钟偏差

波特率

常见值有9600、115200等,表示每秒传输的符号数。需确保收发双方波特率一致,误差通常需小于3%。

3. 特点

优点

  1. 简单易实现,成本低。
  2. 支持全双工通信。
  3. 无需时钟线,节省硬件资源。

缺点

  1. 传输距离短(通常<15米)。
  2. 速率较低(一般≤115.2 kbps)。
  3. 无纠错机制,依赖校验位检测错误。

4. 典型应用

  1. 微控制器与**传感器(如GPS、温湿度模块)**通信。
  2. 通过USB转UART桥接器实现PC与嵌入式设备调试
  3. 工业控制中的设备级数据传输

二、ZigBee

1. 基本概念

ZigBee是基于IEEE 802.15.4标准的低功耗、短距离无线通信协议,专为物联网设计,支持自组网和多跳传输,适用于低数据速率场景(如传感器网络)。

2. 技术细节

工作频段

2.4GHz

2.4 GHz(全球通用,16通道,速率250 kbps)

868MHz

868 MHz(欧洲)、915 MHz(北美),速率更低但穿透性更强。

网络拓扑

星型网络

星型网络:由**协调器(Coordinator)**集中管理终端设备。

网状网络

网状网络(Mesh):节点可互相中继数据,提升覆盖范围和可靠性。

簇状网络

簇状网络:分层结构,适用于复杂场景。

协议栈

物理层

物理层(PHY) & 媒体访问控制层(MAC):由IEEE 802.15.4定义。

网络层

网络层(NWK):负责路由、组网和安全

应用层

应用层(APL):包含应用支持子层(APS)和用户自定义应用

低功耗设计

支持休眠模式

支持休眠模式(如终端设备可休眠数年)。

数据传输时间短

数据传输时间短(典型数据包仅几毫秒)。

安全性

使用AES-128加密,支持网络密钥和链路密钥分层加密。

3. 特点

优点

  1. 低功耗,适合电池供电设备。
  2. 自组网能力强,支持大规模节点(理论上可达65000个)。
  3. 高可靠性(Mesh网络多路径冗余)。

缺点

  1. 带宽较低(≤250 kbps)。
  2. 传输距离短(室内约10-100米,室外可达1公里,依赖环境)。
  3. 网络配置复杂度较高。

4. 典型应用

  1. 智能家居(如智能灯泡、门锁)。
  2. 工业传感器网络(温度、湿度监测)。
  3. 医疗监护设备。
  4. 农业自动化(土壤湿度监测)。

UART与ZigBee的对比与协同

1. 核心区别

特性 UART ZigBee
通信类型 有线串行通信 无线网络通信
距离 短距离(<15米) 短到中距离(10米-1公里)
功耗 (但需有线连接) 极低(支持电池供电)
复杂度 简单 复杂(需组网协议栈)
应用场景 设备间点对点通信 大规模无线传感器网络

2. 协同应用示例

  1. 物联网系统中,UART常作为ZigBee模块与主控芯片的接口
  2. 例如:
    传感器通过UART将数据发送给微控制器(如STM32)。
    微控制器通过UART连接ZigBee模块(如CC2530)。
    ZigBee模块数据无线传输至网关最终上传至云端。

总结

  1. UART是简单、可靠的有线串行通信方案,适合短距离设备级交互
  2. ZigBee是低功耗无线网络协议,适用于需要自组网和大规模节点的物联网场景。
  3. 两者常结合使用:UART负责本地设备通信ZigBee实现远程无线数据传输。

相关文章:

嵌入式硬件篇---Uart和Zigbee

文章目录 前言一、UART&#xff08;通用异步收发传输器&#xff09;1. 基本概念2. 工作原理帧结构起始位数据位校验位停止位 异步通信波特率 3. 特点优点缺点 4. 典型应用 二、ZigBee1. 基本概念2. 技术细节工作频段2.4GHz868MHz 网络拓扑星型网络网状网络簇状网络 协议栈物理层…...

代码随想录算法训练营--打卡day8

一.反转字符串II 1.题目链接 541. 反转字符串 II - 力扣&#xff08;LeetCode&#xff09; 2.思路 循环分组定位&#xff1a;使用 for 循环&#xff0c;每2k为一组。i 每次增加 2k &#xff0c;就相当于定位到下一组字符的起始位置。在每次循环中&#xff0c;确定当前组需要…...

Linux 学习笔记(5)路径知识详解:绝对路径、相对路径与特殊路径符(期末、期中复习必备)

前言 一、相对路径与绝对路径 1、概念阐述 2、实际示例 二、特殊路径符 1.特殊路径符介绍 2.应用场景 三、总结 四、结语 前言 在 Linux 系统的学习过程中&#xff0c;路径的概念至关重要&#xff0c;它是我们在文件系统中定位文件和目录的关键。今天&#xff0c;我们就…...

Trae + LangGPT 生成结构化 Prompt

Trae LangGPT 生成结构化 Prompt 0. 引言1. 安装 Trae2. 克隆 LangGPT3. Trae 和 LangGPT 联动4. 集成到 Dify 中 0. 引言 Github 上 LangGPT 这个项目&#xff0c;主要向我们介绍了写结构化Prompt的一些方法和示例&#xff0c;我们怎么直接使用这个项目&#xff0c;辅助我们…...

【ida】ida笔记

1 ida下载 IDA Pro 7.0 Windows 和 macOS 版本&#xff0c;包含全部 F5 插件 - 资源分享 - iOS 安全论坛 - 专注于研究 iOS 安全 - iOS Hacker 2 IDA基操 1 shiftF12 查看string信息 (通常可以看到重要的信息 ) 2 Alt T 查找带有目标字符串的函数 3 F5 查看C代码 4 Ctrl F…...

动态规划——两个数组的dp问题

目录 1. 最长公共子序列 2. 不相交的线 3. 不同的子序列 4. 通配符匹配 5. 正则表达式匹配 6. 交错字符串 7. 两个字符串的最小ASCII删除和 8. 最长重复子数组 1. 最长公共子序列 题目链接&#xff1a;1143. 最长公共子序列 - 力扣&#xff08;LeetCode&#xff0…...

stream流Collectors.toMap(),key值重复问题

文章目录 一、问题二、问题示例三、原因四、解决方法4.1、方案一 一、问题 发现Collectors.toMap的一个坑&#xff0c;若key值重复的时候会抛异常。如&#xff1a; IllegalStateException: Duplicate key 男 二、问题示例 报错示例如下&#xff1a; import lombok.AllArgsC…...

机器学习 Day10 逻辑回归

1.简介 流程就是&#xff1a; 就是我们希望回归后激活函数给出的概率越是1和0. 2.API介绍 sklearn.linear_model.LogisticRegression 是 scikit-learn 库中用于实现逻辑回归算法的类&#xff0c;主要用于二分类或多分类问题。以下是对其重要参数的详细介绍&#xff1a; 2.1.…...

即时通讯软件BeeWorks,企业如何实现细粒度的权限控制?

BeeWorks作为一款专为企业设计的即时通讯平台&#xff0c;高度重视用户隐私安全&#xff0c;采取了多种措施来保障数据的保密性、完整性和可用性。 首先&#xff0c;BeeWorks采用私有化部署模式&#xff0c;企业可以将服务器架设在自己的网络环境中&#xff0c;所有通讯数据&a…...

Seq2Seq - Dataset 类

本节代码定义了一个 CMN 类&#xff0c;它继承自 PyTorch 的 Dataset 类&#xff0c;用于处理英文和中文的平行语料库。这个类的主要作用是将文本数据转换为模型可以处理的格式&#xff0c;并进行必要的填充操作&#xff0c;以确保所有序列的长度一致。 ⭐重写Dataset类是模型训…...

学习OpenCV C++版

OpenCV C 1 数据载入、显示与保存1.1 概念1.2 Mat 类构造与赋值1.3 Mat 类的赋值1.4 Mat 类支持的运算1.5 图像的读取与显示1.6 视频加载与摄像头调用1.7 数据保存 参考&#xff1a;《OpenCV4快速入门》作者冯 振 郭延宁 吕跃勇 1 数据载入、显示与保存 1.1 概念 Mat 类 : Ma…...

echarts图表相关

echarts图表相关 echarts官网折线图实际开发场景一&#xff1a; echarts官网 echarts官网 折线图 实际开发场景一&#xff1a; 只有一条折线&#xff0c;一半实线&#xff0c;一半虚线。 option {tooltip: {trigger: "axis",formatter: (params: any) > {const …...

idea自动部署jar包到服务器Alibaba Cloud Toolkit

安装插件&#xff1a;Alibaba Cloud Toolkit 配置服务器: 服务器配置&#xff1a; 项目启动Shell脚本命令: projectpd-otb.jar echo 根据项目名称查询对应的pid pid$(pgrep -f $project); echo $pid echo 杀掉对应的进程&#xff0c;如果pid不存在&#xff0c;则不执行 if [ …...

奥利司他

https://m.baidu.com/bh/m/detail/ar_9900965142893895938 奥利司他&#xff08;四氢脂抑素&#xff09;是一种众所周知的胰腺和胃脂肪酶不可逆抑制剂 生物活性&#xff1a;奥利司他&#xff08;四氢脂抑素&#xff09;是一种众所周知的胰腺和胃脂肪酶不可逆抑制剂。奥利司…...

Element Plus 图标使用方式整理

Element Plus 图标使用方式整理 以下是 Element Plus 图标的所有使用方式&#xff0c;包含完整代码示例和总结表格&#xff1a; 1. 按需引入图标组件 适用场景&#xff1a;仅需少量图标时&#xff0c;按需导入减少打包体积 示例代码&#xff1a; <template><div>…...

链路聚合+vrrp

1.链路聚合 作用注意事项将多个物理接口&#xff08;线路&#xff09;逻辑上绑定在一起形成一条逻辑链路&#xff0c;起到叠加带宽的作用1.聚合接口必须转发速率一致。2.聚合设备两端必须一致 配置命令 方法一 [Huawei]interface Eth-Trunk 0----先创建聚合接口&#xff0c;…...

Dynamics 365 Business Central Register Customer Payment 客户付款登记

#Dynamics 365 BC ERP# #D365 ERP# #Navision 前言 在实施过程&#xff0c;经常给客户介绍的 给客户付款一般用Payment Journal. 在客户熟悉系统运行后&#xff0c;往往会推荐客户使用Register Customer Payment.用这个function 工作会快很多&#xff0c;但出错的机会也比较大…...

Odoo免费开源ERP:企业销售过程中出现的问题

在企业未上线Odoo免费开源ERP时&#xff0c;企业销售过程中会存在失误。比如&#xff0c;许多销售订单都有如下问题&#xff1a;不当的定价、向客户过多地询问、处理订单延误、错过发货日期等。这些问题源于企业三个未集成的信息系统&#xff1a;销售管理系统、库存系统和财务系…...

手撕unique_ptr 和 shareed_ptr

文章目录 unique_ptrshared_ptr unique_ptr template<class T> class Unique_ptr { private:T* ptrNULL; public://1、删除默认的拷贝构造函数Unique_ptr(Unique_ptr& u) delete;//2、删除默认的复制构造Unique_ptr& operator(Unique_ptr& u) delete; …...

工会考试的重点内容是什么

工会考试的内容通常涵盖以下几个方面&#xff1a; 1、政治理论&#xff1a; 主要考查考生对马克思主义基本原理、中国特色社会主义理论体系、党的基本路线、方针、政策等方面的掌握程度。题型通常包括选择题、判断题和论述题。 2、法律法规&#xff1a; 这部分主要涉及国家…...

网络稳定性--LCA+最大生成树+bfs1/dfs1找最小边

1.最大生成树去除重边&#xff0c;只要最大的边成树 2.LCA查最近公共祖先&#xff0c;然后询问的lca(x,y)ff,分别从x,y向上找最小边 3.bfs1/dfs1就是2.中向上找的具体实现 #include<bits/stdc.h> using namespace std; #define N 100011 typedef long long ll; typede…...

混合并行技术在医疗AI领域的应用分析(代码版)

混合并行技术(专家并行/张量并行/数据并行)通过多维度的计算资源分配策略,显著提升了医疗AI大模型的训练效率与推理性能。以下结合技术原理与医疗场景实践,从策略分解、技术对比、编排优化及典型案例等维度展开分析: 一、混合并行技术:突破单卡算力限制 1. 并行策略三维分…...

【C++面向对象】封装(上):探寻构造函数的幽微之境

每文一诗 &#x1f4aa;&#x1f3fc; 我本将心向明月&#xff0c;奈何明月照沟渠 —— 元/高明《琵琶记》 译文&#xff1a;我本是以真诚的心来对待你&#xff0c;就像明月一样纯洁无瑕&#xff1b;然而&#xff0c;你却像沟渠里的污水一样&#xff0c;对这份心意无动于衷&a…...

每日算法-250409

这是我今天的算法学习记录。 2187. 完成旅途的最少时间 题目描述 思路 二分查找 解题过程 为什么可以使用二分查找&#xff1f; 问题的关键在于寻找一个最小的时间 t&#xff0c;使得在时间 t 内所有公交车完成的总旅途次数 sum 大于等于 totalTrips。 我们可以观察到时间的单…...

如何实现文本回复Ai ChatGPT DeepSeek 式文字渐显效果?前端技术详解(附完整代码)

个人开发的塔罗牌占卜小程序&#xff1a;【问问塔罗牌】 快来瞧瞧吧&#xff01; 一、核心实现原理 我们通过三步实现这个效果&#xff1a; 逐字渲染&#xff1a;通过 JavaScript 定时添加字符 透明度动画&#xff1a;CSS 实现淡入效果 光标动画&#xff1a;伪元素 CSS 动画…...

CompletableFuture高级模式详解

目录 CompletableFuture高级模式详解 1. CompletableFuture基础概念 1.1 什么是CompletableFuture? 1.2 异步编程基础 1.3 CompletableFuture与Future的对比 2. 创建CompletableFuture 2.1 基本创建方法 2.2 使用异步方法创建 2.3 指定执行器 3. 转换和链式操作 3.…...

【AI开源大模型工具链ModelEngine】【01】应用框架-源码编译运行

ModelEngine提供从数据处理、知识生成&#xff0c;到模型微调和部署&#xff0c;以及RAG&#xff08;Retrieval Augmented Generation&#xff09;应用开发的AI训推全流程工具链。 GitCode开源地址&#xff1a;https://gitcode.com/ModelEngineGitee开源地址&#xff1a;https…...

linux下截图工具的选择

方案一 gnome插件Screenshot Tool&#xff08;截屏&#xff09; ksnip&#xff08;图片标注&#xff09; gnome setting设置图片的默认打开方式为ksnip就可以快捷的将Screenshot Tool截屏的图片打开进行标记了。 但是最近我发现Screenshot Tool的延迟截图功能是有问题的&…...

每天记录一道Java面试题---day36

事务的基本特性和隔离级别 回答重点 事务基本特性ACID分别是&#xff1a; - 原子性指的是一个事务中的操作要么全部成功&#xff0c;要么全部失败。 - 一致性指的是数据库总是一个一致性的状态转换到另一个一致性的状态。比如A转账给B100块钱&#xff0c;假设A只有 90块&…...

Qt音频采集:QAudioInput详解与示例

1. 简介 QAudioInput是Qt Multimedia模块中用于音频采集的核心类&#xff0c;能够从麦克风等输入设备实时获取原始音频数据&#xff08;PCM格式&#xff09;。本文将通过原理讲解和代码示例&#xff0c;帮助开发者快速掌握音频采集的核心技术。 2. 核心功能 支持多种音频格式&…...