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

X和Ku波段小尺寸无线电设计

卫星通信、雷达和信号情报(SIGINT)领域的许多航空航天和防务电子系统早就要求使用一部分或全部X和Ku频段。随着这些应用转向更加便携的平台,如无人机(UAV)和手持式无线电等,开发在X和Ku波段工作,同时仍然保持极高性能水平的新型小尺寸、低功耗无线电设计变得至关重要。本文介绍一种新型高中频架构,其显著削减了接收机和发射机的尺寸、重量、功耗与成本,而系统规格不受影响。由此产生的平台与现有无线电设计相比,模块化程度、灵活性和软件定义程度也更高。

简介

近年来,推动RF系统实现更宽带宽、更高性能、更低功耗,同时提高频率范围并缩小尺寸的力量越来越强大。这一趋势已成为技术进步的驱动力,RF器件的集成度远超以往所见。有许多因素在推动这一趋势。

卫星通信系统为了发送和接收每天收集到的数TB数据,对数据速率的要求已达到4 Gbps。这一要求推动系统的工作频率提高到Ku和Ka波段,原因是在这些频率上更容易实现更宽的带宽和更高的数据速率。这势必导致通道密度更高,每通道的带宽更宽。

在信号情报领域,性能要求也在不断提高。此类系统的扫描速率越来越高,故而要求系统具有快速调谐PLL和宽带宽覆盖范围。对尺寸更小、重量更轻、功耗更低(SWaP)和集成度更高系统的需求,源于业界希望在现场操作手持式设备,以及希望提高大型固定位置系统的通道密度。

相控阵的发展同样得益于单芯片RF系统集成度的提高。集成让收发器越来越小,使得每个天线元件都可以有自己的收发器,进而促使模拟波束赋形向数字波束赋形转变。通过数字波束赋形,单一阵列可以同时追踪多个波束。相控阵系统应用广泛,包括天气雷达和定向通信等。由于低频信号环境变得越来越拥堵,许多应用不可避免地要求提高频率。

本文介绍如何利用一种高度集成的架构来应对上述挑战,该架构将AD9371收发器用作中频接收机和发射机,使得整个中频级及其相关器件都可以从系统中移除。文中比较了传统系统与提议的架构,并举例说明了如何通过典型设计流程来实现此架构。具体说来,使用集成收发器可以实现一些高级频率规划,这是标准超外差样式收发器做不到的。

超外差架构概述

超外差架构由于能实现很高的性能而成为多年来的首选架构。超外差接收机架构通常包括一个或两个混频级,混频级馈入模数转换器(ADC)。典型超外差收发器架构如图1所示。

图1. 传统X和Ku波段超外差接收和发射信号链

第一转换级将输入RF频率上变频或下变频至带外频谱。第一IF(中频)的频率取决于频率和杂散规划、混频器性能以及RF前端使用的滤波器。然后,第一IF向下转换为ADC可以数字化的较低频率。虽然ADC在处理更高带宽的能力上取得了巨大进步,但为达到最优性能,其频率上限目前是2 GHz左右。输入频率更高时,必须考虑性能损失,而且更高输入频率要求更高时钟速率,这会导致功耗上升。

除混频器外,还有滤波器、放大器和步进衰减器。滤波用于抑制不需要的带外(OOB)信号。若不加抑制,这些信号会在目标信号上产生杂散,使目标信号很难或无法进行解调。放大器设置系统的噪声系数和增益,提供足够高的灵敏度以接收小信号,同时又不是太高以至于ADC过度饱和。

还有一点需要注意,此架构常常需要使用表面声波(SAW)滤波器以满足ADC严格的抗混叠滤波器要求。SAW滤波器会提供急剧滚降性能以满足这些要求,但同时也会带来明显的延迟和纹波。

图2所示为一个X波段超外差接收机频率规划示例。该接收机希望接收8 GHz和12 GHz之间的信号,带宽为200 MHz。目标频谱与可调谐本振(LO)混频,产生5.4 GHz IF。然后,5.4 GHz IF与5 GHz LO混频以产生最终的400 MHz IF。最终IF范围是300 MHz至500 MHz,这是很多ADC能够发挥良好性能的频率范围。

图2. X波段接收机频率规划示例

接收机的重要特性

除了熟知的增益、噪声系数和三阶交调截点特性以外,影响接收机架构频率规划的其他典型特性包括镜像抑制、IF抑制、自发杂散和LO辐射。

