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

硬件工程师面试题 21-30

        把常见的硬件面试题进行总结,方便及时巩固复习。其中包括网络上的资源、大佬们的大厂面试题,其中可能会题目类似,加强印象即可。


更多硬件面试题:
硬件工程师面试题 1-10
硬件工程师面试题 11-20


21、单片机最小系统需要什么?

        单片机最小系统是指能够使单片机芯片正常运行并发挥其功能所必需的最少硬件电路集合。它主要由以下几个关键部分组成:

  1. 电源:为单片机提供稳定的直流电源供电,确保单片机能够正常工作。常见51系列通常需要5V直流电源,STM32系列需要3.3V。
            电源电路可能包括直流电源稳压模块、滤波电容以及电源指示灯等元件,其中直流电源稳压模块用于将输入的交流电转换为稳定的直流电,滤波电容则用于滤除电源中的杂波干扰。
  2. 时钟(晶振)电路:是单片机正常运行的关键部分。提供了单片机运行所需的时钟信号,用于单片机的计时、延时、同步等操作,是单片机内部各部件协调工作的基础。
    通常由晶振和相关的电容、电阻等元件组成,能够产生稳定的频率信号,确保单片机按照预定的时间周期执行指令。典型的晶振频率有11.0592MHz和12MHz等。
  3. 复位电路:在单片机上电初期或发生异常情况时,复位电路能够确保单片机处于一个可控的初始状态,避免系统启动时出现异常。
    通常由复位按钮、电容和电阻等元件组成。当复位按钮被按下时,复位电路会产生一个高电平信号,使单片机内部各电路状态恢复到确定的初始值,并从这个状态开始工作。

22、FreeRTOS移植最重要的是什么

        FreeRTOS移植过程中最重要的是确保移植后的系统能够在目标硬件上稳定运行,并满足应用需求。

一、文件与文件夹的添加与删除

  1. 添加必要文件:从FreeRTOS官方下载的源码包中,将必要的文件和文件夹添加到自己的工程中。通常包括FreeRTOS的内核文件、配置文件、端口文件等。
  2. 删除无关文件:删掉portable文件夹中与自己芯片无关的部分,以减小工程体积并提高编译效率。

二、中断函数的处理

  1. 删除本地中断处理函数:在移植FreeRTOS之前,需要删除本地原有的中断处理函数。
  2. 添加FreeRTOS中断处理函数:将FreeRTOS中的三个主要中断处理函数(如PendSV_HandlerSVC_HandlerSysTick_Handler)进行声明,并确保能被正确调用。

三、配置文件调整

  1. 修改FreeRTOSConfig.h:这是FreeRTOS的核心配置文件,需要根据目标硬件和应用需求进行详细的调整。包括但不限于设置是否使用抢占式内核、时间片调度、任务优先级、堆栈大小、时钟节拍频率等参数。
  2. 配置中断优先级:在STM32等基于ARM Cortex-M系列的单片机上,需要配置NVIC的中断优先级分组,并确保FreeRTOS的中断优先级设置合理。

四、内核代码适配

  1. 任务管理:确保FreeRTOS的任务管理功能能够在目标硬件上正常工作,包括任务的创建、删除、挂起、恢复等。
  2. 内存管理:如果使用动态内存分配功能,需要确保FreeRTOS的内存管理模块与目标硬件的内存管理单元(如MMU)兼容。
  3. 时间管理:配置FreeRTOS的时钟节拍源和节拍频率,以确保系统能够按照预定的时间周期执行任务调度。

五、端口代码移植

  1. 硬件抽象层:根据目标硬件的特性,编写或修改FreeRTOS的端口代码,以实现对硬件的抽象和封装。
  2. 外设驱动:如果FreeRTOS需要使用到外设(如UART、SPI、I2C等),需要确保这些外设的驱动代码已经正确移植到目标硬件上。

六、其他注意事项

  1. 编译器兼容性:确保使用的编译器与FreeRTOS兼容,并正确配置编译环境。
  2. 调试与测试:在移植过程中,需要进行充分的调试和测试,以确保FreeRTOS能够在目标硬件上稳定运行并满足应用需求。可以使用调试器、日志输出等方式进行调试测试。

23、DC-DC与LDO区别

