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

嵌入式硬件实战提升篇(三)商用量产电源设计方案 三路电源输入设计 电源管理 多输入供电自动管理 DCDC降压

引言:本文你能实际的了解到实战量产产品中电源架构设计的要求和过程,并且从实际实践出发搞懂电源架构系统,你也可以模仿此架构抄板到你自己的项目,并结合硬件篇之前的项目以及理论形成正真的三路电源输入设计与开发板电源架构块供读者学习以及运用到实际产品中。

回归PCB设计的本质,PCB设计的核心任务之一就是实现不同电源需求的元器件在同一个电源系统下的有效运行,这就是所谓的电源管理。电源管理不仅仅是设计电源轨,还包括如何协调、稳定并优化不同工作电压、不同功率需求的元器件之间的关系。电源架构设计的目标是确保每个电路模块都能获得稳定、干净的电源,同时避免相互干扰,从而保证整个系统的高效运行。

目录

一、项目需求

二、TYPE-C 5V输入

1. Type-C接口设计与功能

2. 静电放电(ESD)保护设计

3. 过流保护设计

4. 电源输入与输出的限流设计

5. 综合保护策略

三、40P排针双调试口5V 5V输入||输出

1. 过压保护

2. 过流保护

3. 防反接保护

四、GH1.25-2P 8-24V输入

1. 四路DCDC降压

2. 测试点

3. LDO(低压差线性稳压器)与RTC、ADC供电

4. 电源上电时序

通过项目导向性进行学习最切合实际的高速板的绘制和理论结合实践的知识体系构建!

一、项目需求

开发板的电源架构,重点考虑了三路电源输入,提高了灵活性和适应性,可以适合多种工作场景和设备环境;要做过压过流防倒灌保护,提供全面的保护,降低操作失误时造成的损坏;排针的5V既支持5V输入,也可对外供电,可以自动切换的双向供电,保证了多输入供电时的自动管理;采用了DCDC降压方案,可以将8V-24V转换为5V,适用广泛的电压输入范围,适用于使用3S及以上的锂电池外部大电压供电的场景。

二、TYPE-C 5V输入

图中上半部分是TYPE-C接口,既可以供电,也可以数据交互。两个CC脚都接入了5.1K的下拉电阻,具体为什么可以去看看TYPE-C规范文档。如果是A口供电的话不焊接这两个5.1K下拉电阻是OK的;当用C口供电时,没有这两个下拉电阻,开发板将不会被供电。开发板有两个USB,在开发板上,USB0用作DEVICE设备来和CanMV上位机进行交互。USB1用作HOST等待后续接入以太网或者U盘,这里的TYPE-C连入了开发板的的USB0。

1. Type-C接口设计与功能

  • Type-C接口的供电与数据交互:
    Type-C接口既支持数据传输,也支持电源供给。该接口具有双向供电功能,因此可以通过同一个接口同时供电和进行数据交换。Type-C接口用于识别连接设备的关键信号线,通过向CC脚施加下拉电阻(通常为5.1KΩ),能够明确供电方向并启用Type-C供电功能。

    • 如果使用A口(传统USB-A端口)供电,通常不需要这两个下拉电阻,因为A口供电方向是固定的,不涉及设备识别过程。
    • 若使用C口供电,必须确保这两个5.1KΩ的下拉电阻存在,否则开发板将无法识别并启用电源,从而无法供电。
  • USB0与USB1端口的配置:

    • USB0端口设置为DEVICE模式,与上位机进行数据交互。它允许开发板作为一个外设通过USB与上位机进行通信。
    • USB1端口设置为HOST模式,用于未来扩展,例如连接以太网接口USB存储设备(如U盘)。
      Type-C接口连接至开发板的USB0端口,作为开发板的供电和数据交互接口。

2. 静电放电(ESD)保护设计

  • ESD保护:
    在USB数据线D+和D-上放置ESD保护二极管阵列,目的是防止来自外部设备或电源的静电对USB数据线及芯片造成损害。这些二极管在正常工作状态下不导电,但当电压急剧上升至超过二极管的击穿电压时,二极管会导通,将过高的电压迅速引流至地线,从而保护电路。
    由于ESD事件的持续时间极短(通常在纳秒级别),这些保护器件能在极短时间内响应,并迅速将电流引导至地面,避免了高压脉冲对电路的影响。

  • 钳位(过压)保护:
    ESD保护器件还内置了一个钳位二极管,其作用是防止电压超过设定的安全范围。当电压超过钳位二极管的触发电压时,二极管会从高阻态迅速转变为低阻态,允许电流流过,并将过电压“钳位”在一个安全水平。
    例如,在USB接口处,如果出现过高电压(例如USB端口电压超过5V),钳位二极管会将电压限制在一定范围内,防止高电压损害连接的元器件。