· 镜像杂散—目标频段之外的RF,其与LO混频产生IF的干扰。 · IF杂散—IF频率的信号,其通过混频器之前的滤波潜入,显示为IF干扰。 · LO辐射—来自LO的RF泄漏到接收机链的输入连接器。LO辐射是可以检测到的,即使在仅接收的工作模式下也能检测(参见图3)。

图3. LO辐射泄漏通过前端返回

· 自发杂散—接收机内部的时钟或本振混频导致的IF杂散。

镜像抑制特性同时适用于第一和第二混频级。在X和Ku波段的典型应用中,第一混频级的中心频率可以是5 GHz到10 GHz范围的高IF。这里需要高IF,原因是镜像频率为Ftune + 2 ×IF,如图4所示。IF越高,镜像频段离得越远。此镜像频段必须在其到达第一混频器之前加以抑制,否则此范围内的带外能量会表现为第一IF中的杂散。这是通常使用两个混频级的主要原因之一。如果只有一个混频器,并且IF为数百MHz,那么将很难在接收机前端中抑制镜像频率。

图4. 混频进入IF的镜像

将第一IF下变频至第二IF时,第二混频器也存在一个镜像频段。第二IF的频率较低(几百MHz到2 GHz),故第一IF滤波器的滤波要求可能视情况而不同。对于第二IF为几百MHz的典型应用,高频第一IF的滤波可能非常困难,需要很大的定制滤波器。这常常是系统中最难设计的滤波器,因为频率很高且抑制要求通常很窄。

除镜像抑制外,还必须有力地滤除从混频器返回接收输入连接器的LO功率水平。这样可确保无法因为辐射功率而检测到用户。为此,LO应远离RF通带,确保可以实现充分滤波。

高中频架构概述

最新集成收发器产品包括AD9371,它是一款300 MHz至6 GHz直接变频收发器,具有两个接收通道和两个发射通道。接收和发射带宽可在8 MHz至100 MHz范围内调整,工作模式可配置为频分双工(FDD)或时分双工(TDD)。该器件采用12 mm2 封装,TDD模式下功耗约为3 W,FDD模式下功耗约为5 W。由于正交纠错(QEC)校准的优势,它实现了75 dB到80 dB的镜像抑制性能。

图5. AD9371直接变频收发器功能框图

集成收发器IC的性能进步开启了新的可能性。AD9371集成了第二混频器、第二IF滤波和放大、可变衰减ADC以及信号链的数字滤波和抽取功能。在该架构中,AD9371(其调谐范围为300 MHz至6 GHz)可调谐到3 GHz和6 GHz之间的频率,直接接收第一IF(参见图6)。其增益为16 dB,NF为19 dB,5.5 GHz时的OIP3为40 dBm,故AD9371是非常理想的IF接收机。

​图6. X或Ku波段TRx,AD9371用作中频接收机

集成收发器用作IF接收机,便不再需要像超外差接收机那样担心通过第二混频器的镜像,这可以大大降低第一IF带的滤波需求。不过,为了消除收发器中的二阶效应,仍然需要一定的滤波。第一IF带现在应以两倍的第一IF频率提供滤波以消除此类效应,这比滤除第二镜像和第二LO要容易得多,它可能接近数百MHz。通常,利用低成本的小型LTCC滤波器成品即可满足此类滤波要求。

这种设计还使系统具有很高的灵活性,可针对不同应用而轻松加以重复使用。灵活性的表现之一是IF频率选择。IF选择的一般经验法则是让它比经过前端滤波的目标频谱带宽高1 GHz至2 GHz。例如,若设计师需要4 GHz频谱带宽(17 GHz至21 GHz)经过前端滤波器,则IF可以位于5 GHz频率(比目标带宽4 GHz高1GHz)。这有助于前端实现滤波。如果只需要2 GHz带宽,可以使用3 GHz的IF。此外,AD9371具有软件定义特性,很容易随时改变IF,所以特别适合需要避开阻塞信号的认知无线电应用。AD9371的带宽也可以在8 MHz至100 MHz范围内轻松调整,有利于避免目标信号附近的干扰。

高中频架构的高集成度使得最终的接收机信号链所占空间只有等效超外差架构的50%左右,同时功耗降低30%。另外,高中频架构接收机比超外差架构更为灵活。这种架构是要求小尺寸、高性能的低SWaP市场的福音。

高中频架构接收机频率规划

高中频架构的优点之一是能够调谐IF。当试图创建一个能避开干扰杂散的频率规划时,这种能力特别有用。当接收到的信号在混频器中与LO混频并产生一个非IF频段内目标信号音的m ×n杂散时,就会引起干扰杂散。