DC-DC转换器和LDO(低压差线性稳压器)是两种常见的电源管理技术.

  1. 工作原理

    • LDO:采用线性调节方式,通过调整可变阻抗元件(如MOSFET)的导通状态,将多余的输入电压转化为热量来降低电压。其内部通常使用P沟道MOSFET,通过负反馈控制输出电压的稳定性。
    • DC-DC:采用开关调节方式,通过快速开关控制电感和电容的充放电过程,将输入电压转换为所需的输出电压。其工作原理包括开关元件的导通和截止状态切换,通过脉宽调制(PWM)调节输出电压。
  2. 效率

    • LDO:效率较低,尤其在输入输出电压差较大的情况下,效率更低,通常在40%
    • DC-DC:效率较高,尤其在输入输出电压差较大的情况,效率可达80%以上
  3. 输出特性

    • LDO:输出纹波小,负载响应快,噪声低,适用于对电源质量要求较高的场合,但输出电流能力有限,通常不超过几安培。
    • DC-DC:输出纹波较大,负载响应较慢,但带载能力强,适合需要大电流输出的应用。
  4. 输入输出电压范围

    • LDO:适用于输入电压稍高于输出电压的场合,输入输出电压差不能太大,通常要求输入电压比输出电压高出1~2V。
    • DC-DC:输入电压范围较宽,可以实现升压、降压或升降压等多种拓扑结构。
  5. 成本与复杂性

    • LDO:外围元件少,电路简单,成本低。
    • DC-DC:外围元件多,电路复杂,成本较高。
  6. 应用场景

    • LDO:适用于对电压稳定性要求高但功率需求不大的场合,如传感器、微控制器
    • DC-DC:适用于需要高效率、大电流输出的场合,如手机、通信设备和医疗设备

24、PSRR是什么,单位是什么

        应用LDO、DCDC、运放的时候,规格书中都会标准PSRR这个指标

PSR为电源抑制(Power Supply Rejection),即电源到输出增益的抑制,

PSRR为电源抑制比( Power Supply Rejection Ratio),即输入到输出的增益除以从电源到输出的增益。描述了电路抑制任何电源变化传递到其输出信号的能力

        单位是dB

电源抑制比(PSRR)的基础知识_psrr电源抑制比-CSDN博客

25、iic时序?随机读取一个字符的过程?iic设备出问题的时候怎么排查?上拉电阻对iic速率有没有影响?

I²C时序

I²C通信协议的时序要求非常严格,主要包括以下几个关键信号和状态:

  1. 起始信号(Start Condition):当SCL(串行时钟线)为高电平时,SDA(串行数据线)由高电平变为低电平,表示一个起始信号的开始。这标志着一次通信的起始。
  2. 停止信号(Stop Condition):当SCL为高电平时,SDA由低电平变为高电平,表示一个停止信号的结束。这标志着一次通信的结束。
  3. 数据传输:在SCL为低电平时,SDA可以变化数据;而在SCL为高电平时,SDA必须保持稳定,以便接收方能够正确地读取数据。数据是逐位传输的,高位在前,低位在后。
  4. 应答信号(Acknowledge):在接收方成功接收到一个字节的数据后,它会在SCL的高电平期间将SDA拉低,产生一个应答信号(通常为0)。如果接收方没有应答(例如,由于缓冲区已满或地址不匹配等原因),则它会在SCL的高电平期间保持SDA为高电平(无应答信号,通常为1)

随机读取一个字符的过程

在I²C通信中,随机读取一个字符通常涉及以下步骤:

  1. 发送起始信号:主机产生并发送起始信号到从机,表示一次通信的开始。
  2. 发送设备地址和写控制命令:主机发送从机的设备地址,并设置读写控制位为低电平,表示将对从机进行写数据操作。同时,主机还需要发送要访问的从机内部寄存器的地址(即字地址)。注意,这些地址和命令的发送都是高位在前,低位在后。
  3. 接收应答信号:从机接收到设备地址和写控制命令后,会回传一个应答信号。如果主机接收到应答信号,则表示从机已准备好接收数据。
  4. 发送字地址:主机向从机发送要读取数据的字地址。如果是双字节地址,则需要先发送高8位地址,再发送低8位地址。每发送一个地址字节后,主机都需要等待从机的应答信号。
  5. 重新发送起始信号:在字地址写入完成后,主机需要再次发送一个起始信号,以切换到读数据模式。
  6. 发送读控制命令:主机发送读控制命令到从机,设置读写控制位为高电平,表示将对从机进行读数据操作。
  7. 接收数据:从机接收到读控制命令后,会开始输出数据。主机在接收到从机回传的应答信号后,开始接收从机传回的单字节数据。数据是逐位接收的,直到接收完一个完整的字节。
  8. 发送非应答信号(可选):如果主机只需要读取一个字节的数据,则在接收完数据后,它会向从机发送一个非应答信号(即将SDA保持为高电平),表示不再继续读取数据。
  9. 发送停止信号:最后,主机发送停止信号到从机,表示一次通信的结束

