USB-PD3.0(Power Delivery)充电协议

2023-05-16

 

  USB-PD(Power Delivery)是基于USB Type-C的一种电源供电标准,最大供电功率可达100瓦(W);随着USB Type-C的普及,越来越多的设备(手机、平板、显示器、工作站、充电器等)使用USB-PD快速充电方案。
1USB Type-C简介
        Type-C是USB接口的一种形式,不分正反两面均可插入,支持USB标准的充电、数据传输、视频传输、音频传输、显示输出等功能。支持USB-PD后则可实现高达100W的电源供电。本文重点描述的USB-PD就是通过Type-C的“配置通道引脚CC”(图 1)进行通讯的。





 Type-C 接口及插座引脚功能定义

 

USB Type-C标准相对于旧标准的另一不同点是它引入了双角色能力。每根USB Type-C电缆的两端都是完全等同的,这就意味着连接起来的两台设备必须相互进行沟通以确定自己应作为主机还是外设而存在。角色的沟通需针对数据和电源分别进行,此工作在电缆接通之后就要进行。用于数据通讯的主机端口被称为下行端口 (Downstream Facing Port, DFP),外设端口被称为上行端口 (Upstream Facing Port, UFP)。而电源方面,供电端被称为源端 (Source),耗电端被称为吸端 (Sink)。有的设备既可以有数据上的双角色 (Dual Roles of Data, DRD) 能力,又具有电源上的双角色 (Dual Roles of Power, DRP) 能力。CC线在两台设备连接期间能起到定义电源角色的作用。

        USB Type-C系统带来的另一个好处是较高的供电能力。传统的USB电缆只容许提供2.5W功率,USB Type-C电缆则容许提供高达5V/3A即15W的最大功率,如果采用了电源传输 (Power Deliver, PD) 协议,电压电流指标就可以提升到20V/5A即100W的最大功率,这就容许通过USB端口为大型设备如监视器等设备供电,也容许对含有大型电池包的笔记本电脑等设备进行充电。新的USB PD 3.0协议还支持可编程电源 (Programmable Power Supply, PPS) 协议容许对总线电压和电流进行精确调节,而电压则可以低于5V。利用这样的协议,使用可调的总线电压对电池进行直接充电的高效直充系统就成为可能,这时的总线电压可以低达3V。标准的Type-C电缆额定的负载能力是3A,当更高的电流出现时,含有电子标签的电缆就必须被使用了,其中的电子标签可经CC线对电缆的能力进行标识。电子标签需要的电源供应是5V的,可用CC线经由电缆的VCONN向其提供。

        经由TX/RX线对提供的10Gbps高速通讯能力使得原来须由专用电缆提供的通讯如HDMI / DisplayPort/Thunderbolt等经由USB电缆进行传输成为了可能,4k的高清视频信号传输也完全没有问题。使高清HDMI信号经由USB Type-C电缆传输的应用需要将电缆的数据线进行特殊的配置,这被称为替换模式 (Alternate Mode)。

 

2、USB Type-C标准进行数据和电源配置的方法

 

                                        未扭转、未翻转的直接连接

        显示的是电缆未扭转、插座未翻转时的连接状态。从左侧的插座到右侧的插座,RX1线对连接到TX1线对,RX2线对连接到TX2线对;D+与D+连接,D-与D-连接,SBU1与SBU2连接,CC1经由CC线与CC1连接。

        USB 3.1仅需使用两对数据线,在此案中,高速数据经由RX1+/-和TX1+/-从一端传递到另一端。

        电缆两端的VCONN是不需要连通的。为电缆中电子标签IC供电的VCONN来自电缆的一端,它在电子标签芯片被确定存在于电缆中即被提供。

                                  电缆扭转以后的连接

在这种情形下,从左侧的插座到右侧的插座,RX1线对连接到TX2线对,RX2线对连接到TX1线对,D+仍然连接到D+,D-仍然连接到D-,SBU1连接到SBU1,SBU2连接到SBU2,CC1经由CC线连接到CC2。现在,高速数据经由左侧的RX1+/-和TX1+/-到右侧的RX2+/-和TX2+/-进行传输。

        总共有4种可能的连接方式:插座翻转或不翻转,电缆扭转或不扭转。

        在USB 3.1的系统中,RX/TX数据线需要使用多路复用器针对各种可能的电缆连接状态对RX/TX线的连接状态进行配置,使得正确的通讯连接能够形成,下图显示了USB Type-C端口之间数据线的路由可能性。通过测量每个端子上CC1/2的状态即可了解电缆和插座的方向,CC逻辑控制器可据此完成多路复用器的路由配置,此工作既可在多路复用器中完成,也可能在USB芯片组中进行。

