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

RF高速电路的电源走线方式

作者:Roger Bremer;Tracey Chavers;Zhongmin Yu
Maxim射频产品部
转自硬件十万个为什么公众号

  射频(RF)电路的电路板布局应在理解电路板结构、电源布线和接地的基本原则的基础上进行。本文探讨了相关的基本原则,并提供了一些实用的、经过验证的电源布线、电源旁路和接地技术,可有效提高 RF设计的性能指标。考虑到实际设计中PLL 杂散信号对于电源耦合、接地和滤波器元件的位置非常敏感,本文着重讨论了有关 PLL 杂散信号抑制的方法。为便于说明问题,本文以 MAX2827 802.11a/g收发器的 PCB布局作为参考设计。

  设计 RF电路时,电源电路的设计和电路板布局常常被留到了高频信号通路的设计完成之后。对于没有经过认真考虑的设计,电路周围的电源电压很容易产生错误的输出和噪声,这会进一步影响到 RF电路的性能。合理分配 PCB的板层、采用星型拓扑的 Vcc引线(如图1所示),并在 Vcc引脚加上适当的去耦电容,将有助于改善系统的性能,获得最佳指标。
在这里插入图片描述
                   图 1:星型拓扑的 Vcc布线

电源布线和旁路的基本原则

  明智的 PCB板层分配便于简化后续的布线处理,对于一个四层 PCB板(WLAN中常用的电路板),在大多数应用中用电路板的顶层放置元器件和 RF引线,第二层作为系统地,电源部分放置在第三层,任何信号线都可以分布在第四层。第二层采用连续的地平面布局对于建立阻抗受控的 RF信号通路非常必要,它还便于获得尽可能短的地环路,为第一层和第三层提供高度的电气隔离,使得两层之间的耦合最小。当然,也可以采用其它板层定义的方式(特别是在电路板具有不同的层数时),但上述结构是经过验证的一个成功范例。

  大面积的电源层能够使 Vcc布线变得轻松,但是,这种结构常常是引发系统性能恶化的导火索,在一个较大平面上把所有电源引线接在一起将无法避免引脚之间的噪声传输。反之,如果使用星型拓扑则会减轻不同电源引脚之间的耦合。图 1 给出了星型连接的 Vcc布线方案,该图取自 MAX2826 IEEE 802.11a/g 收发器的评估板。图中建立了一个主 Vcc节点,从该点引出不同分支的电源线,为 RF IC的电源引脚供电。每个电源引脚使用独立的引线在引脚之间提供了空间上的隔离,有利于减小它们之间的耦合。另外,每条引线还具有一定的寄生电感,这恰好是我们所希望的,它有助于滤除电源线上的高频噪声。

  使用星型拓扑 Vcc引线时,还有必要采取适当的电源去耦,而去耦电容存在一定的寄生电感。

  事实上,电容等效为一个串联的 RLC电路,电容在低频段起主导作用,但在自激振荡频率(SRF):
                        在这里插入图片描述

  大于fs频率之后,电容的阻抗将呈现出电感性。由此可见,电容器只是在频率接近或低于其SRF时才具有去耦作用,在这些频点电容表现为低阻。图 2给出了不同容值下的典型 S11参数,从这些曲线可以清楚地看到 SRF,还可以看出电容越大,在较低频率处所提供的去耦性能越好(所呈现的阻抗越低)。