iic设备出问题的时候怎么排查

1. 基本检查

  • 确认设备连接:首先检查I²C设备的连接是否正确,包括引脚焊接、线材是否断线或接触不良等问题。
  • 检查电源:确保I²C设备及其相关电路正常供电,没有电源波动或不足的情况。

2. 波形抓取与分析

  • 使用示波器:利用示波器抓取I²C总线上的SCL(时钟线)和SDA(数据线)波形,以便进行详细的时序分析。
  • 检查波形异常:观察波形是否存在异常,如尖波、斜波、杂波等不符合I²C设备的波形。这些异常可能由于驱动能力不足、上拉电阻设置不当、总线负载过重等原因引起。

3. 硬件问题排查

  • 检查上拉电阻:确认I²C总线上是否按从机要求加了合适阻值的上拉电阻(通常为2~10kΩ)。阻值的选择应根据从机芯片手册或模块手册的要求进行。
  • 引脚配置:检查I²C设备的引脚配置是否正确,特别是SDA和SCL引脚是否配置为开漏输出模式。对于软件模拟I²C,还需要确保GPIO被正确配置。
  • 检查从机地址:确认从机地址是否正确,以及是否存在与其他I²C设备的地址冲突。

4. 通信协议与速率匹配

  • 通信速率匹配:确保I²C主机的通信速率与从机的通信速率相匹配。如果速率不匹配,可能会导致通信失败。
  • 协议一致性:检查I²C通信协议的一致性,包括起始信号、停止信号、数据传输格式、应答信号等。

5. 软件问题排查

  • 初始化代码:检查I²C设备的初始化代码是否正确,包括GPIO配置、I²C模块使能、中断配置等。
  • 固件更新:如果可能,尝试更新I²C设备的固件或驱动程序,以修复存在的软件问题。

6. 特定问题排查

  • 死锁问题:如果I²C设备出现死锁现象(即数据线被拉低,主机无法拉高),可以按照以下方法排查:

    • 检查是否存在从机设备在返回数据时未发送完成,而主机时钟消失的情况。这可能导致从机等待时钟信号,产生钳住并拉低SDA的现象。
    • 尝试在系统复位时提供足够的时钟信号,以解锁SDA。
  • 中断问题:如果I²C通信过程中无法产生中断或中断处理异常,可以检查中断号是否正确、中断脚电平是否异常、IC供电电平是否等于中断电平等问题。

上拉电阻对iic速率有没有影响?

        有影响。

  1. 上升时间

    • 上拉电阻的阻值直接影响I²C总线上信号的上升时间。电阻越大,上拉至高电平的速度就越慢,这会导致数据传输速率受限。
    • 为了保证数据传输速率,需要根据I²C总线的最大频率来确定合适的上升时间,并据此选择阻值。一般来说,I²C总线标准建议的上升时间应小于300ns。
  2. 寄生电容

    • I²C总线上的寄生电容(包括引脚电容、PCB导线寄生电容等)与上拉电阻形成RC充电回路。这个回路会影响信号的上升沿速率,从而影响数据传输速率。
    • 较大的寄生电容需要较小的上拉电阻来保持较快的上升沿速率,但过小的电阻又会增加功耗和可能的电流冲击。
  3. 功耗与电流限制

    • 上拉电阻上会持续消耗一定的功率(P=I²R),虽然这部分功耗通常很小,但在低功耗设计中仍需考虑。
    • 同时,I²C总线规范定义了每个总线上的设备在拉低线路时能够承受的最大电流(灌电流)。上拉电阻的阻值应确保即使所有挂载的设备同时尝试将线路拉低,也不会超过任何单个设备的最大灌电流规格。