3、电源传输
        在不采用电源传输协议的USB Type-C接口中,电源从源端传输到吸端的方法如下图所示。

USB Type-C的源端总是包含有一个用于接通/关断VBUS的MOSFET开关,它也可能具有VBUS电流的检测能力,其主要作用是对过流状况进行检测,另外还会含有VBUS的放电电路。CC1和CC2的检测电路在源端和吸端都会存在。

        CC (Channel Configuration) 线的作用是对两个连接在一起的设备进行电源供应的配置。初始情况下,USB Type-C接口的VBUS上是没有电源供应的,系统需要在电缆连接期间进行设备角色的定义,插座上的CC线被上拉至高电平的设备将被定义为电源供应者即源端,而被下拉至低电平的设备将被定义为电源消费者即吸端。

上图显示出了确定电源供求角色、电缆方向和电流供应能力的方法。源端的CC1和CC2通过电阻Rp被拉高,被监测着的CC1/CC2在没有连接任何东西时总是处于高电平,一旦吸端接入,CC1或CC2的电压就被电阻Rd拉低了。由于电缆中只有一条CC线,因而源端可以分辨出是哪个CC端被拉低了。吸端的CC1/CC2的电压也同样被监测着,一旦发现某条CC线被拉高了,其电压水平就让吸端知道源端电流供应能力。电路中的上拉电阻Rp也可以用电流源代替,这在集成电路中很容易实施,而且可以不受V+电源电压误差的影响。

        吸端的下拉电阻Rd的定义值是5.1kΩ,因而CC线的电压是由源端上拉电阻Rp的值(或电流源的电流值)决定的。已经定义的总线电流能力有3档,最低的CC线电压(大约0.41V)对应的是默认的USB电源规格(USB 2.0的500mA 或 USB 3.0的900mA),较高的CC线电压(大约0.92V)对应的电流能力是1.5A。假如CC线电压为大约1.68V,对应的最大电流供应能力为3A。相关数据可参照下图。

下图示范了一个测量案例,其中的电源供应端(源端)被连接到了电源消费端(吸端),使用了普通的USB Type-C电缆。

        最初的时候,源端插座上的CC1和CC2都被电阻Rp上拉至高电平,吸端的CC1和CC2都被下拉电阻Rd下拉至低电平。

        电缆接通以后,CC1或CC2根据电缆的插入方向而被上拉至较高电压。本案中的电缆没有处于扭转状态,源端的CC1和吸端的CC1之间被接通,CC1上出现由Rp和Rd分压以后的电压,此电压将由吸端进行测量并由此知道源端的电流供应能力是多少。

        在此案例中,接通以后的CC1的电压大约是1.65V,意味着源端最大能供应3A电流。

        CC线的连接被确定以后,VBUS上的5V电压将被接通。

        在不含电源传输协议的系统中,总线上的电流供应能力由分压器Rp/Rd确定,但源端只会供应5V电压。

引入电源传输 (Power Delivery, PD) 协议以后,USB Type-C系统的总线电压可以增加到最高20V,源端和吸端之间关于总线电压和电流的交流通过在CC线上传输串行的BMC编码来完成。

        包含PD协议的USB Type-C系统从源端到吸端的系统框图如下图所示

现在的源端内部包含了一个电压转换器,它是受源端PD控制器控制的。根据输入电压条件和最高总线电压的需求,该电压转换器可以是Buck、Boost、Buck-Boost或反激式转换器。经过CC线进行的PD通讯也在PD控制器的管控之下。USB PD系统还需要有一个开关可以将Vconn电源切换至一条CC线上。

        当电缆的连接建立好以后,PD协议的SOP通讯就开始在CC线上进行以选择电源传输的规格:吸端将询问源端能够提供的电源配置参数(不同的总线电压和电流数据)。由于吸端对电源的需求常常是与吸端的系统有关的(例如电池充电器),吸端的嵌入式系统控制器就需要先与吸端的PD控制器进行通讯以确定相应的规格。

        下图示范的是吸端的PD控制器申请一个较高的总线电压的例子。