在这里插入图片描述
                          图2 不同电容的阻抗曲线

  在 Vcc星型拓扑的主节点处最好放置一个大容量的电容器,如 2.2µF。该电容具有较低的 SRF,对于消除低频噪声、建立稳定的直流电压很有效。IC 的每个电源引脚需要一个低容量的电容器(如 10nF),用来滤除可能耦合到电源线上的高频噪声。对于那些为噪声敏感电路供电的电源引脚,可能需要外接两个旁路电容。例如:用一个 10pF电容与一个 10nF电容并联提供旁路,可以提供更宽频率范围的去耦,尽量消除噪声对电源电压的影响。每个电源引脚都需要认真检验,以确定需要多大的去耦电容以及实际电路在哪些频点容易受到噪声的干扰。

  良好的电源去耦技术与严谨的 PCB布局、Vcc引线(星型拓扑)相结合,能够为任何 RF系统设计奠定稳固的基础。尽管实际设计中还会存在降低系统性能指标的其它因素,但是,拥有一个“无噪声”的电源是优化系统性能的基本要素。
                       在这里插入图片描述
                        图 3:过孔的电特性模型

接地和过孔设计

  地层的布局和引线同样是 WLAN 电路板设计的关键,它们会直接影响到电路板的寄生参数,存在降低系统性能的隐患。RF电路设计中没有唯一的接地方案,设计中可以通过几个途径达到满意的性能指标。可以将地平面或引线分为模拟信号地和数字信号地,还可以隔离大电流或功耗较大的电路。根据以往 WLAN评估板的设计经验,在四层板中使用单独的接地层可以获得较好的结果。凭借这些经验性的方法,用地层将 RF部分与其它电路隔离开,可以避免信号间的交叉干扰。如上所述,电路板的第二层通常作为地平面,第一层用于放置元件和 RF引线。

  接地层确定后,将所有的信号地以最短的路径连接到地层非常关键,通常用过孔将顶层的地线连接到地层,需要注意的是,过孔呈现为感性。图 3 所示为过孔精确的电气特性模型,其中 Lvia为过孔电感,Cvia 为过孔 PCB焊盘的寄生电容。如果采用这里所讨论的地线布局技术,可以忽略寄生电容。一个 1.6mm深、孔径为0.2mm的过孔具有大约 0.75nH的电感,在 2.5GHz/5.0GHz WLAN波段的等效电抗大约为 12Ω/24Ω。因此,一个接地过孔并不能够为 RF信号提供真正的接地,对于高品质的电路板设计,应该在 RF电路部分提供尽可能多的接地过孔,特别是对于通用的 IC封装中的裸露接地焊盘。不良的接地还会在接收前端或功率放大器部分产生有害的辐射,降低增益和噪声系数指标。还需注意的是,接地焊盘的不良焊接会引发同样的问题。除此之外,功率放大器的功耗也需要多个连接地层的过孔。