26、pwm输入捕获定时器怎么工作的

        主要基于定时器的捕获单元和外部PWM信号的交互。

        PWM输入捕获是指定时器能够捕获外部PWM信号的周期和占空比。在STM32等微控制器中,定时器的捕获单元通常具有多个捕获通道,这些通道可以配置为输入捕获模式,用于检测外部信号的边沿变化。

PWM输入捕获的工作过程:

  1. 信号接入

    • 外部PWM信号通过定时器的输入通道接入捕获单元。
  2. 边沿检测

    • 捕获单元内部的边沿检测器会检测外部PWM信号的上升沿或下降沿。
    • 当检测到边沿变化时,定时器当前的计数值会被捕获并存入捕获比较寄存器中。
  3. 捕获周期和占空比

    • 在PWM输入模式下,定时器通常会使用两个捕获通道来同时捕获PWM信号的周期和占空比。
    • 假设使用捕获通道1和捕获通道2,捕获通道2会在PWM信号的上升沿将主计数器清除并开始向上计数。随后,捕获通道1会在PWM信号的下一个下降沿捕获当前计数值,这个值即为PWM信号的高电平周期(或占空比的一部分)。
    • 当捕获通道2再次检测到PWM信号的下一个上升沿时,此时计数器的值即为PWM信号的完整周期。同时,计数器会被清除以准备下一次测量。
  4. 中断处理

    • 在捕获到PWM信号的周期和占空比后,定时器可以产生中断或DMA请求,以便CPU能够及时处理捕获的数据。

27、绿色发光二极管的导通压降大概是多少伏?如果一个LED指示灯没有定义颜色,红、绿、黄、橙、蓝、白色你会选择哪一种,为什么?

2V 左右。按照使用习惯,电源指示灯用红色,信号指示灯用绿色,这两种颜色的LED灯技术最成熟,价格最便宜。

28、请简述TVS瞬态电压抑制二极管的工作原理。

        当TVS(Transient Voltage Suppressor,瞬态电压抑制二极管)上的电压超过一定幅度时,器件迅速导通,从而将浪涌能量泄放掉,并将浪涌电压限制在一定的幅度。
        工作原理基于二极管的雪崩击穿效应,能够在极短的时间内吸收大量的能量,从而保护电路不受损害。

  1. 正常工作状态:在正常工作电压下,TVS二极管表现为高阻抗状态,几乎不导电,因此不会影响电路的正常工作。

  2. 雪崩击穿:当电路中出现电压瞬态冲击,如静电放电(ESD)、电感负载切换、雷击等,导致电压超过TVS二极管的击穿电压时,TVS二极管会迅速从高阻抗状态转变为低阻抗状态,即雪崩击穿。

  3. 能量吸收:在雪崩击穿状态下,TVS二极管能够导电并将瞬态电压限制在一个安全水平,同时吸收和分流这些高能量的瞬态电流,防止电压冲击对后续电路造成损害。

  4. 恢复高阻抗:一旦瞬态冲击结束,TVS二极管会迅速恢复到高阻抗状态,电路可以继续正常工作。

  5. 极性保护:TVS二极管分为单向和双向两种类型。单向TVS二极管只在一个方向上导电,而双向TVS二极管则可以在两个方向上导电,分别对应正向和反向电压冲击。

  6. 响应时间:TVS二极管的响应时间非常快,通常在皮秒(ps)级别,远快于电路中其他保护元件的响应时间,因此能够有效地保护电路。

29、请列举您知道的二极管型号。

1N4148、1N5817、1N5819、1N5820、1N5822、1N4001、1N4007、SR160、SR360、BAT54A、BAT54C、BAT54S

30、请列举您知道的NPN三极管型号。

2N2222、2N3904、2N5550、2N5551、M8050、S9013、S9014、S9018

相关文章:

硬件工程师面试题 21-30

把常见的硬件面试题进行总结,方便及时巩固复习。其中包括网络上的资源、大佬们的大厂面试题,其中可能会题目类似,加强印象即可。 更多硬件面试题:硬件工程师面试题 1-10硬件工程师面试题 11-20 21、单片机最小系统需要什么&#x…...

深度学习中的HTTP:从请求到响应的计算机网络交互