吸端和源端之间在CC线上进行的通讯看起来像如下的样子:

        1. 吸端申请获得源端的能力数据。

        2. 源端提供它的能力数据信息。

        3. 吸端从源端提供的能力数据信息中选出适当的电源配置参数并发出相应的请求。

        4. 源端接受请求并将总线电压修改成相应的参数。在总线电压变化期间,吸端的电流消耗会保持尽可能地小。源端提升总线电压的过程是按照定义好的电压提升速度来进行的。

        5. 总线电压达到最后的数值以后,源端会等待总线电压稳定下来,再发送出一个电源准备好信号。到了这时候,吸端就可以增加其电流消耗了。当吸端希望总线电压降低的时候,同样的通讯过程也会发生。

        在总线电压下降期间,源端会激活一个分流电路,通过主动的总线放电使总线电压快速降低。达到额定值以后,源端会等待一段稍长的时间让总线电压稳定下来,然后再送出一个电源准备好信号。

        这样的通讯方法可确保总线上的任何电源变化都落在源端和吸端的能力范围内,避免出现不可控的状况。当Type-C电缆的连接被断开时,总线上的电源也被关断,任何新开始的连接都会进行电缆连接检测,电压也总是处于5V,这样就可以避免在电缆接通时有高电压从一台设备进入另一台设备 。

        USB PD通讯使用的是双相标记码 (Bi-phase Mark Code, BMC),此码是一种单线通信编码,数据1的传输需要有一次高/低电平之间的切换过程,数据0的传输则是固定的高电平或低电平。每个数据包都含有0/1交替的前置码、报文起始码 (Start of Packet, SOP)、报文头、信息数据字节、CRC循环冗余编码和报文结束码 (End of Packet, EOC),参见下图:

        下图展示的是一次要求总线电压升高的PD通讯的波形从密集至展开的样子,从最后展开的波形中可以看出前置码的序列。

        BMC通讯数据可以用USB PD解码器进行解码,Ellisys的EX350分析仪就是这样的设备。有了这种工具以后,PD通讯的数据就可以被捕获下来并显示出每个数据包的意义,其中含有与时间相关的数据如总线电压值、CC线上的波形等,参见下图

4、电源配置清单

        USB PD 3.0规范定义了下列电源配置清单:

        有4个独立的电压值是预先定义好的:5V、9V、15V和20V。对于5V、9V和15V来说,最大的电流为3A。在20V的配置中,如果电缆是普通的,最大容许的输出是20V/3A即60W。假如使用了特别定制的含电子标签电缆,相应的数据可以放大到20V/5A即100W。一个系统在支持最高的电压和功率等级的情况下还必须同时支持所有的较低的电压和功率等级。

5、含有电子标签的电缆

        USB Type-C规范定义了各种不同规格的电缆。低速的USB 2.0电缆没有特别的要求,只是要求其电流承载能力要达到3A。支持超速数据传输的USB 3.1电缆或是电流承载能力超过3A的电缆必须使用电子标签进行标识。图22所示的电缆中含有IC,其作用就是对电缆特性进行标识。这种具有活力的电缆也可以包含用于信号整形的IC,它们都需要从电缆的VCONN端子获得电源供应。

        含有电子标签IC的电缆中的Vconn上都含有1kΩ的下拉电阻Ra,其值要小于典型值为5.1kΩ的电阻Rd。这样的电缆在插入时,源端都会看到CC1和CC2电压下降的情况,具体的电压水平将告诉主机哪个端子被吸端的5.1kΩ电阻下拉了、哪个端子被电缆的1kΩ电阻下拉了,因而电缆的插入方向就可以被确定下来。Ra的下拉作用也能让源端知道VCONN需要得到5V的电源供应,因而需要向CC端供电以满足电子标签的电源需求。

        下图显示了一个测试案例,电源供应端(源端)被使用了电子标签的电缆连接到电源消耗端(吸端),其中的电缆是处于扭转的状态 。从中可以看到,当电缆接通以后,源端的一条CC线被来自VCONN端的1kΩ低电阻拉到了很低的电压。

        源端将检测到此电压,并由此知道电缆中含有电子标签,于是就会将5V的VCONN电源接入CC线以实现对电缆内部电路的供电。

        在其后发生的PD通讯中将会包含源端和电子标签之间的通讯(称为SOP’或SOP”)以及源端和吸端之间的通讯(称为SOP)。