VOUT电源开关输出引脚,向负载提供电压。
GND               地引脚,连接到电路的地面,提供电流回路的闭合。外部连接至Power PAD。
SET   外部电阻引脚,用于设置电流限制阈值。
EN              启用输入引脚,逻辑高电平时开启电源开关,低电平时关闭电源开关。
VIN  输入电压引脚,连接电源输入。建议在VIN与GND之间连接一个10uF或更大容量的陶瓷电容,尽量靠近IC以保证稳定的输入电压。

3. 过流保护设计

  • MT9700电子负载开关:
    MT9700西安航天民芯推出的一款低功耗、低成本电子负载开关,具备过热保护、过流保护等功能。MT9700的过流保护可以通过外部电阻(如R1)来设置电流阈值,确保电流不会超过设定范围。
    在你的设计中,选择了3.4KΩ的电阻来设置电流上限为2A,计算公式为: Iset(A)=6.8KΩRset(KΩ)I_{set}(A) = \frac{6.8KΩ}{R_{set}(KΩ)}Iset​(A)=Rset​(KΩ)6.8KΩ​ 这样设计的目的是确保在发生过流时,负载开关能够迅速切断电路,保护K230及其周边电路免受损害。

相关layout也给出来供大家参考。

4. 电源输入与输出的限流设计

  • 输入限流设计:
    左下角的5V输入限流设计通过MT9700的过流保护功能,确保了排针(或USB输入)处的电流不会超过2A。这对于保护电源和防止过大电流输入到系统中的其他部分(尤其是K230芯片)非常重要。
    设计中使用非门来控制MT9700的使能信号,确保只有在电脑USB没有提供电源时,排针输入的电源才会供给后续电路。这种设计可以保证USB供电和排针供电的优先级,避免出现电源冲突。

  • 输出限流设计:
    右下角的5V限流输出设计同样使用MT9700进行过流保护。为避免因电流过大造成电路不稳定,设计将输出电流限制在1A,既满足了K230芯片和周边电路的供电需求,又避免了因电流过大导致的热量积聚或设备损坏。
    这种限流设计不仅有助于保护主控芯片本身,也确保了电路在高负载时仍能保持稳定工作,从而避免因电流过载而导致的潜在风险。

5. 综合保护策略

  • 整合保护功能:
    综合来看,电源架构不仅考虑了基本的供电需求,还包括了静电保护、过压保护、过流保护等多种保护机制。这些保护设计能够有效防止电源端的高压、静电和过流事件对设备造成损害,确保电路系统长期稳定运行。
  • 电源管理:
    通过合理配置和选用适合的保护器件(如MT9700、ESD保护二极管、钳位二极管等),并设置合理的电流保护和限流策略,整个电源管理设计能够有效应对不同的电源输入和负载条件,同时确保系统的安全与稳定性。

三、40P排针双调试口5V 5V输入||输出

这里是DCDC降压,可以把8-24V输入的电压降为5V给后续电路使,使用的DCDC芯片为TPS54302DDCR,最高支持28V的输入,这里标注最大24V是为了留出余量,确保在输入电压波动或瞬时过压的情况下,电源系统仍能稳定工作,不会因电压过高而损坏。这样的设计提高了电源系统的可靠性和鲁棒性,同时也延长了DCDC芯片的使用寿命,使用时不要供超过24V。

1. 过压保护

  • 原理: 过压保护是通过钳位二极管来实现的。钳位二极管是一种能够在电压超过一定阈值时自动起作用的元件。在正常情况下,钳位二极管保持在高阻态(即不导电),对电路的正常工作没有影响。当电路中的电压超过钳位二极管的设计激活电压时,钳位二极管会迅速从高阻态转变为低阻态(即导电状态),将多余的电压通过二极管引导到地线,限制电压上升,防止电压过高损坏电路中的其他元件。

  • 工作过程:

    • 正常工作时: 电源电压在正常范围内,钳位二极管不导电,电路正常运行。
    • 过压情况时: 电压超过钳位二极管的激活电压(如超过5V或12V等),钳位二极管开始导电,电流通过二极管流向地线,将电压限制到一个安全值(如5.6V),防止电压继续上升,保护后续电路。
  • 钳位电压: 钳位二极管的工作原理类似于“电压保护器”,它将电压限制在一个安全的水平,一旦超过该阈值,二极管会导通,将电压钳位在安全值范围内。