在现代深度学习应用中,HTTP(超文本传输协议)不仅仅是网页浏览的基础协议,它也在机器学习和人工智能的服务架构中扮演着至关重要的角色。本文将深入探讨HTTP在深度学习中的应用,并阐明它如何支持模型的训练、推理及API服…...

基于submitit实现Python函数的集群计算

一、项目介绍 Submitit是一款轻量级工具,旨在简化Python函数在Slurm集群上的提交过程。它不仅提供了对作业结果、日志文件等的无缝访问,更让开发者能够在本地执行与Slurm集群间切换自如,极大地提高了代码的可移植性和灵活性。 Slurm作为一种…...

开源GTKSystem.Windows.Forms框架:C# Winform跨平台运行深度解析

开源GTKSystem.Windows.Forms框架:C# Winform跨平台运行深度解析 一、跨平台框架的崛起 1.1 跨平台技术的现状与需求 在当今快速发展的科技时代,软件开发的需求日益多样化。随着移动设备和操作系统的不断涌现,开发者面临着前所未有的挑战&…...

uniapp Stripe 支付

引入 Stripe npm install stripe/stripe-js import { loadStripe } from stripe/stripe-js; Stripe 提供两种不同类型组件 Payment Element 和 Card Element:如果你使用的是 Payment Element,它是一个更高级别的组件,能够自动处理多种支…...

虚拟机用网线连其他设备(ROS多机网络配置)

电脑配置 把局域网的网线插入电脑,点击这边 配置以太网的IP 比如说我ROS主机的IP想设为192.168.144.10,那我笔记本的以太网IP可以设为192.168.144.8。 假设还有另外一个电脑(ROS从机),他的IP被设置未192.168.144.4…...

20241218-信息安全理论与技术复习题

20241218-信息安全理论与技术复习题 一、习题1 信息安全的基本属性是(D )。 A、机密性 B、可用性 C、完整性 D、上面 3 项都是 “会话侦听和劫持技术” 是属于(B)的技术。 A、 密码分析还原 B、 协议漏洞渗透 C、 应用漏洞分析与渗透 D、 D…...

家谱管理系统|Java|SSM|VUE| 前后端分离

【技术栈】 1⃣️:架构: B/S、MVC 2⃣️:系统环境:Windowsh/Mac 3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7 4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库…...

音频进阶学习九——离散时间傅里叶变换DTFT

文章目录 前言一、DTFT的解释1.DTFT公式2.DTFT右边释义1) 复指数 e − j ω n e^{-j\omega n} e−jωn2)序列与复指数相乘 x [ n ] ∗ e − j ω n x[n]*e^{-j\omega n} x[n]∗e−jωn复指数序列复数的共轭正交正交集 3)复指数序列求和 3.DTF…...

pytorch 计算图中的叶子节点介绍

1. 什么是叶子节点? 在 PyTorch 的自动微分机制中,叶子节点(leaf node) 是计算图中: 由用户直接创建的张量,并且它的 requires_gradTrue。这些张量是计算图的起始点,通常作为模型参数或输入变…...

CSS系列(42)-- Backdrop Filter详解

前端技术探索系列:CSS Backdrop Filter详解 🎨 致读者:探索背景滤镜的艺术 👋 前端开发者们, 今天我们将深入探讨 CSS Backdrop Filter,这个强大的视觉效果特性。 基础效果 🚀 模糊效果 /…...

【文献精读笔记】Explainability for Large Language Models: A Survey (大语言模型的可解释性综述)(一)

****非斜体正文为原文献内容(也包含笔者的补充),灰色块中是对文章细节的进一步详细解释! 三、传统微调范式(Traditional Fine-Tuning Paradigm) 在这个范式中,首先在大量未标记的文本数据上预…...

ChatGPT 与 AGI:人工智能的当下与未来走向全解析

在人工智能的浩瀚星空中,AGI(通用人工智能)无疑是那颗最为璀璨且备受瞩目的星辰。OpenAI 对 AGI 的定义为“在最具经济价值的任务中超越人类的高度自治系统”,并勾勒出其发展的五个阶段,当下我们大多处于以 ChatGPT 为…...

Redis - 1 ( 11000 字 Redis 入门级教程 )

一:服务端高并发分布式结构演进之路 1.1 常见概念 概念定义生活例子类比应用(Application)/ 系统(System)为完成一整套服务的程序或一组相互配合的程序群。为完成一项任务而组成的由一个人或一群相互配合的人构成的团…...