6、电源的双重角色

        有的USB Type-C设备既可做源端,又可做吸端,它们被称为支持双重角色的设备 (Dual Role for Power, DRP)。这种设备的CC1和CC2端在互连以前处于高低电平交替变换的状态,一旦连接发生,两者的CC端都会发生改变,如下图所示。

        在这次连接事件中,左边的DRP设备选择做了源端,右边的DRP设备选择做了吸端。这个情形也可能反转过来,除非一台DRP设备已经被设定为源端优先(例如它由外部电源适配器供电时),或是被设定为吸端优先(例如处于由电池供电的情形)。

        电源角色的转换在连接期间也是可以发生的,只要连接在一起的两台DRP设备中有一台设备发起了角色变换的要求就行,下图显示了这样的角色变换的过程。

 

2017年2月,USB-IF组织发布了USB-PD 3.0标准的重要更新,即在USB-PD 3.0标准的基础上增加了可编程电源PPS(Programmable Power Supply),旨在为当今的快速充电解决方案提供统一的规范。目前其已经实现对高通QC 3.0/4.0、联发科PE 2.0/3.0、OPPO VOOC、华为SuperCharge等标准的收录,意味着可以完美支持这四种快充方案。USB组织甚至已经与中国工信部的泰尔实验室达成了共识,未来将与国标实现统一标准。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

USB-PD3.0(Power Delivery)充电协议 的相关文章

  • ROS总结——ROS消息发布和订阅

    消息发布器和订阅器 C 43 43 本博客总结绍如何用 C 43 43 编写消息发布器节点和订阅器节点 1 编写发布器节点 节点 Node 是指 ROS 网络中可执行文件 接下来 xff0c 将会创建一个发布器节点 talker xff0c
  • 无线充电器的CE认证、FCC认证、IC认证测试标准

    无线充电器是指不用传统的充电电源线连接到需要充电的终端设备上的充电器 xff0c 采用电磁感应原理 xff0c 通过线圈进行能量耦合实现能量的传递 从理论来说 xff0c 无线充电技术对人体安全无害处 xff0c 无线充电使用的共振原理是磁
  • STM32 uart空闲中断

    文章目录 目的 xff1a 前提 xff1a 相关代码 xff1a 使能UART IT IDLE中断中断处理函数中添加回调回调处理函数 目的 xff1a 使用UART空闲中断接收不定长消息 前提 xff1a stm32CubeMX工具配置u
  • 远程访问如此简单,通过 ZeroTier 和 Tailscale 轻松组建虚拟局域网,实现内网穿透。

    因为最近用了 Plex 所以研究了一下远程访问 xff0c 经过一番折腾基本上算是搞明白了 xff0c 在这里分享一些自己的经验给和我一样的小白 xff0c 如果有不对的地方欢迎指正 这里的远程访问是指在局域网外通过网络访问局域网 xff0
  • 组网必看,有线 MESH 全攻略。

    之前写过几篇关于 MESH 组网的文章 xff0c 主要讲解了如何布线 xff0c 路由器和光猫 交换机等设备应该怎样连接 xff0c 但通过大家的反馈我发现我漏掉了一个重点 xff0c 就是光猫和路由器应该如何设置 xff0c 这也是很多
  • 给 iOS 装上旧版 APP,十年前的 iPad mini 重获新生!

    不知道有没有人像我一样 xff0c 还留着五年前 十年前的老 iPad 老 iPhone xff0c 如果有 xff0c 你们一定知道有些老 iPad 老 iPhone 已经停在一个系统版本无法再继续升级了 xff0c 或者因为害怕升级变卡
  • Stable Diffusion WebUI 1.4「gradio」报错解决方案

    今天有很多朋友在运行 Stable Diffusion WebUI 1 4 时都遇到了 ModuleNotFoundError No module named 39 gradio 39 这个报错 xff0c 在这里给大家一个解决方案 xff
  • 如何在 macOS 使用 AList + RCLONE 把网盘挂载到本地

    之前接触最多的可能还是百度网盘 xff0c 它的免费容量比较大 xff0c 我们在下载和分享一些文件的时候经常会用到 xff0c 但是如果文件比较大 xff0c 加上限速 xff0c 使用体验并不算太好 其实除了下载文件 xff0c 我很少
  • jdk 安卓sdk 安装

    https www cnblogs com gufengchen p 11038029 html jdk sdk安装详细步骤 https www jianshu com p 8fb367a51b9f utm campaign 61 haru
  • 通过 Plex + Trakt 同步观看状态和评分,轻松记录你的追剧观影史

    喜欢看电影 追剧 追综艺的朋友想必都有做记录的习惯 xff0c Plex 的用户里用豆瓣的人估计不少 xff0c 使用豆瓣标记电影 写影评 短评和参与线上讨论是非常方便的 xff0c 但是豆瓣对电视剧的支持相对还是比较弱 xff0c 很多剧
  • macOS 如何设置 AList、RCLONE、xTeVe 开机启动后台运行

    之前和大家分享了 macOS 上 AList RCLONE xTeVe 的使用教程 xff0c 他们基本上都是通过终端命令或者 Unix 可执行文件运行的 xff0c 启动后需要保持运行状态才能持续提供服务 xff0c 今天分享一下如何让它
  • zynqmp zcu102 SD卡驱动调试

    新板卡使用sdhci0 xff0c 以前是sdhci1 xff0c 由于官方没有使用sdhci0所以需要手动添加设备树 xff1a amp sdhci0 clock frequency 61 lt 60000000 gt status 61
  • zynqmp zcu102 arm linux (uboot网卡输出调试信息)

    需求 xff1a 使用网卡输出自检 调试信息 由于uboot启动完成就退出运行 xff0c 进入Linux启动 xff0c 不是进入消息循环处理网络协议栈 xff0c 且没有现成的udp接口发送数据 xff0c 所以想在启动中输出调试信息调
  • libiec61850-1.4 库的使用和修改(goose)

    目的 xff1a 使用libiec61850 1 4 库接收和发送goose数据 xff0c 环境Ubuntu 18 04 4 LTS 问题 xff1a 使用libiec61850 1 4 examples goose publisher例
  • zynqmp zcu102 arm 裸机SD卡驱动

    1 加载PL端提供的 HDF 2 创建hello world例程 xff08 bsp xff09 3 在main函数中调用驱动初始化sd卡 void mmc test void s32 Status XSdPs InstancePtr XS
  • ubuntu / 麒麟 播放PCM音频文件

    ubuntu18 04 麒麟 播放PCM音频文件 xff0c 源码来源于网友文章再修改 xff0c 仅测试用 xff01 如果应用在产品上需要再优化 最简单的SDL2播放音频的例子 xff08 SDL2播放PCM xff09 Simples
  • QT中关于close()系统调用 和qt close()冲突

    参考 xff1a 点击打开链接 xff08 http bytes com topic c answers 856501 use close int unistd h qt xff09
  • 解决QScrollArea不能出现滚动条的问题

    转载 xff1a QScrollArea实在是一个非常强大的控件 xff0c 节省了很多重复工作 但如果使用Qt Creator中的ui designer来制作界面的话 xff0c 就会出现滚动条无法出现的问题 而在 C 43 43 GUI
  • QT子窗口全屏显示与还原问题

    子窗口全屏显示 vws gt setWindowFlags Qt Dialog vws gt showFullScreen 之后窗口还原时调用 this gt showNormal 对顶级窗口有效 this gt setWindowFlag
  • 设置系统屏幕关闭及系统休眠时间

    include lt Powrprof h gt pragma comment lib 34 PowrProf lib 34 DWORD lockTime 61 0 void SetPowerPolicy SYSTEM POWER POLI