2. 过流保护

  • 原理: 过流保护通常使用自恢复保险丝(PTC热敏电阻)来检测和控制电流。自恢复保险丝在电流超过额定值时,会迅速升温,从而改变其电阻值,减少流过的电流,并阻止过大的电流损坏电路。该保险丝具有自恢复特性,当过流条件解除后,温度下降,电阻恢复到正常值,电路可以重新正常工作。

  • 工作过程:

    • 正常工作时: 电流流过电路和自恢复保险丝,保险丝的电阻很低,几乎不对电流产生影响,电流可以正常流动。
    • 过流情况时: 当电流超过保险丝的额定电流时,电流的增加会导致保险丝内的PTC热敏电阻快速升温。随着温度的升高,PTC热敏电阻的电阻会急剧增加,从而显著减少流经保险丝的电流。高阻态的保险丝会切断电流流动,避免过流现象导致电路损坏。
    • 过流解除后: 当电流降低到安全范围时,PTC热敏电阻温度下降,电阻值恢复正常,电流可以再次流过电路,保险丝“自恢复”。
  • 实验验证:

    • 可以通过对自恢复保险丝吹热风枪来模拟过流情况。当PTC热敏电阻升温并达到其过流阈值时,保险丝会进入高阻状态,切断电流。一旦冷却,电阻值降低,电流再次通过。

3. 防反接保护

  • 原理: 防反接保护用于防止电源接反时对电路的损坏。当电源电压接反时,电路中的二极管(如D3)会导通,从而通过自恢复保险丝切断电流流向电路,避免过大电流直接流入电路内部,保护电路不受损坏。

  • 工作过程:

    • 正常接入电源时: 电源的正极和负极正确连接,电源电压正常供电。此时,钳位二极管(D3)不会导通,电流按照设计流向负载电路。
    • 电源接反时: 当电源接反时,二极管D3的接地脚(本应为负极)变成了电源的正极,D3导通。由于电源反接,流过电路的电流将通过二极管D3引导到自恢复保险丝,从而导致电流过大。此时,电流会迅速升高,导致自恢复保险丝(F1)迅速升温,并进入高阻态,阻断电流流动。
    • 自恢复保险丝生效: 因为电流大于设定的2A,保险丝会迅速升温,PTC电阻值增加,电流减小,切断反接电源对电路的损坏。
  • 电源接反后的保护: 由于自恢复保险丝限制了电流,电源接反时对电路的损害会被有效避免。待电源接正后,保险丝冷却,电流恢复正常,电路重新供电。

更多参考的案例如下手册也包含可以去看看。

四、GH1.25-2P 8-24V输入

1. 四路DCDC降压

在你的电路中,采用了 TLV62569DBVR 降压芯片来将5V的输入电压转化为多个不同的输出电压,具体包括 0.8V、1.1V、1.8V 和 3.3V。四路电源的电路结构基本相同,但它们的输出电压是通过调整反馈电路的阻值(电阻)和电感的容值来实现的。

以0.8V降压为例,详细解析如下:

  • C13 和 C14:这两个电容用于滤除输入电压中的噪声和纹波,确保输入电压稳定。这有助于保持 DCDC 降压芯片的稳定工作,并减少电压波动。

  • R12:R12电阻将 DCDC 降压芯片的使能脚(EN)拉高。EN引脚控制降压芯片的启用,拉高使芯片进入工作状态。此时,5V的输入电源就能使降压芯片输出0.8V。

  • L2:L2是一个一体成型电感(Inductor),它与 DCDC 芯片共同工作,储存和释放能量,平滑电流,减少纹波。电感有助于调节电流,避免输出电压的剧烈波动,确保电压稳定输出。

  • R13 和 R14:这两个电阻连接在 DCDC 降压芯片的反馈引脚(FB)上,决定了输出电压的大小。通过调整这两个电阻的值,可以改变输出电压。电阻分压比决定了反馈电压,从而调节输出电压。具体的调节公式通常会根据芯片的规范书提供。通常,输出电压 VoutV_{out}Vout​ 与反馈电压 VfbV_{fb}Vfb​ 之间的关系是:

    通过调整R13和R14的值,就能得到所需的输出电压。