混频器依据公式m ×RF ±n ×LO产生输出信号和杂散,其中m和n为整数。接收信号产生的m ×n杂散可能落在IF频段中;某些情况下,目标信号音会引起一个特定频率的交越杂散。

例如,若观测一个设计为接收12 GHz至16 GHz信号且IF为5.1 GHz的系统,如图7所示,则引起带内杂散的m ×n镜像频率可依据下式确定:

​图7. 12 GHz至16 GHz Rx Tx高中频架构

在此式中,RF为混频器输入端的RF频率,其导致一个信号音落在IF中。试举一例,假设接收机调谐到13 GHz,这意味着LO频率为18.1 GHz (5.1 GHz + 13 GHz)。将这些值代入上式,并允许m和n在0到3的范围内变动,则可得到如下RF公式:

结果如下表所示。

表1. 18.1 GHz LO的M ×N杂散表

m

n

RFsum (GHz)

RFdif (GHz)

1

1

23.2

13

1

2

41.3

31.1

1

3

59.4

49.2

2

1

11.6

6.5

2

2

20.65

15.55

2

3

29.7

24.6

3

1

7.733

4.333

3

2

13.767

10.367

3

3

19.8

16.4

表中的第一行(黄色亮显)显示所需的13 GHz信号,它是混频器中的1 ×1的结果。其他亮显单元显示可能有问题的带内频率,它们可能表现为带内杂散。例如,15.55 GHz信号在12 GHz到16 GHz的目标范围内。输入端一个15.55 GHz信号音与LO混频,产生一个5.1GHz信号音(18.1 ×2–15.55 ×2 = 5.1 GHz)。其他未亮显行也可能造成问题,但由于其在带外,可以通过输入带通滤波器滤除。

杂散水平取决于多个因素。主要因素是混频器的性能。混频器从根本上说是一个非线性器件,其内部会产生许多谐波。根据混频器内部二极管的匹配精度和混频器杂散性能的优化程度,可确定输出杂散水平。数据手册通常会提供一个混频器杂散图表,它可以帮助确定杂散水平。表2所示的例子是混频器HMC773ALC3B的杂散水平表。该表给出的是杂散相对于1 ×1目标信号音的dBc水平。

表2. HMC773ALC3B混频器杂散表

利用此杂散表并扩展表1中所做的分析,我们便可全面了解哪些m ×n镜像音可能会干扰接收机,以及其水平是多少。可以生成一个电子表格,其输出与图8所示相似。

​图8. 12 GHz至16 GHz Rx的m ×n镜像

此图中的蓝色部分表示所需带宽。线段表示不同的m ×n镜像及其水平。由此图很容易知道,混频器之前需要满足什么样的滤波要求才能消除干扰。本例中有多个镜像杂散落在带内,无法滤除。下面将说明如何利用高中频架构的灵活性来绕开其中的一些杂散,这是超外差架构做不到的。

接收模式下避开干扰

图9显示了一个类似频率规划,其范围是8 GHz到12 GHz,默认IF为5.1 GHz。此图是混频器杂散的另一种视图,显示了中心调谐频率与m ×n镜像频率的关系,而不是之前所示的杂散水平。此图中的1:1粗对角线表示期望的1 ×1杂散。图上的其他直线代表m ×n镜像。此图左侧代表IF调谐无灵活性的部分。这种情况下,IF固定在5.1 GHz。调谐频率为10.2 GHz时,2 ×1镜像杂散跨过目标信号。这意味着如果调谐到10.2 GHz,那么很有可能附近信号会阻塞目标信号的接收。右侧显示了通过灵活IF调谐解决这个问题的办法。这种情况下,在9.2 GHz附近时IF从5.1 GHz切换到4.1 GHz,从而防止交越杂散发生。

图9. 无IF灵活性时的m ×n交越杂散(上),利用IF调谐避开交越(下)

这只是一个说明高中频架构如何避开阻塞信号的简单例子。当结合智能算法来确定干扰并计算新的可能IF频率时,便有许多可行的方法来构建一种能够灵活适应任何频谱环境的接收机。这就像确定给定范围(通常是3 GHz到6 GHz)内的合适IF一样简单,然后根据该频率重新计算并设置LO。

高中频架构发射机频率规划

同接收频率规划一样,也可以利用高中频架构的灵活性来改善发射机的杂散性能。对接收机而言,频率成分有时是无法预测的。但对发射机而言,输出端的杂散更容易预测。此RF成分可利用下式来预测:

其中,IF通过AD9371调谐频率预先确定,LO通过所需输出频率确定。