在这里插入图片描述
图 4. 以 MAX2827 参考设计板为例的 PLL滤波器元件布局

  滤除其它级电路的噪声、抑制本地产生的噪声,从而消除级与级之间通过电源线的交叉干扰,这是 Vcc去耦带来的好处。如果去耦电容使用了同一接地过孔,由于过孔与地之间的电感效应,这些连接点的过孔将会承载来自两个电源的全部 RF干扰,不仅丧失了去耦电容的功能,而且还为系统中的级间噪声耦合提供了另外一条通路。

  在本文的后面部分将会看到,PLL 的实现在系统设计中总是面临巨大挑战,要想获得满意的杂散特性必须有良好的地线布局。目前,IC 设计中将所有的 PLL 和VCO都集成到了芯片内部,大多数 PLL都利用数字电流电荷泵输出通过一个环路滤波器控制 VCO。通常,需要用二阶或三阶的 RC环路滤波器滤除电荷泵的数字脉冲电流,得到模拟控制电压。靠近电荷泵输出的两个电容必须直接与电荷泵电路的地连接。这样,可以隔离地回路的脉冲电流通路,尽量减小 LO中相应的杂散频率。第三个电容(对于三阶滤波器)应该直接与 VCO的地层连接,以避免控制电压随数字电流浮动。如果违背这些原则,将会导致相当大的杂散成分。图 4 所示为 PCB布线的一个范例,在接地焊盘上有许多接地过孔,允许每个Vcc去耦电容有其独立的接地过孔。方框内的电路是 PLL环路滤波器,第一个电容直接与 GND_CP相连,第二个电容(与一个 R串联)旋转 180度,返回到相同的GND_CP,第三个电容则与 GND_VCO相连。这种接地方案可以获得较高的系统性能。

  通过适当的电源和接地抑制 PLL 杂散信号满足 802.11a/b/g系统发送频谱模板的要求是设计过程中的一个难点,必须对线性指标和功耗进行平衡,并留出一定裕量,确保在维持足够的发射功率的前提下符合 IEEE和 FCC 规范。IEEE 802.11g系统在天线端所要求的典型输出功率为+15dBm,频率偏差 20MHz时为-28dBr。频带内相邻信道的功率抑制比(ACPR)是器件线性特性的函数,这在一定前提下、对于特定的应用是正确的。在发送通道优化 ACPR特性的大量工作是靠凭借经验对 Tx IC和 PA的偏置进行调节,并对 PA的输入级、输出级和中间级的匹配网络进行调谐实现的。

  然而,并非所有引发 ACPR的问题都归咎于器件的线性特性,一个很好的例证是:在经过一系列的调节、对功率放大器和 PA 驱动器(对 ACPR 起主要作用的两个因素)进行优化后,WLAN发送器的邻道特性还是无法达到预期的指标。这时,需要注意来自发送器锁相环中本振(LO)的杂散信号同样会使 ACPR性能变差。LO的杂散信号会与被调制的基带信号混频,混频后的成分将沿着预期的信号通道进行放大。这一混频效应只有在 PLL杂散成分高于一定门限时才会产生问题,低于一定门限时,ACPR将主要受 PA非线性的制约。当 Tx输出功率和频谱模板特性是“线性受限”时,我们需要对线性指标和输出功率进行平衡;如果 LO杂散特性成为制约 ACPR性能的主要因素时,我们所面临的将是“杂散受限”,需要在指定的POUT下将 PA 偏置在更高的工作点,减弱它对 ACPR的影响,这将消耗更大的电流,限制设计的灵活性。

  上述讨论提出了另外一个问题,即如何有效地将 PLL 杂散成分限制在一定的范围内,使其不对发射频谱产生影响。一旦发现了杂散成分,首先想到的方案就是将PLL 环路滤波器的带宽变窄,以便衰减杂散信号的幅度。这种方法在极少数的情况下是有效的,但它存在一些潜在问题。

     在这里插入图片描述
                        图 5:采用环路滤波器的效果

  图 5 给出了一种假设的情况,假设设计中采用了一个具有 20MHz相对频率的 N分频合成器,如果环路滤波器是二阶的,截止频率为 200kHz,滚降速率通常为40dB/decade,在 20MHz频点可以获得 80dB的衰减。如果参考杂散成分为-40dBc(假设可以导致有害的调制分量的电平),产生杂散的机制可能超出环路滤波器的作用范围(如果它是在滤波器之前产生的,其幅度可能非常大)。压缩环路滤波器的带宽将不会改善杂散特性,反而提高了 PLL 锁相时间,对系统产生明显的负面影响。

  经验证明,抑制 PLL 杂散最有效的途径应该是合理的接地、电源布局和去耦技术,本文讨论的布线原则是减小 PLL 杂散分量的良好设计开端。考虑到电荷泵中存在较大的电流变化,采用星型拓扑非常必要。如果没有足够的隔离,电流脉冲产生的噪声会耦合到 VCO 的电源,对 VCO频率进行调制,通常称为“VCO牵引”。

  通过电源线间的物理间隔和每个 Vcc引脚的去耦电容、合理放置接地过孔、引入一个串联的铁氧体元件(作为最后一个手段)等措施可以提高隔离度。上述措施并不需要全部用在每个设计中,适当采用每种方式都会有效降低杂散幅度。

       在这里插入图片描述
                       图 6:不合理的 VCC_VCO去耦测试结果

  图 6 提供了一个由于不合理的 VCO电源去耦方案所产生的结果,电源纹波表明正是电荷泵的开关效应导致电源线上的强干扰。值得庆幸的是,这种强干扰可以通过增加旁路电容得到有效抑制。另外,如果电源布线不合理,例如 VCO的电源引线恰好位于电荷泵电源的下面,可以在 VCO电源上观察到同样的噪声,所产生的杂散信号足以影响到 ACPR特性,即使加强去耦,测试结果也不会得到改善。这种情况下,需要考察一下 PCB布线,重新布置 VCO的电源引线,将有效改善杂散特性,达到规范所要求的指标。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-35430.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