相关layout如下参考:

2. 测试点

每个电源输出都有一个测试点(例如TP9,TP10等),这些测试点的作用如下:

  • 调试时测量电压:这些测试点方便工程师在调试过程中实时监测各电源输出电压是否正常。
  • 批量测试:在生产测试阶段,测试点方便自动化测试设备测量各个电压点,确保每块开发板正常工作。
  • 维护和问题诊断:当开发板出现问题时,使用万用表或者自动化测试工具,可以快速检查各个电源的输出,帮助快速定位故障原因。

3. LDO(低压差线性稳压器)与RTC、ADC供电

  • U11(LDO):LDO用来为 RTC(实时时钟)ADC(模数转换器) 提供稳定的低电压电源。RTC和ADC通常需要较为稳定的低电压电源,以保证其高精度工作。

  • U12(电子功率开关):U12是一个功率开关,用于控制电源的开关。它的工作与K230芯片的PMU模块(电源管理单元)相结合。具体来说,当 OUT0 输出高电平时, PRE_VDD_5V 电源就能够提供 VDD_5V,从而使得整个系统获得供电。PMU模块可以通过检测外部事件(比如外部按键的长按)来控制电源开关,完成系统的上电。

  • OUT0的控制:K230芯片的PMU模块通过 INT 引脚来监测外部事件。当外部按键长按时,OUT0 会输出高电平,触发后级电源供电。具体来说,INT0 管脚用于长按3秒后触发电源开启,而 INT4 则用于上拉检测,一旦检测到高电平,OUT0 输出高电平,启动电源。

  • VDD_5V的上电过程:在此电路中,VDD_5V 由PMU模块控制通过 OUT0 来供电。供电条件是 VDD1V8_RTC 必须首先提供供电,确保RTC和低速晶振正常工作。一旦满足条件,K230的PMU模块便会控制 VDD_5V 上电。


4. 电源上电时序

在电路设计中,电源的上电顺序是非常重要的,特别是对于复杂的集成电路(如K230)而言。上电顺序的正确性直接影响到系统的稳定性。根据硬件文档,要求各个电压轨的上电顺序如下:

  • VDD0P8_CORE 必须在 VDD1P8、VDDIO3P3_0 到 VDDIO3P3_5 的 IO 接口电压上电之前。
  • AVDD0P8_MIPI 必须早于 AVDD1P8_MIPI
  • AVDD1P8_RTC 必须早于 AVDD1P8_LDO
  • 其余电源电压轨的上电顺序没有严格要求。

0.8V降压芯片的使能脚:0.8V的降压芯片没有电容用于使能(EN脚),一旦5V输入电源到来,0.8V芯片就直接输出。而其他三个输出电压(1.1V、1.8V、3.3V)则需要等待其EN脚的电容充电完成,才会开始输出电压。这是为了确保电源在上电时符合电源顺序要求,避免同时过早地启用多个电源轨,造成不稳定。

  • 延迟上电的目的:通过在EN脚加电容,使得1.1V、1.8V、3.3V的电源有一个延迟的上电时间,从而保证了0.8V电源先行上电,符合电源顺序要求。

相关文章:

嵌入式硬件实战提升篇(三)商用量产电源设计方案 三路电源输入设计 电源管理 多输入供电自动管理 DCDC降压

引言:本文你能实际的了解到实战量产产品中电源架构设计的要求和过程,并且从实际实践出发搞懂电源架构系统,你也可以模仿此架构抄板到你自己的项目,并结合硬件篇之前的项目以及理论形成正真的三路电源输入设计与开发板电源架构块供…...

常用排查工具使用

1.spy++ Microsoft Spy++是一个非常好的查看Windows操作系统的窗口、消息、进程、线程信息的工具,简单易用,功能强大。 在vs的工具中默认安装,还可以监控到隐层窗口,通过查看窗口的属性可以获得更多信息,包括规格、窗口、类、进程等信息,可以帮助排查相关窗口的问题。 2…...

用三维模型的顶点法向量计算法线贴图