像对待接收通道一样,发射侧也可以生成混频器图表。示例如图10所示。在此图中,最大杂散是镜像和LO频率,利用混频器之后的带通滤波器可将其降到所需水平。在FDD系统中,杂散输出可能会使邻近接收机降敏,带内杂散会带来问题,这种情况下IF调谐的灵活性便很有用。在图10所示例子中,如果使用5.1 GHz的静态IF,发射机输出端会存在一个接近15.2 GHz的交越杂散。通过将14 GHz调谐频率时的IF调整到4.3 GHz,便可避开该交越杂散,如图11所示。

​图10. 无滤波的输出杂散

​图11. 静态IF引起交越杂散(上),利用IF调谐避开交越杂散(下)

设计示例—宽带FDD系统

为了展示这种架构能够实现的性能,我们利用ADI公司成品器件构建了一个接收机和发射机FDD系统原型,其接收频段的工作频率范围配置为12 GHz至16 GHz,发射频率的工作频率范围为8 GHz至12 GHz。使用5.1 GHz的IF来收集性能数据。接收通道的LO范围设置为17.1 GHz至21.1 GHz,发射通道的LO范围设置为13.1 GHz至17.1 GHz。原型的功能框图如图12所示。在该图中,X和Ku变频器板显示在左侧,AD9371评估板显示在右侧。

​图12. X和Ku波段Rx Tx FDD原型系统功能框图

增益、噪声系数和IIP3数据在接收下变频器上收集,显示于图13(上)中。整体而言,增益约为20 dB,NF约为6 dB,IIP3约为–2dBm。利用均衡器可实现额外的增益调整,或者利用AD9371中的可变衰减器执行增益校准。

​图13. Ku波段Rx数据(上),X波段Tx数据(下)

同时也测量了发射上变频器,并记录其增益、P1dB和OIP3。此数据与频率的关系显示于图13(下)。增益约为27 dB,P1 dB约为22dBm,OIP3约为32 dBm。

当此板与集成收发器一起使用时,接收和发射的总体特性如表3所示。

表3. 系统总体性能表

​总的来说,接收机性能与超外差架构相当,而功耗大大降低。等效超外差设计的接收机链功耗会高于5 W。此外,原型板的建造并未以缩小尺寸为优先目标。利用适当的PCB布局技巧,并将AD9371集成到与下变频器相同的PCB上,采用这种架构的解决方案总尺寸可缩小到仅4到6平方英寸,显著小于需要近8到10平方英寸的等效超外差解决方案。此外,利用多芯片模块(MCM)或系统化封装(SiP)等技术可进一步缩小尺寸。这些先进技术可将尺寸缩小到2至3平方英寸。

结语

本文介绍了一种切实可行的架构——高中频架构,它可替代传统方法,大幅改进SWaP。文中简要说明了超外差架构以及接收机设计的重要规格。然后介绍高中频架构,并阐释其在滤波要求和集成度(可减少器件总数)方面的优势。我们详细说明了如何制定频率规划,以及如何利用可调谐IF来避开接收机上的干扰信号。在发射方面,其目标是降低输出杂散,我们提出了一种避开带内杂散的办法,以及预测所有可能存在的输出杂散产物的方法。

这种架构的实现得益于近年来集成式直接变频接收机的迅猛发展。随着AD9371的诞生,通过高级校准和高集成度可实现更高的性能。这种架构在未来的低SWaP市场会变得特别重要。

作者:

Brad Hall是ADI公司航空航天与防务部门(位于美国北卡罗来纳州格林斯博罗)的射频系统应用工程师,于2015年加入ADI公司。在此之前,他是信号情报系统的射频硬件设计工程师。他2006年毕业于马里兰大学,获电气工程学士学位。

Wyatt Taylor是ADI公司工业和仪器仪表部门(位于北卡罗莱纳州格林斯博罗)的一名RF工程师, 主要致力于集成式收发器和软件定义无线电(SDR)应用。之前,Wyatt曾是泰雷兹通信公司和Digital Receiver Technology Inc.的一名RF设计工程师。他于2005年和2006年分别获得了弗吉尼亚理工大学的电机工程学学士和硕士学位。Wyatt (WTaylor)是ADI公司免费的在线技术支持社区中文技术论坛的一名成员。

来源:X和Ku波段小尺寸无线电设计 - RFASK射频问问

关于RFASK射频问问

射频问问是在"微波射频网”系列原创技术专栏基础上升级打造的技术问答学习平台,主要围绕射频芯片、微波电路、天线、雷达、卫星等相关技术领域,致力于为无线通信、微波射频、天线、雷达等行业的工程师,提供优质、原创的技术问答、专栏文章、射频课程等学习内容。更多请访问:RFASK射频问问 - 射频技术研发服务平台 | 技术问答、专栏文章、射频课程