Spring都没弄明白凭什么拿高薪?真香系列

正文 二叉树 由 n( n > 0)个有限节点组成一个具有层次关系的集合,看起来就像一个倒挂的树,因此称这样的数据结构为树。 一个节点的子节点个数叫做度,通俗的讲就是树叉的个数。树中最大的度叫做树的度&#xff0c…...

【DCTWVRP】遗传算法求解带容量+距离+时间窗的车辆路径规划问题【Matlab 1211期】

一、VRP简介 1 VRP基本原理 车辆路径规划问题(Vehicle Routing Problem,VRP)是运筹学里重要的研究问题之一。VRP关注有一个供货商与K个销售点的路径规划的情况,可以简述为:对一系列发货点和收货点,组织调用一定的车辆&#xff0c…...

一天一道ctf 第36天

[NPUCTF2020]ReadlezPHP 点进源码发现/time.php?source&#xff0c;访问一下得到 <?php #error_reporting(0); class HelloPhp {public $a;public $b;public function __construct(){$this->a "Y-m-d h:i:s";$this->b "date";}public functi…...

从空间角度研究类,类与类之间的关系

class A:address 西安def __init__(self,name):self.name namedef func(self):if self.name dsb:self.skins jlfdef func1(self):print(self.__dict__)A.aaa ysh# obj A(dsb) # 类外面可以给对象封装属性 # respons input(sbs) # if respons s: # obj.wepon AWM #…...

dockerfile的详细介绍

Dockerfile 关键字作用备注FROM指定父镜像指定dockerfile基于那个image构建MAINTAINER作者信息用来标明这个dockerfile谁写的LABEL标签用来标明dockerfile的标签 可以使用Label代替Maintainer 最终都是在docker image基本信息中可以查看RUN执行命令执行一段命令 默认是/bin/sh…...

nacos心跳

轮询 概括来说是服务端定时主动的去与要监控状态的客户端&#xff08;或者叫其他系统&#xff09;通信&#xff0c;询问当前的某种状态&#xff0c;客户端返回状态信息&#xff0c;客户端没有返回或返回错误、失效信息、则认为客户端已经宕机&#xff0c;然后服务端自己内部把这…...

408数据结构I 数据结构的基本概念

数据结构的基本概念 数据 数据是信息的载体&#xff0c;是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合&#xff0c;数据是计算机程序加工的原料。 数据元素 是数据的基本单位&#xff0c;通常作为一个整体进行考虑和处理。 数…...

C语言实现学生成绩管理系统(Easy图形界面)

我的小站——半生瓜のblog 代码文件下载链接——链接 学生成绩管理系统学生成绩管理系统效果图流程&注意要点代码实现学生成绩管理系统 效果图 流程&注意要点 核心部分——EasyX显示图形界面&#xff0c;结构体数组和文件操作负责对数据进行各种操作。只要一进去程序…...

Unity常见合批失败

测试的时候注意两点&#xff1a; 1 运行起来编辑器在看结果 2 多用framedebuger 3 framedebuger观测结果时主要注意Shadows.RenderShadowMap中的Shadows.RenderJobDir和RenderForward.RenderLoopJob。可以看出来合批主要是在这两个函数中实现作用&#xff0c;分别是描画阴影…...

PHP_JavaScript高级编程(2)