法线贴图的核心概念是在不增加额外多边形数目的情况下,通过模拟细节来改善光照效果。具体流程包括: 法线的计算与存储:通过法线映射将三维法线向量转化为法线贴图的 RGB 值。渲染中的使用:在片段着色器中使用法线贴图来替代原有的…...

基于Matlab高速动车组转臂定位橡胶节点刚度对车辆动力学影响仿真研究

本研究针对高速动车组转臂定位系统中橡胶节点的刚度对车辆动力学性能的影响进行仿真研究。随着高速铁路的发展,动车组的运行稳定性和舒适性成为设计和运营的核心问题,其中,转臂定位系统作为动车组悬挂系统的重要组成部分,其性能对…...

PostgreSQL认证培训需要什么条件

PostgreSQL认证培训通常没有严格的前置条件,但以下几点可以帮助你更好地准备和通过认证考试: 1、基础知识:具备基本的数据库知识和经验,特别是对SQL有一定的了解。如果你Oracle、MySQL等基础知识,对对你学习PostgreSQ…...

Rust 图形界面开发——使用 GTK 创建跨平台 GUI

第五章 图形界面开发 第一节 使用 GTK 创建跨平台 GUI GTK(GIMP Toolkit)是一个流行的开源跨平台图形用户界面库,适用于创建桌面应用程序。结合 Rust 的 gtk-rs 库,开发者能够高效地构建现代化 GUI 应用。本节将详细探讨 GTK 的…...

Spring中每次访问数据库都要创建SqlSession吗?

一、SqlSession是什么二、源码分析1)mybatis获取Mapper流程2)Spring创建Mapper接口的代理对象流程3)MapperFactoryBean#getObject调用时机4)SqlSessionTemplate创建流程5)SqlSessionInterceptor拦截逻辑6)开…...

【数据分析】布朗运动(维纳过程)

文章目录 一、概述二、数学布朗运动2.1 数学定义2.2 布朗运动的数学模型2.21 标准布朗运动2.22 布朗运动的路径2.23 布朗运动的方程 三、布朗运动在金融学中的应用四、数学构造(以傅里叶级数为例)4.1 傅里叶级数的基本思想4.2 构造布朗运动 一、概述 布…...

静态页面 和 动态页面(Java Web开发)

1. 静态页面 1.1 什么是静态页面? 静态页面是指 HTML 文件直接存放在服务器上,不依赖后端逻辑处理而生成内容。客户端浏览器请求静态页面时,服务器直接将文件发送到客户端,浏览器负责渲染页面。 特点: 固定内容&am…...

linux模拟试题

Linux 基础阶段考试笔试模拟试卷 审核人:王旺旺 一.填空题(每题 1 分,共 30 分) 1.验证 httpd 服务是否启动的命令是_______ 答:systemctl status httpd 或 netstat -anptl 或 ss -anpt 2.将目录 xxhf 下所有文件的所属组改为 user1 的命令是_______ 答:chown -R ,user1 …...

Android 使用OpenGLES + MediaPlayer 获取视频截图

概述 Android 获取视频缩略图的方法通常有: ContentResolver: 使用系统数据库MediaMetadataRetriever: 这个是android提供的类,用来获取本地和网络media相关文件的信息ThumbnailUtils: 是在android2.2(api8)之后新增的一个,该类为…...

典型的1553B网络

典型的1553B网络 1553B总线BUS A和BUS B是互为冗余的、完全对等、物理隔离的两个网络。每一个节点设备也配置有互为冗余的A、B两个1553B接口,分别接入BUS A和BUS B。系统完成初始化配置后,首先采用BUS A来通讯。工作过程中,如果发现BUS A的工…...

【C++】内存管理

【C】内存管理 一、C/C内存分布二、C语言中动态内存管理方式三、C内存管理方式1、new 和 delete 操作内置类型2、new 和 delete 操作自定义类型 四、operator new 和 operator delete 函数五、new 和 delete 的实现原理1、内置类型2、自定义类型3、new和delete不匹配的报错 六、…...

实现PDF文档加密,访问需要密码

01. 背景 今天下午老板神秘兮兮的来问我,能不能做个文档加密功能,就是那种用户下载打开需要密码才能打开的那种效果。boss都发话了,那必须可以。 需求:将 pdf 文档经过加密处理,客户下载pdf文档,打开文档需…...

常见排序算法总结 (三) - 归并排序与归并分治