python opencv的sift特征检测(Scale-Invariant Feature Transform)

sift 官方文档地址:https://docs.opencv.org/4.10.0/da/df5/tutorial_py_sift_intro.html 创建SIFT实例cv2.SIFT.create()特征检测sift.detect描述子sift.compute/sift.detectAndCompute画特征cv2.drawKeypoints 原图 特征点 代码 import cv2first ./12.pngsif…...

Xilinx FPGA的Bitstream比特流加密设置方法

关于Xilinx FPGA的Bitstream比特流加密设置方法更多信息可参阅应用笔记xapp1084。 使用加密bitstream分两个步骤: 将bitstream的AES密钥存储在FPGA芯片内将使用AES密钥加密的Bitstream通过SPI Flash或JTAG加载至FPGA芯片 AES密钥可以存储在两个存储区之一&#x…...

如何通过深度学习提升大分辨率图像预测准确率?

随着科技的不断进步,图像处理在各个领域的应用日益广泛,特别是在医疗影像、卫星遥感、自动驾驶、安防监控等领域中,大分辨率图像的使用已经成为了一项不可或缺的技术。然而,大分辨率图像带来了巨大的计算和存储压力,同…...

Oracle SqlPlus常用命令简介

参考资料 【SQL*Plus】SETシステム変数の設定前後の具体例 目录 一. 执行系命令1.1 执行系统命令1.2 执行sql脚本文件1.2.1 在数据库中执行sql脚本1.2.2 通过sqlplus执行sql脚本 二. show命令2.1 显示SqlPlus中的全部环境变量2.2 显示指定环境变量的设置 三. 时间显示3.1 set …...

【微服务】【Sentinel】认识Sentinel

文章目录 1. 雪崩问题2. 解决方案3. 服务保护技术对比4. 安装 Sentinel4.1 启动控制台4.2 客户端接入控制台 参考资料: 1. 雪崩问题 微服务调用链路中的某个服务故障,引起整个链路中的所有微服务都不可用,这就是雪崩。动图演示: 在微服务系统…...

C++并行处理支持库 之六

C并行处理支持库 之六 std::promise构造器APIs应用实例 通过使用Futures标准库,我们可以获取异步任务返回值,捕获异步任务引发的异常。异步任务就是在独立线程中启动运行的函数。 这些值以共享状态进行通信,其中异步任务可以写入其返回值&…...

Linux-frp_0.61.1内网穿透的配置和使用

下载frp frp官网 https://gofrp.org/zh-cn/docs/setup/ frp安装包下载地址 https://github.com/fatedier/frp/releases?page1 下载之后在服务器上 解压 tar -zxvf frp_0.61.1_linux_amd64.tar.gztar:一个用于压缩和解压缩的工具。-z:表示使用 gzi…...

SpringBoot集成ECDH密钥交换

简介 对称加解密算法都需要一把秘钥,但是很多情况下,互联网环境不适合传输这把对称密码,有密钥泄露的风险,为了解决这个问题ECDH密钥交换应运而生 EC:Elliptic Curve——椭圆曲线,生成密钥的方法 DH&…...

深度学习的魔法世界

技术文章:深度学习的魔法世界 引言 嘿,今天我们要一起探索一个非常酷的魔法世界——深度学习!这是一门让计算机变得超级聪明的科学。我们会用最简单的语言来解释深度学习的基本概念,让你们也能轻松理解。 一、深度学习的六大魔…...

【超级详细】Vue3项目上传文件到七牛云的详细笔记

概述 继上一篇笔记介绍如何绑定七牛云的域名之后,这篇笔记主要介绍了如何在Vue3项目中实现文件上传至七牛云的功能。我们将使用Cropper.js来处理图像裁剪,并通过自定义组件和API调用来完成整个流程。 这里直接给出关键部分js代码,上传之前要先…...

设计模式-建造者模式

在面向对象的设计中,建造者模式(Builder Pattern) 是一种常用的设计模式,它属于创建型模式,旨在将复杂对象的创建与其表示分离。通过该模式,我们可以一步一步地构造一个复杂的对象,避免构造函数…...

springboot+vue实现SSE服务器发送事件