相关文章:

X和Ku波段小尺寸无线电设计

卫星通信、雷达和信号情报(SIGINT)领域的许多航空航天和防务电子系统早就要求使用一部分或全部X和Ku频段。随着这些应用转向更加便携的平台,如无人机(UAV)和手持式无线电等,开发在X和Ku波段工作,同时仍然保持极高性能水平的新型小尺寸、低功耗…...

推荐算法 - 汇总

本文主要对推荐算法整体知识点做汇总,做到总体的理解;深入理解需要再看专业的材料。推荐算法的意义推荐根据用户兴趣和行为特点,向用户推荐所需的信息或商品,帮助用户在海量信息中快速发现真正所需的商品,提高用户黏性…...

Android 系统的启动流程

前言:从开机的那一刻,到开机完成后launcher将所有应用进行图标展示的这个过程,大概会有哪一些操作?执行了哪些代码?作为Android开发工程师的我们,有必要好好的梳理一遍。既然要梳理Android系统的启动流程&a…...

自学5个月Java找到了9K的工作,我的方式值得大家借鉴 第二部分

我的学习心得,我认为能不能自学成功的要素有两点。 第一点就是自身的问题,虽然想要转行学习Java的人很多,但是非常强烈的想要转行学好的人是小部分。而大部分人只是抱着试试的心态来学习Java,这是完全不可能的。所以能不能学成Jav…...

Vue 3 第五章:reactive全家桶

文章目录1. reactive1.1. reactive函数创建一个响应式对象1.2. 修改reactive创建的响应式对象的属性2. readOnly2.1. 使用 readonly 函数创建一个只读的响应式对象2.2. 如何修改嵌套在只读响应式对象中的对象?3. shallowReactive3.1. 使用 shallowReactive 函数创建一个浅层响…...

【联机对战】微信小程序联机游戏开发流程详解

现有一个微信小程序叫中国象棋项目,棋盘类的单机游戏看着有缺少了什么,现在给补上了,加个联机对战的功能,增加了可玩性,对新手来说,实现联机游戏还是有难度的,那要怎么实现的呢,接下…...

优化基于axios接口管理的骚操作