归并排序 算法思想 将数组元素不断地拆分,直到每一组中只包含一个元素,单个元素天然有序。之后用归并的方式收集跨组的元素,最终形成整个区间上有序的序列。 稳定性分析 归并排序是稳定的,拆分数组时会自然地将元素分成有先后…...

文库 | 从嬴图的技术文档聊起

在技术的浩瀚海洋中,一份优秀的技术文档宛如精准的航海图。它是知识传承的载体,是团队协作的桥梁,更是产品成功的幕后英雄。然而,打造这样一份出色的技术文档并非易事。你是否在为如何清晰阐释复杂技术而苦恼?是否纠结…...

故障诊断 | Transformer-LSTM组合模型的故障诊断(Matlab)

效果一览 文章概述 故障诊断 | Transformer-LSTM组合模型的故障诊断(Matlab) 源码设计 %% 初始化 clear close all clc disp(此程序务必用2023b及其以上版本的MATLAB!否则会报错!) warning off %...

VScode离线下载扩展安装

在使用VScode下在扩展插件时,返现VScode搜索不到插件,网上搜了好多方法,都不是常规操作,解决起来十分麻烦,可以利用离线下载安装的方式安装插件!亲测有效!!! 1.找到VScod…...

【AI系统】昇腾异构计算架构 CANN

昇腾异构计算架构 CANN 本文将介绍昇腾 AI 异构计算架构 CANN(Compute Architecture for Neural Networks),这是一套为高性能神经网络计算需求专门设计和优化的架构。CANN 包括硬件层面的达芬奇架构和软件层面的全栈支持,旨在提供…...

云服务器重装系统后 一些报错与解决[ vscode / ssh / 子用户]

碰见的三个问题: 1.vscode连接失败 2.登录信息配置 3.新建子用户的一些设置 思考:遇见问题,第一反应 应该如何解决 目录 1. 错误 解决方法 原因 步骤 1:找到known_hosts文件并编辑 步骤 2:通过VSCode终端输入…...

架构设计之路,永无尽头

1. 插件式架构 2. SRP:单一职责原则 3. 链接加载器??? 4. 端口适配器架构 5. 六边形架构 6. MVC架构 7. 领域驱动架构 8. 敏捷开发 9. 打台球的时候每打一杆是为了下几杆,而不是为了打到洞中。 10. 画出一个图&#xff0…...

【AI系统】Ascend C 语法扩展

Ascend C 语法扩展 Ascend C 的本质构成其实是标准 C加上一组扩展的语法和 API。本文首先对 Ascend C 的基础语法扩展进行简要介绍,随后讨论 Ascend C 的两种 API——基础 API 和高阶 API。 接下来针对 Ascend C 的几种关键编程对象——数据存储、任务间通信与同步…...

驱动篇的开端

准备 在做之后的动作前,因为win7及其以上的版本默认是不支持DbgPrint(大家暂时理解为内核版的printf)的打印,所以,为了方便我们的调试,我们先要修改一下注册表 创建一个reg文件然后运行 Windows Registr…...

树莓派4B使用opencv读取摄像头配置指南

本文自己记录,给我们lab自己使用,其他朋友们不一定完全适配,请酌情参考。 一. 安装opecnv 我们的树莓派4B默认是armv7l架构,安装的miniconda最新的版本 Miniconda3-latest-Linux-armv7l.sh 仍然是python3.4几乎无法使用&#xff…...

【AI日记】24.12.03 kaggle 比赛 Titanic-6

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 内容:学习 kaggle 入门比赛 Titanic - Machine Learning from Disaster时间:7 小时评估:继续 读书 书名:美丽新世界时间:1 小时阅读原因&…...

Linux中的常用基本指令(下)