二、今日目标 1、理解什么是面向对象&#xff08;编程&#xff09; 2、掌握定义对象的多种方式&#xff0c;并知道各种方式的优缺点 3、掌握什么是原型对象&#xff08;难点&#xff09; 4、理解原型链的概念&#xff08;或原型链的查找方式&#xff09; 5、掌握什么是回调…...

C++类的讲解(一)(超详细)

C类的讲解 1、面向对象和类的介绍 1&#xff09;面向对象 C语言使用面向过程的编程方式&#xff0c;而C则增加了面向对象的编程方式。 面向过程&#xff1a;分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候一个一个依次调用就…...

delphi:临界区对象TCriticalSection(Delphi) 与 TRtlCriticalSection 的区别

临界区对象TCriticalSection(Delphi) 与 TRtlCriticalSection 的区别 TRtlCriticalSection 是一个结构体&#xff0c;在windows单元中定义&#xff1b; 是InitializeCriticalSection&#xff0c;EnterCriticalSection&#xff0c;LeaveCriticalSection, DeleteCriticalSection…...

Linux使用命令行工具管理用户和组

文章目录一、管理用户账户1.查看用户账户2.添加用户账户3.管理用户账户密码4.修改用户账户5.删除用户账户二、管理组账户1.创建组账户2.修改组账户3.删除组账户4.管理组成员一、管理用户账户 1.查看用户账户 Linux没有直接查看用户列表的命令&#xff0c;但是可以查看用户配置…...

C语言 指针声明和定义 - C语言零基础入门教程

目录 一.指针简介 1.内存2.内存地址3.指针声明 二.指针类型三.声明并初始化一个指针 1.声明指针并直接初始化 – 推荐2.先声明指针在初始化 – 不推荐 四.查看指针地址和指针的值五.NULL 指针 – 空指针六.重点总结七.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >&g…...

直面秋招!花了6个月肝完阿里技术官的笔记

2. ZooKeeper 介绍 2.1. ZooKeeper 由来 正式介绍 ZooKeeper 之前&#xff0c;我们先来看看 ZooKeeper 的由来&#xff0c;还挺有意思的。 下面这段内容摘自《从 Paxos 到 ZooKeeper 》第四章第一节&#xff0c;推荐大家阅读一下&#xff1a; ZooKeeper 最早起源于雅虎研究院…...

大数据技术hadoop核心Flume

大家好&#xff0c;我是曜耀。 这几天曜耀开始复习一下自己的专业课&#xff0c;相信看过的都了解&#xff0c;就是当前热门的大数据技术与应用。我对于这门专业来说&#xff0c;一个特色就是都会&#xff0c;你说Linux我懂&#xff0c;你说java这是基操&#xff0c;python不好…...

K-means笔记

K-means算法 算法过程&#xff1a; 从N个样本数据中随机选取K个对象作为初始的聚类中心。分别计算每个样本到这各个聚类中心的距离&#xff0c;并将对象归于距离最短的聚类群中。所有样本计算完后&#xff0c;重新计算K个聚类中心。与前一次计算得到得聚类中心比较。如果聚类中…...

为什么淘宝搜索宝贝排名先后不一样,原理是什么?

为什么淘宝搜索宝贝排名先后不一样&#xff0c;原理是什么&#xff1f;  商品在淘宝搜索的排名前后是决定商品的展示多少的&#xff0c;当买家搜索了商品的相关关键词之后&#xff0c;就可以根据综合、价格、信用和价格四个不同的方式来进行排序&#xff0c;不同排序的情况下商…...

2021制造业数字化案例大会暨探营海尔数字化创新”在青岛盛大开幕

5月29日&#xff0c;“2021制造业数字化案例大会暨探营海尔数字化创新”活动在青岛成功举办。本次活动由由数字产业创新研究中心主办&#xff0c;锦囊专家、首席数字官、承办&#xff0c;海尔集团、山东省CIO联盟、青岛CIO联盟协办&#xff0c;邀请海尔集团的多位数字化高管和十…...