思路 一个基于订阅发布机制的SSE事件。客户端可以请求订阅api(携带客户端id),与服务器建立SSE链接;后续服务器需要推送消息到客户端时,再根据客户端id从已建立链接的会话中找到目标客户端,将消息推送出去。…...

IDEA | SpringBoot 项目中使用 Apifox 上传接口

目录 1 安装 Apifox Helper 插件2 获取 Apifox 的 API 访问令牌3 IDEA 中设置 API 访问令牌4 IDEA 中上传接口5 常见问题5.1 如何自动设置目录名5.2 如何自动设置接口名5.3 如何更改上传位置 Apifox 官方指南: https://apifox.com/help/applications-and-p…...

SpringBoot基础二

扩展SpringBoot 扩展SpringBoot中的SpringMVC的默认配置 SpringBoot默认已经给我们做了很多SpringMVC的配置,哪些配置? 1、视图解析器ViewResolver 2、静态资料的目录 3、默认首页index.html 4、图标名字和图标所在目录,favicon.ico 5、类型转…...

力扣第129题:求根到叶子节点数字之和 - C语言解法

力扣第129题:求根到叶子节点数字之和 - C语言解法 题目描述 给定一个二叉树,求根到叶子节点的数字之和。 每条从根到叶子的路径都代表一个数字。例如,根到叶子路径 1->2->3 代表数字 123。返回所有路径数字之和。 示例 1&#xff1…...

图像处理-Ch7-小波函数

个人博客!无广告观看,因为这节内容太多了,有点放不下,分了三节 文章目录 多分辨率展开(Multi-resolution Expansions)序列展开(Series Expansions)尺度函数(Scaling Function)例:哈尔尺度函数(Haar scaling func)多分…...

Unity中实现转盘抽奖效果(一)

实现思路: 旋转转盘的z轴,开始以角加速度加速到角速度最大值,结束的时候,以角加速度减速使角速度减少到0,然后转盘z轴旋转的角度就是加上每秒以角速度数值大小,为了使角度不能一直增大,对360度…...

小程序基础 —— 07 创建小程序项目

创建小程序项目 打开微信开发者工具,左侧选择小程序,点击 号即可新建项目: 在弹出的新页面,填写项目信息(后端服务选择不使用云服务,开发模式为小程序,模板选择为不使用模板)&…...

Apache Commons Pool :介绍与使用

Apache Commons Pool :介绍与使用 什么是 commons-pool2? commons-pool2 是 Apache Commons 提供的一个开源对象池实现框架。它旨在为应用程序提供通用的对象池支持,方便开发者管理资源(如数据库连接、网络连接等)复…...

(二)编译原生SDK以及配置交叉编译链

文章目录 编译原生SDKLinuxSDK的安装第一步解压LinuxSDK第二步安装依赖软件第三步解压Buildroot的dl文件 Linux系统镜像编译、生成第一步 配置编译环境第二步 编译 LinuxSDK编译上面配置好的 环境配置编译 LinuxSDK配置内核选项配置 Buildroot编译 Qt 库 编译生成 Linux 系统镜…...

YK人工智能(三)——万字长文学会torch深度学习

2.1 张量 本节主要内容: 张量的简介PyTorch如何创建张量PyTorch中张量的操作PyTorch中张量的广播机制 2.1.1 简介 几何代数中定义的张量是基于向量和矩阵的推广,比如我们可以将标量视为零阶张量,矢量可以视为一阶张量,矩阵就是…...

【游戏设计原理】41 - 游戏的核心

1. 如何理解? 这条原理主要在讲述“游戏核心”这一概念的重要性及其在游戏开发中的作用。游戏的核心是指决定游戏整体玩法和体验的核心元素,它通常是游戏的主要机制、目标或动作方式。理解这一原理时,我们可以从以下几个层面来考虑&#xff…...

GraalVM:云原生时代的Java虚拟机

1. 概述 GraalVM是由Oracle公司开发的一款高性能、多语言的虚拟机平台。它不仅兼容传统的JVM字节码执行,还引入了即时编译(JIT)技术的革新,以及对多种编程语言的支持。GraalVM旨在通过提供更高效的执行环境来满足云计算环境中日益…...

goView二开低代码平台1.0

官网文档地址:GoView 说明文档 | 低代码数据可视化开发平台 简介:GoView 是一个拖拽式低代码数据可视化开发平台,通过拖拽创建数据大屏,使用Vue3框架,Ts语言和NaiveUI组件库创建的开源项目。安装步骤和地址文档里都有…...