Linux常用基本指令 Linux中的基本指令12.head指令13.tail指令简单解释重定向与管道(重要) 14.date指令(时间相关的指令)15.cal指令(不重要)16.find指令(灰常重要)17.grep指令(重要)18.which指令和alias指令19.zip/unzip指令:20.tar指令(重要&…...

python笔记3

复习及总结 python的软件安装及简单使用——python3.31 pycharm python的输出:print() 简单(直接)输出 print()输出到指定文件 fpopen(rC:\Users\M15R3\Desktop\1.txt,a) print("334…...

电商营销活动-抽奖业务

目录 一、抽奖系统的核心功能 二、抽奖系统的业务逻辑 三、抽奖系统的业务优势 四、抽奖系统的业务注意事项 电商营销活动中的抽奖系统业务,是一种通过设立抽奖活动来吸引用户参与、提升用户活跃度和转化率的营销手段。以下是对电商营销活动抽奖系统业务的详细解…...

利用 Redis 与 Lua 脚本解决秒杀系统中的高并发与库存超卖问题

1. 前言 1.1 秒杀系统中的库存超卖问题 在电商平台上,秒杀活动是吸引用户参与并提升销量的一种常见方式。秒杀通常会以极低的价格限量出售某些商品,目的是制造紧迫感,吸引大量用户参与。然而,这种活动的特殊性也带来了许多技术挑…...

《山海经》:北山

《山海经》:北山 北山一经单狐山求如山(水马:形状与马相似,滑鱼:背部红色)带山(䑏疏:似马,一只角,鵸鵌:状乌鸦五彩斑斓,儵鱼&#xff…...

React基础教程(12):useRef的使用

12、useRef useRef 是 React 中的一个 Hook,主要用于访问和操作 DOM 元素以及保存组件的可变引用值。它是一个工具,用来避免重新渲染组件的情况下保持某些状态或引用的值。 使用场景: 使用场景 访问 DOM 元素 当需要直接操作某个 DOM 元素(如聚焦、滚动等)时,可以使用…...

释放超凡性能,打造鸿蒙原生游戏卓越体验

11月26日在华为Mate品牌盛典上,全新Mate70系列及多款全场景新品正式亮相。在游戏领域,HarmonyOS NEXT加持下游戏的性能得到充分释放。HarmonyOS SDK为开发者提供了软硬协同的系统级图形加速解决方案——Graphics Accelerate Kit(图形加速服务…...

Linux--Debian或Ubuntu上扩容、挂载磁盘并配置lvm

一、三块12TB组RAID 5 可用容量约24TB 二、安装LVM工具(已安装请忽略) sudo apt-get install lvm2二、查看可用磁盘 sudo lsblk 或者 sudo fdisk -l三、创建物理卷(PV) 选中刚做的磁盘组 sudo pvcreat /dev/sdb1四、创建卷组…...

我谈冈萨雷斯对频域滤波的误解——快速卷积与频域滤波之间的关系

在Rafael Gonzalez和Richard Woods所著的《数字图像处理》中,Gonzalez对频域滤波是有误解的,在频域设计滤波器不是非得图像和滤波器的尺寸相同,不是非得在频域通过乘积实现。相反,FIR滤波器设计都是构造空域脉冲响应。一般的原则是…...

Leetcoed:3274

1,题目 2,思路 把俩个字符串坐标拆开比较二进制, 如a1与b2 ,a与b比较为false ,1与2比较为false,最后俩个结果比较返回true 3,代码 class Solution3274 {public boolean checkTwoChessboards(String str1, String str2) {return (str1.char…...

LabVIEW实现串口调试助手

目录 1、串口通信原理 2、硬件环境部署 3、串口通信函数 4、程序架构 5、前面板设计 6、程序框图设计 本专栏以LabVIEW为开发平台,讲解物联网通信组网原理与开发方法,覆盖RS232、TCP、MQTT、蓝牙、Wi-Fi、NB-IoT等协议。 结合实际案例,展示如何利用LabVIEW和常用模块实现物联…...

ASP.NET Core项目中使用SqlSugar连接多个数据库的方式

之前学习ASP.NETCore及SqlSugar时都是只连接单个数据库处理数据&#xff0c;仅需在Program文件中添加ISqlSugarClient的单例即可&#xff08;如下代码所示&#xff09;。 builder.Services.AddSingleton<ISqlSugarClient>(s > {SqlSugarScope sqlSugar new SqlSugar…...

leetcode hot100【Leetcode 72.编辑距离】java实现

Leetcode 72.编辑距离 题目描述 给定两个单词 word1 和 word2&#xff0c;返回将 word1 转换为 word2 所使用的最少操作数。 你可以对一个单词执行以下三种操作之一&#xff1a; 插入一个字符删除一个字符替换一个字符 示例 1: 输入: word1 "horse", word2 &…...

【开源免费】基于Vue和SpringBoot的服装生产管理系统(附论文)

博主说明&#xff1a;本文项目编号 T 066 &#xff0c;文末自助获取源码 \color{red}{T066&#xff0c;文末自助获取源码} T066&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…...

Android13 允许桌面自动旋转

一&#xff09;需求-场景 Android13 实现允许桌面自动旋转 Android13 版本开始后&#xff0c;支持屏幕自动旋转&#xff0c;优化体验和兼容性&#xff0c;适配不同屏幕 主界面可自动旋转 二&#xff09;参考资料 android framework13-launcher3【06手机旋转问题】 Launcher默…...

异常知识及其使用

异常的简单概念 在C中&#xff0c;异常处理是一种机制&#xff0c;用于处理程序运行时发生的意外情况。它允许程序在发生错误时&#xff0c;将控制权转移到一个专门的代码块&#xff0c;而不是让程序直接崩溃。C的异常处理机制包括以下几个关键概念&#xff1a; throw 用途&…...

Spark常问面试题---项目总结

一、数据清洗&#xff0c;你都清洗什么&#xff1f;或者说 ETL 你是怎么做的&#xff1f; 我在这个项目主要清洗的式日志数据&#xff0c;日志数据传过来的json格式 去除掉无用的字段&#xff0c;过滤掉json格式不正确的脏数据 过滤清洗掉日志中缺少关键字段的数据&#xff…...

哈希及其模拟实现

1.哈希的概念 顺序结构以及平衡树中&#xff0c;元素的关键码与其存储位置之间没有对应的关系。因此&#xff0c;在查找一个元素时&#xff0c;必须要经过关键码的多次比较。顺序查找的时间复杂度为O(N)&#xff0c;平衡树中为树的高度&#xff0c;即O(log_2 N)&#xff0c;搜…...

Day 32 动态规划part01

今天正式开始动态规划! 理论基础 无论大家之前对动态规划学到什么程度,一定要先看 我讲的 动态规划理论基础。 如果没做过动态规划的题目,看我讲的理论基础,会有感觉 是不是简单题想复杂了? 其实并没有,我讲的理论基础内容,在动规章节所有题目都有运用,所以很重要!…...

【娱乐项目】竖式算术器

Demo介绍 一个加减法随机数生成器&#xff0c;它能够生成随机的加减法题目&#xff0c;并且支持用户输入答案。系统会根据用户输入的答案判断是否正确&#xff0c;统计正确和错误的次数&#xff0c;并显示历史记录和错题记录。该工具适合用于数学练习&#xff0c;尤其适合练习基…...

XRP 深度解析:从技术到 Meme 币交易指南

撰文&#xff1a;Ignas | DeFi Research 编译&#xff1a;Yuliya&#xff0c;PANews 本文来源Techub News:XRP 深度解析&#xff1a;从技术到 Meme 币交易指南 在当前加密货币市场&#xff0c;一个令人瞩目的现象正在上演&#xff1a;XRP 在短短一个月内暴涨 3.5 倍&#xf…...

机器学习周志华学习笔记-第13章<半监督学习>

机器学习周志华学习笔记-第13章&#xff1c;半监督学习&#xff1e; 卷王&#xff0c;请看目录 13半监督学习13.1 生成式方法13.2 半监督SVM13.3 基于分歧的方法13.4 半监督聚类 13半监督学习 前面我们一直围绕的都是监督学习与无监督学习&#xff0c;监督学习指的是训练样本包…...

【MySql】navicat连接报2013错误

navicat连接mysql报2013错误 报错信息1、检验Mysql数据库是否安装成功2、对Mysql的配置文件进行修改配置2.1、找到配置文件2.2、Linux下修改配置文本 3、连接进入mysql服务4、在mysql下执行授权命令 报错信息 Navicat连接mysql报2013错误 2013-Lost connection to MYSQL serve…...

【微服务】Docker

一、Docker基础 1、依赖的兼容问题&#xff1a;Docker允许开发中将应用、依赖、函数库、配置一起打包&#xff0c;形成可移植镜像Docker应用运行在容器中&#xff0c;使用沙箱机制&#xff0c;相互隔离。 2、如何解决开发、测试、生产环境有差异的问题&#xff1a;Docker镜像…...

renderExtraFooter 添加本周,本月,本年

在 Ant Design Vue 中&#xff0c;a-date-picker 组件提供了一个 renderExtraFooter 属性&#xff0c;可以用来渲染额外的页脚内容。你可以利用这个属性来添加“本周”、“本月”和“本年”的按钮。下面是如何在 Vue 2 项目中实现这一功能的具体步骤&#xff1a; 1.确保安装了…...