2021暑假每日一题 【week2 完结】

目录3763. 数字矩阵 【难度: 一般 / 知识点: 思维】3764. 三元数异或 【难度: 一般 / 知识点: 思维 贪心】3767. 最小的值 【难度: 一般 / 思维: 贪心 枚举】3768. 字符串删减【难度: 简单 / 知识点: 模拟】3769. 移动石子 【难度: 简单 / 知识点: 贪心】3763. 数字矩阵 【难度…...

取消b站充电鸣谢!!!

按下F12在控制台输入&#xff1a; $(video)[0].onended()>{$(.bilibili-player-video-btn-next).click()}...

模拟电路笔记

Chapter 4 diodes Ideal Diode two modes on and offmode 1 reverse bias open cktmode 2 forward bias short cktshould be desing to limitcurrent flow & voltage across Rctifier ckt concert AC waves inot DC Assumed States Method Assume the diodes to...

2006年

Text 1 In spite of “endless talk of difference,” American society is an amazing machine for homogenizing people. There is “the democratizing uniformity of dress and discourse, and the casualness and absence of deference” characteristic of popular cultu…...

堆排序习题

写出下列关键字序列排序的结果&#xff1a;{15&#xff0c;21&#xff0c;6&#xff0c;30&#xff0c;23&#xff0c;6&#xff0c;20&#xff0c;17} 步骤&#xff1a;先对序列进行堆排队&#xff0c;之后将顶部元素与最后一个元素相交换&#xff0c;交换时候重新对剩下的再…...

安装activemq或者tomcat等启动时报错

问题描述&#xff1a; 在编写shell脚本安装mq和tomcat的时候&#xff0c;到了启动那一步出现了报错。报错内容如下&#xff1a; INFO: Loading ‘/opt/apache-activemq-5.13.2//bin/env’ ERROR: Configuration variable JAVA_HOME or JAVACMD is not defined correctly. …...

linux之粘贴代码或者注释时,被强制都改为注释的解决办法

linux之粘贴代码或者注释时&#xff0c;被强制都改为注释的解决办法 直接通过vim打开脚本&#xff0c;然后粘贴进去后&#xff0c;发现&#xff0c;内容全部乱序&#xff0c;如有注释也会被之后改成注释&#xff0c;故此可通过以下方法&#xff1a; sudo cat > /tmp/test.…...

CSUSTOJ 搬砖(状压dp)

题目链接 emmm显然的状压dp 我们定义dp[状态][j] 表示该状态下以j为终点的最短时间 先把存图floyd一下&#xff0c;然后开始状压dp处理。 对于K个任务&#xff0c;只需要记录每个经过的点的二进制位就OK&#xff0c;把任务合成一个带有1号起点的状态&#xff0c;查询输出该状态…...

Gerrit简单介绍

什么是Gerrit&#xff1f; Gerrit是一个web代码评审工具&#xff0c;它基于git版本控制系统。Gerrit旨在提供一个轻量级框架&#xff0c;用于在代码入库之前对每个提交进行审阅。‎Gerrit会记录每一次提交的代码修改&#xff0c;但只有它们被审阅和接收后才能合入成为项目的一部…...

Mysql online DDL 线上无锁添加索引

只能通过ALTER TABLE不能create index ALTER TABLE tbl_name ADD PRIMARY KEY (column), ALGORITHMINPLACE, LOCKNONE; 参数说明&#xff1a; ALGORITHMINPLACE 更优秀的解决方案&#xff0c;在当前表加索引&#xff0c;步骤&#xff1a; 1.创建索引(二级索引)数据字典 2.加…...

C语言 指针声明和定义 - C语言零基础入门教程

目录 一.指针简介 1.内存2.内存地址3.指针声明 二.指针类型三.声明并初始化一个指针 1.声明指针并直接初始化 – 推荐2.先声明指针在初始化 – 不推荐 四.查看指针地址和指针的值五.NULL 指针 – 空指针六.重点总结七.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 >&g…...