优化基于axios接口管理的骚操作! 本文针对中大型的后台项目的接口模块优化,在不影响项目正常运行的前提下,增量更新。 强化功能 1.接口文件写法简化(接口模块半自动化生成) 2.任务调度、Loading调度(接口层…...

【Django功能开发】如何正确使用定时任务(启动、停止)

系列文章目录 【Django开发入门】ORM的增删改查和批量操作 【Django功能开发】编写自定义manage命令 文章目录系列文章目录前言一、django定时任务二、django-apscheduler基本使用1.安装django-apscheduler2.配置settings.py的INSTALLED_APPS3.通过命令生成定时记录表3.如何创…...

7个好用到爆的音频、配乐素材网站,BGM都在这里了

现在只要有一部手机,人人都能成为视频创作者。一个好的视频不能缺少的就是内容、配乐,越来越注重版权的当下,音效素材使用不当造成侵权的案例层出不穷。为了避免侵权,找素材让很多创作者很头疼。 今天我就整理了7个可以免费下载&…...

JUC(二)

1.可重入锁–ReentrantLock原理 1.1.非公平锁的实现原理 1.1.1.加锁解锁流程 1>.先从构造器开始看,默认为非公平锁,可以在构造函数中设置参数指定公平锁 public ReentrantLock() {sync = new NonfairSync(); }public ReentrantLock...

ATS认证教学

我用的版本是ATS7.11、系统版本是用最新的ios13.2.1 定义 ATS旨在分析通过UART、USB和蓝牙传输传输的iAP流量、通过USB和无线(蓝牙和Wi-Fi)传输的CarPlay流量、通过Wi-Fi传输的AirPlay 2流量以及闪电音频流量。 ATS是Apple’s Accessory Test System的…...

【操作系统】进程管理

进程与线程 1. 进程 进程是资源分配的基本单位 进程控制块 (Process Control Block, PCB) 描述进程的基本信息和运行状态,所谓的创建进程和撤销进程,都是指对 PCB 的操作。 下图显示了 4 个程序创建了 4 个进程,这 4 个进程可以并发地执行…...

一分钟掌握技术术语:API(接口)

很多产品经理在项目开发过程中经常听到:你调我这个接口就好了;这个功能你写个接口给我;有什么不懂的就看下API接口文档。 开发经常说的接口是什么意思呢?术语解释:API(Application Programming Interface&…...

RabbitMQ之交换机

交换机 在上一节中,我们创建了一个工作队列。我们假设的是工作队列背后,每个任务都恰好交付给一个消费者(工作进程)。在这一部分中,我们将做一些完全不同的事情-我们将消息传达给多个消费者。这种模式称为“发布/订阅”. 为了说明这种模式,我们将构建一个简单的日志系统。它…...

Tensorflow深度学习对遥感图像分类,内存不够怎么办?

问题描述在使用Tensorflow-cpu对图像分类的时候,在预读数据过程中,由于数据量过大,内存不足,导致计算失败。使用环境:win10系统 Pycharm tensorflow-cpu2.5.0 CPU: i7 8700 内存64G图1 CPU配置图图2 内存信息图使用数据…...

基础存贮模型介绍

基础存贮模型 这里主要讨论在需求量稳定的情况下,贮存量需要多少的问题。当贮存量过大时,会提高库存成本,也会造成积压资金;当贮存量过小时,会导致一次性订购费用增加,或者不能及时满足需求。 下面讨论不允…...

JNDIExploit使用方法

JNDIExploit 一款用于 JNDI注入 利用的工具,大量参考/引用了 Rogue JNDI 项目的代码,支持直接植入内存shell,并集成了常见的bypass 高版本JDK的方式,适用于与自动化工具配合使用。 对 feihong-cs 大佬的项目https://github.com/fe…...

建议一般人不要全职做副业

欢迎关注勤于奋每天12点准时更新国外LEAD相关技术全职做国外LEAD,听起来不错,但是效果不一定好,没有自控力来全职做,基本要废了自己,最好抽时间来做。我现在就是全职做国外LEAD,外加其他一些项目&#xff0…...

pytorch入门6--数据分析(pandas)

pandas是基于Numpy构建的,提供了众多比NumPy更高级、更直观的数据处理功能,尤其是它的DataFrame数据结构,可以用处理数据库或电子表格的方式来处理分析数据。 使用Pandas前,需导入以下内容: import numpy as np from …...

淘宝API接口开发系列,详情接口参数说明

onebound.taobao.item_get 公共参数 名称类型必须描述keyString是 调用key(必须以GET方式拼接在URL中) 注册Key和secret: https://o0b.cn/anzexi secretString是调用密钥api_nameString是API接口名称(包括在请求地址中&#xff0…...

keep-alive

keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。 keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们 使用场景 使用原则:当我们在某些场景下…...

Maven的生命周期及常用命令

文章目录1、Maven生命周期1.1、clean生命周期1.2、default生命周期1.3、site生命周期2、Maven常用命令1、Maven生命周期 Maven有三套生命周期系统: 1、clean生命周期 2、default生命周期 3、site生命周期 三套生命周期之间相互独立,每套生命周期包含一…...

【Java开发】JUC基础 03:线程五大状态和主要方法

1 概念介绍📌 五大状态:new:Thread t new Thread(); 线程对象一旦被创建就进入到了新生状态;就绪状态:当调用start()方法,线程立即进入就绪状态,但不意味着立即调度执行;运行状态&a…...

docker打包容器 在另一个机器上运行

1:将运行中的容器变为镜像docker commit 容器id 镜像名(docker commit 89e81386d35e aabbcc)2:将容器打包成tar包docker save -o xxx.tar 镜像名 (当前路径下会生成一个tar的文件)3:将tar包压缩为gz包tar -…...

2023年全国最新保安员精选真题及答案9

百分百题库提供保安员考试试题、保安职业资格考试预测题、保安员考试真题、保安职业资格证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 91.护卫对象在公共场所参加活动前,保安员需要事先(&#xff0…...

arduino-sentry2之卡片篇

欧克,今天在学生的强烈要求下 我又重启arduino的sentry2调试篇 目前实验结果,可以检测到10张交通卡片 也就是如图所示十张 具体视频如下: https://live.csdn.net/v/279170 具体代码如下: #include <Arduino.h> #include <...

七、JUC并发工具

文章目录JUC并发工具CountDownLatch应用&源码分析CountDownLatch介绍CountDownLatch应用CountDownLatch源码分析有参构造await方法countDown方法CyclicBarrier应用&源码分析CyclicBarrier介绍CyclicBarrier应用CyclicBarrier源码分析CyclicBarrier的核心属性CyclicBarr…...

C++ string类(二)及深浅拷贝

一、string类方法使用举例1.迭代器迭代器本质&#xff1a;指针&#xff08;理解&#xff09;迭代器&#xff1a;正向迭代器&#xff1a; begin() | end() 反向迭代器&#xff1a; rbegin() | rend()2.find使用//找到s中某个字符 void TestString3() {string s("AAADEFNUIE…...

「TCG 规范解读」TCG 软件栈 TSS (上)

可信计算组织&#xff08;Ttrusted Computing Group,TCG&#xff09;是一个非盈利的工业标准组织&#xff0c;它的宗旨是加强在相异计算机平台上的计算环境的安全性。TCG于2003年春成立&#xff0c;并采纳了由可信计算平台联盟&#xff08;the Trusted Computing Platform Alli…...

(二)Markdown编辑器的使用效果 | 以CSDN自带MD编辑器为例

Markdown编辑器使用指南 &#xff08;一&#xff09;Markdown编辑器的使用示例 | 以CSDN自带MD编辑器为例&#xff08;二&#xff09;Markdown编辑器的使用效果 | 以CSDN自带MD编辑器为例 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xf…...

WebSocket网络通信执行流程

目录WebSocket网络通信执行流程相关概念执行流程WebSocket网络通信执行流程 WebSocket协议&#xff1a;通过单个TCP连接在客户端和服务器之间建立全双工双向通信通道。 WebSocket 对象&#xff1a;提供了用于创建和管理 WebSocket 连接&#xff0c;以及可以通过该连接发送和接…...

【Shell学习笔记】4.Shell 基本运算符

前言 本章介绍Shell的基本运算符。 Shell 基本运算符 Shell 和其他编程语言一样&#xff0c;支持多种运算符&#xff0c;包括&#xff1a; 算数运算符关系运算符布尔运算符字符串运算符文件测试运算符 原生bash不支持简单的数学运算&#xff0c;但是可以通过其他命令来实现…...

无代码资讯 | 《低代码开发平台能力要求》发布;CADP列入Gartner《2022-2024 中型企业技术采用路线图》

栏目导读&#xff1a;无代码资讯栏目从全球视角出发&#xff0c;带您了解无代码相关最新资讯‍。TOP3 大事件1、《低代码开发平台能力要求》团体标准正式发布近日&#xff0c;中国电子工业标准化协会发布公告&#xff08;中电标【2022】037 号&#xff09;&#xff0c;由中国电…...

智能家居Homekit系列一智能插座

WiFi智能插座对于新手接触智能家居产品更加友好&#xff0c;不需要额外购买网关设备 很多智能小配件也给我们得生活带来极大的便捷&#xff0c;智能插座就是其中之一&#xff0c;比如外出忘记关空调&#xff0c;可以拿起手机远程关闭。 简单说就是&#xff1a;插座可以连接wi…...

React(三):脚手架、组件化、生命周期、父子组件通信、插槽

React&#xff08;三&#xff09;一、脚手架安装和创建1.安装脚手架2.创建脚手架3.看看脚手架目录4.运行脚手架二、脚手架下从0开始写代码三、组件化1.类组件2.函数组件四、React的生命周期1.认识生命周期2.图解生命周期&#xff08;1&#xff09;Constructor&#xff08;2&…...

2023年电子竞技行业报告

第一章 行业概况 电子竞技也被称为电竞或eSports&#xff0c;是一种电子游戏的竞技活动&#xff0c;玩家在这里与其他人或团队对战&#xff0c;通常是在网络上或特定场地上进行。 电子竞技行业的发展与互联网和计算机技术的进步密不可分&#xff0c;同时还受到游戏开发商、赞…...

小朋友就餐-课后程序(JAVA基础案例教程-黑马程序员编著-第八章-课后作业)

【案例8-5】 小朋友就餐问题 【案例介绍】 1.任务描述 一圆桌前坐着5位小朋友&#xff0c;两个人中间有一只筷子&#xff0c;桌子中央有面条。小朋友边吃边玩&#xff0c;当饿了的时候拿起左右两只筷子吃饭&#xff0c;必须拿到两只筷子才能吃饭。但是&#xff0c;小朋友在吃…...

大数据|Hadoop系统

目录 &#x1f4da;Hadoop介绍 &#x1f4da;Hadoop优点 &#x1f4da;Hadoop的体系结构 &#x1f430;HDFS的体系结构 &#x1f430;MapReduce的体系结构 &#x1f430;HDFS和MapReduce的协同作用 &#x1f4da;Hadoop与分布式开发 &#x1f430;MapReduce计算模型 &a…...

2.递归算法

递归算法的两个特点&#xff08;很重要&#xff09;调用自身要有结束条件void func1(int x) {printf("%d\n", x);func1(x - 1); }func1会一直死循环&#xff0c;没有使其结束的条件&#xff0c;所以不是递归void func2(int x) {if (x > 0){printf("%d\n"…...

MySQL---触发器

MySQL—触发器 ​ 将两个关联的操作步骤写到程序里面&#xff0c;并且要用事务包裹起来&#xff0c;确保两个操作称为一个原子操作&#xff0c;要么全部执行&#xff0c;要么全部不执行 ​ 创建一个触发器&#xff0c;让商品信息数据的插入操作自动触发库存数据的插入操作 ​…...

PXC高可用集群(MySQL)

1. PXC集群概述 1.1. PXC介绍 Percona XtraDB Cluster&#xff08;简称PXC&#xff09; 是基于Galera的MySQL高可用集群解决方案Galera Cluster是Codership公司开发的一套免费开源的高可用方案PXC集群主要由两部分组成&#xff1a;Percona Server with XtraDB&#xff08;数据…...

pytorch-把线性回归实现一下。原理到实现,python到pytorch

线性回归 线性回归输出是一个连续值&#xff0c;因此适用于回归问题。回归问题在实际中很常见&#xff0c;如预测房屋价格、气温、销售额等连续值的问题。 与回归问题不同&#xff0c;分类问题中模型的最终输出是一个离散值。所说的图像分类、垃圾邮件识别、疾病检测等输出为离…...

js中判断数组的方式有哪些?

js中判断数组的方式有哪些&#xff1f;1.通过Object.prototype.toString.call来判断2.通过instanceof来判断3.通过constructor来判断4.通过原型链来判断5.通过ES6.Array.isAaary()来判断6.通过Array.prototype.isPrototypeOf来判断1.通过Object.prototype.toString.call来判断 …...

【2023unity游戏制作-mango的冒险】-5.攻击系统的简单实现

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 秩沅 原创 收录于专栏&#xff1a;unity游戏制作 ⭐攻击系统的简单实现⭐ 文章目录⭐攻击系统的简单实现⭐&#x1f468;‍&#x1…...

SpringMVC 面试题

1、什么是SpringMVC&#xff1f; SpringMVC是一个基于Java的实现了MVC设计模式的“请求驱动型”的轻量级WEB框架&#xff0c;通过把model&#xff0c;view&#xff0c;controller 分离&#xff0c;将web层进行职责的解耦&#xff0c;把复杂的web应用分成逻辑清晰的几个部分&am…...

布局三八女王节,巧借小红书数据分析工具成功引爆618

对于小红书“她”经济来说&#xff0c;没有比三八节更好的阵地了。伴随三八女王节逐渐临近&#xff0c;各大品牌蓄势待发&#xff0c;这场开春后第一个S级大促活动&#xff0c;看看品牌方们可以做什么&#xff1f; 洞察流量&#xff0c;把握节点营销时机 搜索小红书2023年的三…...

RISCV学习(1)基本模型认识

笔者来聊聊ARM的函数的调用规则 1、ARM函数调用规则介绍 首先介绍几个术语&#xff0c; AAPCS&#xff1a;Procedure Call Standard for the ARM ArchitectureAPCS&#xff1a;ARM Procedure Call StandardTPCS&#xff1a;Thumb Procedure Call StandardATPCS&#xff1a;AR…...

【java代码审计】命令注入

1 成因 开发者在某种开发需求时&#xff0c;需要引入对系统本地命令的支持来完成某些特定的功能&#xff0c;此时若未对用户的输入做严格的过滤&#xff0c;就可能发生命令注入。 2 造成命令注入的类或方法 Runtime类&#xff1a;提供调用系统命令的功能 ①Runtime.getRuntim…...

速锐得适配北汽EX系列电动汽车CAN总线应用于公务分时租赁

过去的几年&#xff0c;我们看到整个分时租赁业务出现断崖式下跌&#xff0c;这是我们看到这种市场情况&#xff0c;是必然&#xff0c;也是出乎意料。原本很多融资后的出行公司、大牌的出行服务商的分时租赁业务&#xff0c;受各种影响不得不转型成其他出行服务。例如&#xf…...

已解决ERROR: Failed building wheel for opencv-python-headless

已解决ERROR: Failed building wheel for opencv-python-headless Failed to build opencv-python-headless ERROR: Could not build wheels for opencv-python-headless, which is required to install pyproject.toml-based projects报错信息亲测有效 文章目录报错问题报错翻…...