随机推荐

  • 如何编译和运行C++程序

    如何编译和运行C 43 43 程序 C 43 43 和C语言类似 xff0c 也要经过编译和链接后才能运行 我们在C语言课程的时候 xff0c 讲了如何使用 VS VC 6 0 VC 43 43 2010等常见开发工具 xff0c 它们除了
  • 简单理解socket(AF_INET&SOCK_STREAM,SOCK_DGRAM)

    套接字 在任何类型的通信开始之前 xff0c 网络应用程序都必须创建套接字 套接字最初是为同一主机上的应用程序所创建 xff0c 使得主机上运行的一个程序 xff08 又名一个进程 xff09 与另一个运行的程序进行通信 这就是所谓的进程间
  • 为什么编程语言中需要堆和栈

    概述 在我们学习 C C 43 43 和 Java 等编程语言的时候经常要学习一个概念就是堆和栈 xff0c 对于大部分经验丰富的工程师来说 xff0c 堆和栈是再熟悉不过的东西了 xff0c 堆和栈都是存储程序运行时变量的地方 但这个时候
  • GT1050 PointPillar成功运行

    目的 之前在感知这里主要是考传统的算法 xff0c 但是遇到了瓶颈 xff0c 计算效率提不上来 xff0c 所以尝试一下其他的方法 目前看到pointpillar这种方法效果比较好 xff0c 就打算尝试一下 跑通测试一下效果 piont
  • 使用离线数据测试apollo7.0

    https zhuanlan zhihu com p 510712104 cd apollo 视觉测试 xff1a 1 启动dreamview 并选择车辆和地图 scripts bootstrap sh 2 启动transform模块 cy
  • 相机、激光雷达坐标系相互转换

    目录 读入外参和摄像头内参配置文件读入TF读入 激光雷达坐标系转到摄像头坐标系摄像头坐标系转到激光雷达坐标系 读入外参和摄像头内参 配置文件读入 std span class token double colon punctuation s
  • C++ thread的方式

    多线程的实现方式 xff0c 只做记录 xff0c 自己看 目录 第一种 在类中实现多线程第二种 在类外第三种 没有类第四种 pthread 定时触发总结附录 第一种 在类中实现多线程 新建thread对象 xff0c 传入类的成员函数名称
  • zynq 在ubuntu下移植ubuntu操作系统

    米联客的配套的文件是osrc lab 1 配置路径 在setting64 sh中把路径给更改一下 这里就是 改成ubuntu 并运行surce settings64 sh 2 rootfs 执行脚本 cfg rootfs sh 然后make
  • zynq 维修调试记录 客服支持 工作记录

    米联的板子用底板供电 xff0c 用JTAG往里面下程序 的时候也出现了如下问题 xff1a 跟客服进行沟通 xff0c 客服的回答是 xff1a 一般是两种可能 xff0c 一个是开发板坏了 xff0c 进行如下操作 xff0c 操作的程
  • ubuntu 16.04 安装apollo3.0(发布版)

    参考官网文档 xff1a https github com ApolloAuto apollo tree master docs https github com ApolloAuto apollo blob master docs how
  • 关于malloc返回地址无法访问

    正常情况下使用malloc申请内存 xff0c 要么是申请成功返回有效地址 xff0c 要么是内存申请失败 xff08 内存不足 xff09 返回NULL 如果出现返回了地址却无法访问的情况 xff0c 很有可能是前面代码访问内存时出现了越
  • docker里面安装Qt Creator

    sudo apt get install qt5 default qtcreator
  • 软连接ln -s 创建以及删除

    在 usr local 创建软连接 链接到 usr local include test dst文件夹 phe 64 phe usr local sudo ln s usr local include test dst test sourc
  • CAN报文:数据帧详解

    CAN报文 xff1a 数据帧详解 CAN报文CAN帧类型数据帧帧起始 Start Of Frame 仲裁段控制段数据段CRC段ACK段帧结束 End Of Frame CAN报文 CAN使用的是两条差分信号线 xff0c 只能表达一个信号
  • I2C总线和SPI总线

    I2C串行总线一般有两根信号线 xff0c 一根是双向的数据线SDA xff0c 另一根是时钟线SCL I2C协议 2条双向串行线 xff0c 一条数据线SDA xff0c 一条时钟线SCL SDA传输数据是 大端传输 xff08 字节高位
  • APM飞控学习之路:2 四旋翼的工作原理与系统组成

    一叶障目 xff0c 不见泰山 在研究四旋翼飞行器之前 xff0c 有必要从整体介绍其工作原理 主要部件 技术名词等基础知识 不然就像羊入虎口 xff0c 陷入一大堆不同层次的资料 xff0c 难觅出口 接下我就抛砖引玉 xff0c 尽自己
  • APM飞控学习之路:4 源码裁剪与下载

    月盈则亏 xff0c 水满则溢 当博主编译完成 xff0c 以为离成功更近一步准备下载的时候 xff0c 殊不知陷阱也早已准备好 xff0c 等待我的踏入 连上USB线 xff0c 下载 xff0c timeout xff0c timeou
  • 详解STM32CubeIDE 中 HAL库的串口中断接收函数 HAL_UART_Receive_IT

    MX串口配置方法见 xff1a CubeIDE 利用自带HAL库 串口收发 一 代码自动生成以后的项目及代码结构 xff1a main c中 xff0c 调用了串口初始化 串口初始化函数赋值了串口的参数 相当于底层的初始化 xff0c 配置
  • RTK-Real Time kinematic实时动态

    目前 xff0c GNSSj接收机约99 的时间都用作RTK模式进行测量 xff0c 只有1 的时间用作静态测量做控制网等 所以 xff0c 大部分人都习惯把GNSS接收机喊成RTK了 不过除去GNSS接收机 xff0c 你知道RTK是什么
  • USB-PD3.0(Power Delivery)充电协议

    USB PD xff08 Power Delivery xff09 是基于USB Type C的一种电源供电标准 xff0c 最大供电功率可达100瓦 xff08 W xff09 xff1b 随着USB Type C的普及 xff0c 越来