dbc2000 注册机|dbc2000 注册码注册机下载

点击下载来源&#xff1a;dbc2000 注册机 dbc2000 注册机是同名源程序软件的注册机软件&#xff0c;该源程序软件是一款应用于数据库搭建以及数据写入的数据库架设工具&#xff0c;它拥有强大的数据写入功能&#xff0c;在作为应用程序使用时&#xff0c;它不仅可以充当数据属性…...

秋招面经第八弹:网易二面-数据开发工程师

秋招第八弹&#xff1a;网易二面-数据开发工程师 写在最前&#xff1a;秋招以来一直在冲&#xff0c;因为事情比较多&#xff0c;对于笔试面试一直没有复盘&#xff0c;现在靠仅存的记忆把面试的一些问题记录下来&#xff0c;尽可能记录出能回忆到的问题&#xff0c;但可能记的…...

安卓课程格子APP

https://download.csdn.net/download/weixin_57836618/73810452 功能演示&#xff1a; 查看所有课程 点击主页面空白处即可添加课程 添加课程之后查看课程 查看双周课程 查看单周课程 6.查看课程详情...

强化学习——格子世界

强化学习——格子世界 项目源码地址&#xff1a;https://gitee.com/infiniteStars/machine-learning-experiment 1. 实验内容 2. 实验代码 import numpy as np import matplotlib.pyplot as plt from matplotlib.table import Table from xml.dom.minidom import Document #手…...

华为机试 - 跳格子游戏

目录 题目描述 输入描述 输出描述 用例 题目解析 算法源码 题目描述 地上共有N个格子&#xff0c;你需要跳完地上所有的格子&#xff0c;但是格子间是有强依赖关系的&#xff0c;跳完前一个格子后&#xff0c;后续的格子才会被开启&#xff0c;格子间的依赖关系由多组st…...

php 爬课程表信息,Ruby爬取教务系统生成课程表

我为什么要虐自己最近觉得课程格子广告越来越多&#xff0c;乱七八糟的东西越来越多&#xff0c;完全失去了一开始的存在价值&#xff0c;并且没有电脑端app&#xff0c;想查看课程必须拿出手机&#xff0c;而我使用电脑频率要比手机高&#xff0c;所以才有了折腾的动力。于是我…...

android 课程表 ui,UICollectionViewLayout实现课程表布局

因为项目中有课程表的相关模块&#xff0c;第一时间想到用UICollectionView。然而后期的需求越来越复杂&#xff0c;每个格子需要展示的内容越来越多&#xff0c;所以不得不寻找合适的解决方案。最后发现自定义UICollectionViewLayout可以实现我的需求。先放效果图&#xff1a;…...

Android自定义View课程表,Android 自定义View课程表表格

自己闲下来时间写的一个课表控件使用的自定义LinearLayout 里面View都是用代码实现的 最终效果如下图 写的可能有问题希望多多指点创建一个自定义LinearLayout 控件用来装载课程的信息和课程的周数 和节数大概的布局三这样的根据上面的看来觉得总体布局我分了两个 上面的星期是…...

java课程设计设计_java课程设计

1. 团队课程设计博客链接https://www.cnblogs.com/choco1ate/p/12172223.html2.本组课题及本人任务本组课题&#xff1a;泡泡堂(炸弹人)游戏本人任务&#xff1a;Box类(游戏地图中的每个方格)Bomb类(游戏过程中的)游戏玩家输赢信息的文件储存3.需求分析Box类&#xff1a;该类为…...

《课程格子》的一个笔试题目

题目如下&#xff0c;感觉很适合喜欢琢磨的程序员&#xff0c;也是考验你编码风格的时候。 Lets make a tower defense game&#xff08;塔防游戏):1. You have 1 tower, with H health and D dps(damage per second).2. There are n attackers, each with h_i health and d_i …...