【golang】go errors 处理错误追踪打印堆栈信息

目录 背景使用参考 背景 使用原生go语言编程时,常常需要处理错误,然而golang中没有像java/python等其他语言的try-catch方式一样的方式来处理异常事件,只能通过函数返回值接收并处理错误。 在实践中,由于牛马的不熟练或随意处理错…...

【brew安装失败】DNS 查询 raw.githubusercontent.com 返回的是 0.0.0.0

从你提供的 nslookup 输出看,DNS 查询 raw.githubusercontent.com 返回的是 0.0.0.0,这通常意味着无法解析该域名或该域名被某些 DNS 屏蔽了。这种情况通常有几个可能的原因: 可能的原因和解决方法 本地 DNS 问题: 有可能是你的本…...

【Python系列】Python 连接 PostgreSQL 数据库并查询数据

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

深度学习利用Kaggle和Colab免费GPU资源训练

这两个平台,我先用的Colab,在修改完无数bug,成功训练完一个epoch后,超时了,查阅了官网资料,之后应该还可以用,但这个限制是动态的,你可能第二天就可以用,也没准下个月。遂…...

WebAssembly 学习笔记

WASM 概述 wasm最初是为了在浏览器获得接近原生的性能体验。 支持将其他语言实现的程序编译到wasm字节码,引入到浏览器由JS交互调用。 后又有了脱离JS的wasm运行时,可以直接运行wasm。 从而促成了wasm跨平台分发的能力。 但由于运行时的安全沙箱限制&a…...

二、github基础

Github基础 备用github.com网站一、用户界面-Overview(概览)1用户信息2 导航栏3 热门仓库4 贡献设置5贡献活动6搜索和筛选7自定义收藏8贡献统计9最近活动10其他链接 二、用户界面-Repositories(仓库)1 libusb_stm322 savedata3 Fi…...

「下载」智慧文旅运营综合平台解决方案:整体架构,核心功能设计

智慧文旅运营综合平台,旨在通过集成大数据、云计算、物联网、人工智能等先进技术,为景区、旅游企业及相关管理机构提供一站式的智慧化运营服务。 智慧文旅运营综合平台不仅能够提升游客的游览体验,还能帮助景区管理者实现资源的优化配置和业务…...

《探寻真正开源的大模型:开启AI创新新纪元》

《探寻真正开源的大模型:开启AI创新新纪元》 一、开源大模型崛起:AI 发展的新曙光二、开源大模型的 “庐山真面目”三、明星开源大模型闪耀登场(一)LLaMA 3:实力强劲的开源先锋(二)Phi-3&#x…...

麒麟信安云在长沙某银行的应用入选“云建设与应用领航计划(2024)”,打造湖湘金融云化升级优质范本

12月26日,2024云计算产业和标准应用大会在北京成功召开。大会汇集政产学研用各方专家学者,共同探讨云计算产业发展方向和未来机遇,展示云计算标准化工作重要成果。 会上,云建设与应用领航计划(2024)建云用…...

C#如何操作数据库

C#如何操作数据库 前言1、查询操作2、增删改操作3、需要返回id主键的sql语句执行 前言 本文主要交代如何通过引用 using MySql.Data.MySqlClient;来操作数据库 需要导入.dll文件 例如:在本地Mysql下载目录下->Connecter NET 8.0->Assemblies->net5.0->…...

c++领域展开第八幕——类和对象(下篇 初始化列表、类型转换、static成员)超详细!!!!

文章目录 前言一、初始化列表二、类型转换三、static成员总结 前言 上篇博客我们实现了一个简单的日期类,基本的类和对象是清楚了 今天我们再来学习后面的一些类和对象的语法,慢慢的完善所学的东西 fellow me 一、初始化列表 • 之前我们实现构造函数时…...

termux-boot安卓开机自动启动应用

termux安装 github 蓝奏云 v119.1 termux-boot安装 github 蓝奏云 v0.8.1 安装 给权限运行加锁后台 am启动应用命令 am start -n 包名/启动项获取包名和启动入口(图中app为爱玩机工具箱) 例 简黑时钟蓝奏云 包名com.hm.jhclock 桌面启动项com.hm.jh…...