Android仿照超级课程表 or 课程格子 一键提取课表功能(方正系统)

参考文章http://blog.csdn.net/sbsujjbcy ,本文仿照‘ 安卓弟 提供的android 项目实战——打造超级课程表一键提取课表功能文章&#xff0c;对他的代码进行了修改和补充&#xff0c;为什么要修改呢&#xff1f;原因是安卓弟的那个源码版本过于老旧&#xff0c;很多方法已经过…...

这里有 9 本 AI 书籍

人工智能薪资高、人才缺口大&#xff0c;2021年AI岗的增长率预计达344%&#xff0c;平均月薪14K&#xff0c;现在入行AI也不算晚。但是&#xff0c;往往我们在自学AI的时候&#xff0c;常常会遇到一些问题&#xff1a; 网上资料太多&#xff0c;不知如何取舍&#xff1f; 初学不…...

人工智能还能撑多久?

作为AI 初学者来说&#xff0c;最大的问题就是&#xff1a;资料太多&#xff01;&#xff01;&#xff01;看不完&#xff01;&#xff01;&#xff01;不知道如何取舍&#xff01;&#xff01;&#xff01;人的精力有限&#xff01;&#xff01;&#xff01;大部分想转行AI算法…...

全流程DevOps工具链汇总(全)

工具不在多&#xff0c;而在精。 图片来自:copyrigthdevops标准工作组...

DevOps教程:DevOps 工具

【注】本文译自&#xff1a;https://www.javatpoint.com/devops-tools   以下是一些最受欢迎的DevOps工具&#xff0c;其简要说明如下图所示&#xff0c;例如&#xff1a; 1&#xff09;Puppet Puppet 是使用最广泛的 DevOps 工具。允许快速、频繁地交付和发布技术更改。具…...

devops入门之-工具展示开篇 devops工具链

实现DevOps需要什么&#xff1f; 硬性要求&#xff1a;工具上的准备 上文提到了工具链的打通&#xff0c;那么工具自然就需要做好准备。现将工具类型及对应的不完全列举整理如下&#xff1a; 代码管理&#xff08;SCM&#xff09;&#xff1a;GitHub、GitLab、BitBucket、Su…...

整理了一份史上最全的DevOps 工具链

2018-02-07 朱少民 软件质量报道 在列出DevOps 工具链之前&#xff0c;介绍一下什么是DevOps&#xff0c;虽然DevOps这个概念现在还没有标准的定义&#xff0c;但我们可以追溯一下其过去九年的历史发展过程&#xff08;从2009年&#xff5e;2017年&#xff09;&#xff0c;列出…...

【java】30 种最佳 DevOps 工具和技术:什么是 DevOps 工具?(2021年名单)

本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载。 文章目录 1.概述2.QuerySurge2)基础技术3)壮胆4)系统管理包5)补丁管理器6) 5 个基本 IT 工具7) Jenkins8) 流浪9) 寻呼机:10)普罗米修斯:12) 鼻息:13)Splunk:14) 纳吉欧斯15)厨师:…...

DevOps工具链学习——相关工具知多少

转载至&#xff1a;https://blog.csdn.net/nklinsirui/article/details/80510535#版本控制 刚刚接触DevOps&#xff0c;作为开发人员&#xff0c;我要做的自然是将DevOps中涉及的工具熟悉起来&#xff0c;其中的开发工具更是要熟练运用&#xff0c;要开发平台的话&#xff0c;那…...

开源 DevOps 工具,你值得拥有!

作为下一代架构的关键组成部分&#xff0c;DevOps 被越来越多的企业所应用。“DevOps” 是 “开发” 和 “运维” 两个词的组合。DevOps 实践鼓励应用程序开发团队 (Dev) 与其 IT 运营团队 (Ops) 对应方之间更顺畅、持续地沟通、协作、集成&#xff0c;提高可见性和透明度。在实…...