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

【热门主题】000075 探索嵌入式硬件设计的奥秘

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕

共同探索软件研发!敬请关注【宝码香车】
关注描述

csdngif标识

目录

  • 【热门主题】000075 探索嵌入式硬件设计的奥秘
  • 📚一、嵌入式硬件设计概述
    • 📘(一)定义与特点
    • 📘(二)应用领域
  • 📚二、嵌入式硬件设计原则
    • 📘1. 需求分析明确
    • 📘2. 模块化设计
    • 📘3. 低功耗设计
    • 📘4. 可靠性设计
    • 📘5. 可测试性设计
  • 📚三、嵌入式硬件关键技术
    • 📘1. SoC 技术集成化和模块化设计,降低成本提高性能
    • 📘2. 低功耗设计技术动态电压调整、动态电源管理等方法
    • 📘3. 高速接口技术满足大数据量传输和高速通信需求
    • 📘4. 嵌入式操作系统管理系统资源,提供任务调度和通信服务
  • 📚四、嵌入式硬件设计流程
    • 📘1. 需求分析整理电路功能模块和性能指标要求
    • 📘2. CPU 选型性价比高、容易开发、可扩展性好
    • 📘3. 参考设计选择选择成功的参考设计进行验证
    • 📘4. 元器件选型遵循普遍性、高性价比、采购方便等原则
    • 📘5. 原理图修改参考多个成功设计,确定正确连接方式
    • 📘6. 遵循设计原则数字电源和模拟电源分割等原则
    • 📘7. 审核与自审严格审查原理图,确保正确性和可靠性
  • 📚五、嵌入式硬件设计未来发展趋势
    • 📘1. 更高的计算效率和更低的功耗优化算法、采用先进处理器架构和低功耗设计技术。
    • 📘2. 边缘计算的普及减少数据传输延迟和网络拥塞,支持本地计算。
    • 📘3. 与物联网的深度融合注重实时数据采集、传输和处理,成为物联网重要部分。
    • 📘4. 软硬件协同设计发挥协同优势,提高系统性能和功耗效率。
    • 📘5. 安全性和可靠性的提升随着应用广泛,安全性和可靠性愈发重要。


📚📗📕📘📖🕮💡📝🗂️✍️🛠️💻🚀🎉🏗️🌐🖼️🔗📊👉🔖⚠️🌟🔐⬇️·正文开始⬇️·🎥😊🎓📩😺🌈🤝🤖📜📋🔍✅🧰❓📄📢📈 🙋0️⃣1️⃣2️⃣3️⃣4️⃣5️⃣6️⃣7️⃣8️⃣9️⃣🔟🆗*️⃣#️⃣

【热门主题】000075 探索嵌入式硬件设计的奥秘

📚一、嵌入式硬件设计概述

嵌入式硬件设计图片描述

嵌入式系统作为现代技术的重要组成部分,在多个领域发挥着关键作用。本部分将深入介绍嵌入式系统的定义、特点以及其广泛的应用领域。

📘(一)定义与特点

专用性:嵌入式系统是针对特定应用而设计的,软硬件高度集成,以优化满足特定需求。例如,在智能家居设备中,嵌入式系统需要根据家居环境和用户需求进行定制化设计,实现对灯光、温度、电器等的智能控制。
低功耗:由于常需长时间运行且可能由电池供电,嵌入式系统普遍采用低功耗设计。这在消费电子领域尤为重要,如智能手机、平板电脑等设备,需要在保证性能的同时尽可能降低功耗,以延长电池续航时间。参考资料中提到,“嵌入式系统低功耗设计是应当前电子产品的发展趋势而产生的需求”,通过选用超低功耗的外围器件和接口、低功耗功能支持的主控 SOC 以及功耗和负载符合需求的电源管理 IC 等措施,可以实现系统的低功耗设计。
小型化:受应用场景限制,嵌入式系统体积小巧,便于安装与集成。在医疗设备中,嵌入式系统需要集成到小型的医疗仪器中,如心脏起搏器、血糖仪等,这就要求系统具有高度的小型化设计。
实时性:在工业自动化、医疗设备等领域,嵌入式系统需具备快速响应和实时处理能力。例如,在工业自动化生产线中,嵌入式系统需要实时监测生产过程中的各种参数,并及时作出调整,以确保生产线的高效稳定运行。
高可靠性:嵌入式系统一旦部署,往往难以进行维护,因此必须具备高可靠性,以保证长期稳定运行。在航空航天领域,嵌入式系统的可靠性至关重要,任何故障都可能导致严重的后果。

📘(二)应用领域

工业控制:嵌入式系统在工业控制领域确保生产线高效稳定运行。通过实时监测和控制生产过程中的各种参数,如温度、压力、流量等,实现自动化生产,提高生产效率和产品质量。例如,在汽车制造生产线中,嵌入式系统可以控制机器人进行精确的焊接、装配等操作。
消费电子:为消费电子产品提供丰富功能和便捷体验。从智能手机、平板电脑到智能家居设备,嵌入式系统无处不在。它可以实现高清视频播放、游戏娱乐、智能语音助手等功能,满足用户对消费电子产品的多样化需求。
汽车领域:在汽车电子控制系统中发挥核心作用。从发动机控制、制动系统到车载娱乐系统,嵌入式系统实现了对汽车各个部件的精确控制和智能化管理。例如,现代汽车中的电子稳定控制系统(ESP)就是通过嵌入式系统实时监测车辆的行驶状态,并在必要时进行干预,以提高行驶安全性。
医疗设备:为诊断和治疗提供精准技术支持。医疗影像设备、心脏起搏器、体征监测设备等都离不开嵌入式系统。它可以实现对患者生理参数的实时监测、图像的清晰显示以及精确的治疗控制,为医疗行业提供了强大的技术支持。参考资料中提到,“嵌入式系统在医疗仪器中的应用越来越广泛,随着技术的发展,设备从单一器官发展到全身诊断,从模拟到全数字化,从单参数到多参数,从二维成像到三维立体成像等,成像质量不断提高,诊断范围和信息量不断扩充”。

📚二、嵌入式硬件设计原则

遵循正确的设计原则,能确保嵌入式硬件设计的合理性和可靠性。

📘1. 需求分析明确

明确功能需求、性能要求和工作环境是嵌入式硬件设计的基础。在设计之前,需要对项目进行全面的需求分析。功能需求包括系统需要实现的具体功能,例如数据采集、信号处理、控制输出等。性能要求则涵盖了处理速度、存储容量、通信带宽等方面。工作环境包括温度、湿度、电磁干扰等因素,这些因素会影响元器件的选择和电路的设计。
例如,在工业控制领域,嵌入式系统可能需要在恶劣的环境下长时间稳定运行,因此需要选择具有高可靠性和抗干扰能力的元器件。在消费电子领域,产品的体积和功耗可能是重要的考虑因素,需要选择小型化、低功耗的元器件。

📘2. 模块化设计

模块化设计可以降低设计复杂度,提高可维护性和可扩展性。将系统划分为多个独立的模块,每个模块完成特定的功能。这样,在设计和调试过程中,可以单独对每个模块进行测试和优化,提高开发效率。同时,当需要对系统进行升级或扩展时,可以只对相关的模块进行修改,而不会影响整个系统的稳定性。
例如,在一个智能家居系统中,可以将系统分为传感器模块、控制模块、通信模块等。每个模块都可以独立开发和测试,当需要添加新的功能时,只需要添加相应的模块即可。

📘3. 低功耗设计

采用低功耗元器件和优化电路设计可以降低嵌入式系统的功耗。在电池供电的设备中,低功耗设计尤为重要,可以延长设备的续航时间。选择低功耗的微控制器、传感器、通信模块等元器件,可以有效降低系统的功耗。同时,通过优化电路设计,如降低工作电压、减少不必要的电路元件等,也可以降低功耗。
参考资料中提到了低功耗嵌入式系统设计的 10 个技巧,包括保持整个电路板的工作电压低、选择低功耗芯片、优化无线模块的功耗、采用电源门控技术、选择合适的电源等。这些技巧可以帮助设计工程师实现低功耗设计。
例如,在可穿戴设备中,需要选择低功耗的微控制器和传感器,同时采用电源管理技术,在设备不使用时进入低功耗模式,以延长电池续航时间。

📘4. 可靠性设计

选用高可靠性元器件和进行电路保护设计可以提高嵌入式系统的可靠性。在选择元器件时,要考虑其可靠性、稳定性和寿命等因素。同时,进行电路保护设计,如过压保护、过流保护、静电保护等,可以防止外部因素对系统造成损坏。
例如,在汽车电子领域,嵌入式系统需要在恶劣的环境下工作,因此需要选择具有高可靠性的元器件,并进行严格的电路保护设计,以确保系统的稳定性和安全性。

📘5. 可测试性设计

预留测试接口和测试点,便于测试和调试。在设计过程中,要考虑系统的可测试性,预留测试接口和测试点,以便在开发和生产过程中进行测试和调试。测试接口可以包括 JTAG、UART、SPI 等,测试点可以包括电源、信号、地等。
参考资料中提到了嵌入式系统的可测试性与测试方法,包括模块化设计、接口设计、诊断功能设计、可维护性设计等原则。这些原则可以帮助设计工程师提高系统的可测试性。
例如,在一个嵌入式系统开发项目中,可以预留 JTAG 接口和 UART 接口,以便在开发过程中进行程序烧录和调试。同时,可以在电路板上设置测试点,以便在生产过程中进行功能测试和质量检测。

📚三、嵌入式硬件关键技术

关键技术是嵌入式硬件设计不断发展的动力。

📘1. SoC 技术集成化和模块化设计,降低成本提高性能

SoC(System on Chip)技术将处理器、存储器、外设接口等多种功能模块集成在单个芯片上,实现了高度的集成化和模块化设计。SoC 不仅降低了系统的复杂度和成本,还提高了系统的性能和可靠性。例如,在移动设备如智能手机和平板电脑中,通常包含用于处理应用程序和无线信号的 SoC,它集成了中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、内存控制器、输入 / 输出接口以及电源管理单元(PMU)等,使得设备在体积小巧的同时具备强大的功能。

📘2. 低功耗设计技术动态电压调整、动态电源管理等方法

低功耗设计技术包括动态电压调整(DVS)、动态电源管理(DPM)、低功耗模式设计等多种方法。这些方法通过优化系统的电源管理和功耗分配策略来降低系统的整体功耗。参考资料中提到了低功耗嵌入式系统设计的 10 个技巧,如保持整个电路板的工作电压低、选择低功耗芯片、优化无线模块的功耗、采用电源门控技术、选择合适的电源等。例如,在可穿戴设备中,需要选择低功耗的微控制器和传感器,同时采用电源管理技术,在设备不使用时进入低功耗模式,以延长电池续航时间。

📘3. 高速接口技术满足大数据量传输和高速通信需求

随着数据传输速率的不断提高,高速接口技术如 USB 3.0、HDMI 2.0、Ethernet 10G 等在嵌入式系统中得到广泛应用。这些高速接口技术能够满足大数据量传输和高速通信的需求。例如,在嵌入式 Linux 下高速 USB 主控制器的设计与实现中,采用 AT91RM9200 处理器外扩 ISP1761 USB 控制器方案,解决了嵌入式系统下 USB 设备的传输速度问题。ISP1761 芯片内集成了 64KB 的高速缓冲,单次处理数据达 32KB,极大地提升了系统的处理性能。

📘4. 嵌入式操作系统管理系统资源,提供任务调度和通信服务

嵌入式操作系统是嵌入式系统的重要组成部分之一,它负责管理系统的资源、提供任务调度和通信服务等功能。常见的嵌入式操作系统包括 μC/OS-II、FreeRTOS、Linux 等。例如,在嵌入式系统的软件设计中,选择具有低功耗优化的操作系统,如 FreeRTOS 的 Tickless Idle,就是一种很好的系统策略支持,可以降低应用对整体系统的负载。

📚四、嵌入式硬件设计流程

详细的设计流程是确保嵌入式硬件设计成功的关键步骤。

📘1. 需求分析整理电路功能模块和性能指标要求

在进行嵌入式硬件设计之前,首先需要详细理解设计需求,从需求中整理出电路功能模块和性能指标要求。这一步骤至关重要,因为它为后续的设计工作提供了明确的方向。例如,在设计一个工业控制系统时,需要明确系统需要实现的功能,如实时监测温度、压力等参数,控制电机的启停等。同时,还需要确定性能指标要求,如测量精度、响应时间、数据处理速度等。

📘2. CPU 选型性价比高、容易开发、可扩展性好

根据功能和性能需求制定总体设计方案,对 CPU 进行选型。CPU 选型应满足以下要求:
性价比高:在功能、性能满足需求的前提下,选择价格较为合理的 CPU,以降低成本。例如,可以对比不同品牌和型号的 CPU,选择性能相近但价格更具优势的产品。
容易开发:体现在硬件调试工具种类多,参考设计多,软件资源丰富,成功案例多。这样可以大大缩短开发周期,提高开发效率。例如,选择一款具有丰富开发工具和文档支持的 CPU,开发人员可以更轻松地进行硬件调试和软件开发。
可扩展性好:考虑到未来可能的功能扩展和升级,选择具有良好可扩展性的 CPU。例如,选择具有多个扩展接口和丰富外设资源的 CPU,以便在未来需要时能够方便地添加新的功能模块。

📘3. 参考设计选择选择成功的参考设计进行验证

针对已经选定的 CPU 芯片,选择一个与我们需求比较接近的成功参考设计。一般 CPU 生产商或他们的合作方都会对每款 CPU 芯片做若干款开发板进行验证。厂家最后公开给用户的参考设计图虽说不是产品级的东西,但也应该是经过严格验证的,否则将会影响到他们的芯片推广应用。纵然参考设计的外围电路有可推敲的地方,CPU 本身的管脚连接使用方法也绝对是值得我们信赖的。当然,如果万一出现多个参考设计某些管脚连接方式不同的情况,我们可以细读 CPU 芯片手册和勘误表,或者找厂商确认。另外,在设计之前,最好能外借或者购买一块选定的参考板进行软件验证,如果软件验证没有问题,那么硬件参考设计也是可以信赖的。但要注意一点,现在很多 CPU 都有若干种启动模式,我们要自己选一种最适合的启动模式,或者做成兼容设计。

📘4. 元器件选型遵循普遍性、高性价比、采购方便等原则

根据需求对外设功能模块进行元器件选型,元器件选型应该遵守以下原则:
普遍性原则:所选的元器件要是被广泛使用验证过的,尽量少使用冷门、偏门芯片,减少开发风险。例如,在选择传感器时,优先选择市场上常见的、经过大量应用验证的产品,这样可以降低因元器件质量问题导致的开发风险。
高性价比原则:在功能、性能、使用率都相近的情况下,尽量选择价格比较好的元器件,降低成本。通过对比不同品牌和供应商的产品价格和性能,选择性价比最高的元器件。
采购方便原则:尽量选择容易买到、供货周期短的元器件。这可以确保在项目开发过程中不会因为元器件采购困难而延误进度。例如,选择一些在本地电子市场或网上商城容易购买到的元器件。
持续发展原则:尽量选择在可预见的时间内不会停产的元器件。以保证产品的长期生产和维护。
可替代原则:尽量选择 pin to pin 兼容芯片品牌比较多的元器件。这样在某个元器件出现供应问题时,可以快速找到替代产品。
向上兼容原则:尽量选择以前老产品用过的元器件。这样可以利用已有的开发经验,减少开发难度。
资源节约原则:尽量用上元器件的全部功能和管脚。以提高元器件的利用率,降低成本。

📘5. 原理图修改参考多个成功设计,确定正确连接方式

对选定的 CPU 参考设计原理图外围电路进行修改。修改时对于每个功能模块都要找至少 3 个相同外围芯片的成功参考设计,如果找到的参考设计连接方法都是完全一样的,那么基本可以放心参照设计,但即使只有一个参考设计与其他的不一样,也不能简单地按少数服从多数的原则,而是要细读芯片数据手册,深入理解那些管脚含义,多方讨论,联系芯片厂技术支持,最终确定科学、正确的连接方式,如果仍有疑义,可以做兼容设计。这是整个原理图设计过程中最关键的部分,我们必须做到以下几点:
对于每个功能模块要尽量找到更多的成功参考设计,越难的应该越多。成功的参考设计是 “前人” 的经验和财富,我们理当借鉴吸收,站在 “前人” 的肩膀上,也就提高了自己的起点。
要多向权威请教、学习,但不能迷信权威,因为人人都有认知误差,很难保证对哪怕是自己最了解的事物总能做出最科学的理解和判断,开发人员一定要在广泛调查、学习和讨论的基础上做出最科学正确的决定。
如果是参考已有的老产品设计,设计中要留意老产品有哪些遗留问题,这些遗留问题与硬件哪些功能模块相关,在设计这些相关模块时要更加注意推敲,不能机械照抄原来设计,比如我们老产品中的 IDE 经常出问题,经过仔细斟酌,广泛讨论和参考其他成功设计,发现我们的 IDE 接口有两个管脚连线方式确实不规范。还有,针对 FGPI 通道丢失视频同步信号的问题,可以在硬件设计中引出硬件同步信号管脚,以便进一步验证,更好发现问题的本质。

📘6. 遵循设计原则数字电源和模拟电源分割等原则

硬件原理图设计还应该遵守一些基本原则,这些基本原则要贯彻到整个设计过程,虽然成功的参考设计中也体现了这些原则,但因为是 “拼” 出来的原理图,所以我们还要随时根据这些原则来设计审查原理图,这些原则包括:
数字电源和模拟电源分割:将数字电路和模拟电路的电源分开,以减少数字电路对模拟电路的干扰。
数字地和模拟地分割,单点接地,数字地可以直接接机壳地(大地),机壳必须接地,以保护用户人身安全。
保证系统各模块资源不能冲突,例如:同一 I2C 总线上的设备地址不能相同等。
阅读系统中所有芯片的手册(一般是设计参考手册),看它们未用的输入管脚是否需要做外部处理,是要上拉、下拉,还是悬空,如果需要上拉或下拉,则一定要做相应处理,否则可能引起芯片内部振荡,导致芯片不能正常工作。
在不增加硬件设计难度的情况下尽量保证软件开发方便,或者以较小的硬件设计难度来换取更多方便、可靠、高效的软件设计,这点需要硬件设计人员懂得底层软件开发调试,要求较高。
功耗问题,设计时尽量降低功耗。例如,选择低功耗的元器件,优化电路设计,降低工作电压等。
产品散热问题,可以在功耗和发热较大的芯片增加散热片或风扇,产品机箱也要考虑这个问题,不能把机箱做成保温盒,电路板对 “温室” 是感冒的。还要考虑产品的安放位置,最好是放在空间比较大,空气流动畅通的位置,有利于热量散发出去。

📘7. 审核与自审严格审查原理图,确保正确性和可靠性

硬件原理图设计完成之后,设计人员应该按照以上步骤和要求首先进行自审,自审后要有 95% 以上的把握和信心,然后再提交给他人审核,其他审核人员同样按照以上要求对原理图进行严格审查,如发现问题要及时进行讨论分析,分析解决过程同样遵循以上原则和步骤。
设计人员自身应该保证原理图的正确性和可靠性,要做到设计即是审核,严格自审,不要把希望寄托在审核人员身上,设计出现的任何问题应由设计人员自己承担,其他审核人员不负连带责任。

📚五、嵌入式硬件设计未来发展趋势

嵌入式硬件设计在未来呈现出多方面的发展趋势,以下将从几个关键方向进行阐述。

📘1. 更高的计算效率和更低的功耗优化算法、采用先进处理器架构和低功耗设计技术。

随着技术的不断进步,嵌入式系统对计算效率和功耗的要求越来越高。通过优化算法,可以在不增加硬件成本的前提下提高系统的性能。例如,采用更高效的数据处理算法,减少不必要的计算步骤,从而降低功耗。同时,先进的处理器架构能够提供更高的计算能力和更低的能耗。例如,一些新型的处理器采用多核架构和低功耗设计,在满足高性能需求的同时,有效降低了功耗。此外,低功耗设计技术也是实现更高计算效率和更低功耗的重要手段。参考资料中提到了低功耗嵌入式系统设计的多个技巧,如保持整个电路板的工作电压低、选择低功耗芯片、优化无线模块的功耗、采用电源门控技术、选择合适的电源等。通过综合运用这些技术,可以实现嵌入式系统的低功耗设计,提高系统的续航能力和可靠性。

📘2. 边缘计算的普及减少数据传输延迟和网络拥塞,支持本地计算。

边缘计算的兴起为嵌入式硬件设计带来了新的机遇。边缘计算是指将计算能力移至离数据源更近的地方,以减少数据传输延迟和网络拥塞。在嵌入式系统中,边缘计算可以使设备在本地进行更多的计算和处理,减少对云端的依赖。这不仅可以提高系统的响应速度,还可以降低数据传输成本和网络带宽需求。例如,在智能家居系统中,边缘计算可以使设备在本地处理用户的指令,无需将数据上传到云端进行处理,从而提高系统的响应速度和可靠性。此外,边缘计算还可以支持本地数据分析和决策,为用户提供更加个性化的服务。例如,在智能医疗设备中,边缘计算可以在本地分析患者的生理数据,及时发现异常情况并采取相应的措施。

📘3. 与物联网的深度融合注重实时数据采集、传输和处理,成为物联网重要部分。

物联网的快速发展为嵌入式硬件设计带来了广阔的应用前景。嵌入式系统作为物联网的重要组成部分,将更加注重实时数据采集、传输和处理。通过集成各种传感器和通信模块,嵌入式系统可以实现对物理世界的实时感知和数据采集。同时,利用高速通信技术,如 5G、WiFi 6 等,可以将采集到的数据快速传输到云端或其他设备进行处理和分析。例如,在工业物联网中,嵌入式系统可以实时监测生产设备的运行状态,采集生产数据,并将数据上传到云端进行分析和处理,为企业提供智能化的生产管理解决方案。此外,嵌入式系统还可以与物联网平台相结合,实现设备的远程监控和管理,为用户提供更加便捷的服务。

📘4. 软硬件协同设计发挥协同优势,提高系统性能和功耗效率。

软硬件协同设计是嵌入式硬件设计的重要发展趋势之一。通过将硬件设计和软件设计紧密结合起来,可以充分发挥硬件和软件的协同优势,提高系统的性能和功耗效率。在软硬件协同设计中,硬件设计和软件设计不再是独立的过程,而是相互影响、相互制约的。硬件设计需要考虑软件的需求和实现方式,软件设计也需要考虑硬件的性能和资源限制。例如,在设计嵌入式系统时,可以根据软件的需求选择合适的处理器架构和外设接口,同时优化软件算法和代码结构,以充分发挥硬件的性能。此外,软硬件协同设计还可以提高系统的可靠性和可维护性。通过在设计阶段充分考虑硬件和软件的协同工作,可以减少系统的故障点,提高系统的稳定性和可靠性。同时,软硬件协同设计也使得系统的维护和升级更加方便,降低了维护成本。

📘5. 安全性和可靠性的提升随着应用广泛,安全性和可靠性愈发重要。

随着嵌入式系统在各个领域的广泛应用,安全性和可靠性成为了至关重要的问题。在嵌入式硬件设计中,需要采取一系列措施来提高系统的安全性和可靠性。首先,需要选用高可靠性的元器件和进行电路保护设计。参考资料中提到,在选择元器件时,要考虑其可靠性、稳定性和寿命等因素。同时,进行电路保护设计,如过压保护、过流保护、静电保护等,可以防止外部因素对系统造成损坏。其次,需要进行安全设计,如数据加密、身份认证等,保护系统的数据安全和用户隐私。例如,在智能医疗设备中,需要对患者的生理数据进行加密处理,防止数据泄露。此外,还需要进行可靠性测试和验证,确保系统在各种恶劣环境下都能正常工作。例如,进行高温、低温、湿度、振动等环境测试,以及电磁兼容性测试等,确保系统的可靠性和稳定性。

到此这篇文章就介绍到这了,更多精彩内容请关注本人以前的文章或继续浏览下面的文章,创作不易,如果能帮助到大家,希望大家多多支持宝码香车~💕,若转载本文,一定注明本文链接。


整理不易,点赞关注宝码香车

更多专栏订阅推荐:
👍 html+css+js 绚丽效果
💕 vue
✈️ Electron
⭐️ js
📝 字符串
✍️ 时间对象(Date())操作

相关文章:

【热门主题】000075 探索嵌入式硬件设计的奥秘

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【热…...

mac启动jmeter

// 设置使用java8,使用21版本会有问题 export JAVA_HOME/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/ export PATH$JAVA_HOME/bin:$PATH cd /Users/user/software/apache-jmeter-5.1.1 //设置不使用代理 sh jmeter -Jhttp.proxyHost -J…...

JavaScript的作用域与闭包

文章目录 一. 什么是作用域?二. var a 2是如何赋值并添加到作用域中的?三. 作用域链四. js中的各种作用域五. 闭包?六. 参考 今天开始读了《你所不知道的JavaScript(上卷)》的一部分, 自己对于 JS 的理解还是非常浅薄的; 本着学习与分享的目的, 对这本书的第一章的内容进行…...

Qt入门7——Qt事件

目录 1. Qt事件介绍: 2. 事件的处理 示例1:鼠标进入(enterEvent)与离开事件(leaveEvent) 示例2:鼠标点击事件(mousePressEvent) 示例3:鼠标移动事件(mouseMoveEvent) 3. 按键事件 4. 定时器 5. 窗口事件 1. Qt事件介绍&a…...

【Linux操作系统】多线程控制(创建,等待,终止、分离)

目录 一、线程与轻量级进程的关系二、进程创建1.线程创建线程创建函数(pthread)查看和理解线程id主线程与其他线程之间的关系 三、线程等待(回收)四、线程退出线程退出情况线程退出方法 五、线程分离线程的优点线程的缺点 一、线程…...

VR眼镜可视化编程:开启医疗信息系统新纪元

一、引言 随着科技的飞速发展,VR 可视化编程在医疗信息系统中的应用正逐渐成为医疗领域的新趋势。它不仅为医疗教育、手术培训、疼痛管理等方面带来了新的机遇,还在提升患者体验、推动医疗信息系统智能化等方面发挥着重要作用。 在当今医疗领域&#xf…...

数据结构自测题6

第7章 图 自测卷解答 一、单选题(每题1分,共16分) ( C )1. 在一个图中,所有顶点的度数之和等于图的边数的 倍。 A.1/2 B. 1 C. 2 D. 4 ( B )2. 在一个有向图中&#xff0…...

Marvell第四季度营收预计超预期,定制芯片需求激增

芯片制造商Marvell Technology(美满电子科技)(MRVL)在周二发布了强劲的业绩预告,预计第四季度的营收将超过市场预期,得益于企业对其定制人工智能芯片的需求激增。随着人工智能技术的快速发展,特…...

从智能合约到去中心化AI:Web3的技术蓝图

Web3正在成为互联网发展的重要方向,其核心理念是去中心化、用户主权和自治。随着区块链技术、智能合约以及人工智能(AI)等技术的发展,Web3不仅重新定义了数据存储和交易方式,还为更智能化、去中心化的数字生态系统铺平…...

opencvocr识别手机摄像头拍摄的指定区域文字,文字符合规则就语音报警

安装python,pycharm,自行安装。 Python下安装OpenCv 2.1 打开cmd,先安装opencv-python pip install opencv-python --user -i https://pypi.tuna.tsinghua.edu.cn/simple2.2 再安装opencv-contrib-python pip install opencv-contrib-python --user …...

python 笔记之线程同步和死锁

同步: 共享数据: 如果多个线程共同对某个数据修改,则可能出现不可预测的结果,为了保证数据的正确性,需要对多个数据进行同步 同步:一个一个的完成,一个做完另一个才能进来 效率会降低 使用Thre…...

解决Error resolving plugin xxx

问题信息 Error resolving plugin [id: com.android.library, version: 8.6.0] > The request for this plugin could not be satisfied because the plugin is already on the classpath with an unknown version, so compatibility cannot be checked.* Try: > Run wi…...

Word2vec、词向量是什么? |Gensim中word2vec模型的参数定义

前言: 最近在忙毕设,要学习一些AI的技术。很多资料看来看去,感觉只是在大脑皮层表面略过了一下,遂还是决定采用老方法,写博客!!!对了,我也只是一个萌新,博客的…...

<工具 Claude Desktop> 配置 MCP server 连接本地 SQLite, 本机文件夹(目录) 网络驱动器 Windows 11 系统

也是在学习中... 起因: 抖音博客 艾克AI分享 他的视频 #143《Claude开源MCP彻底打破AI的信息孤岛》 提到: Claude开源的MCP太强了,视频后面是快速演示,反正看了好几遍也没弄明白。菜单都不一样,感觉用的不是同一家 Claude. 探…...

Android10 设备死机的问题分析和解决

最近客户反馈一个问题,设备偶现死机。最后解决,在此记录。 目录 一死机的现象 二死机的类型 三 死机问题分析 1 死机现象的梳理 2 死机日志 1)日志分析一 2 日志分析二(正确方案) 一死机的现象 设备死机&#x…...

Linux操作系统性能优化

Linux操作系统性能优化 1. TCP连接出现大量ESTABLISHED连接解决方法 1. TCP连接出现大量ESTABLISHED连接解决方法 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于…...

【图像处理】用Python和OpenCV实现简单的图像增强与特征提取

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 图像处理是计算机视觉领域的重要基础,而图像增强和特征提取是其中的关键技术。本文将详细探讨如何使用 Python 和 OpenCV 实现图像增强与特征提取。通过具体示例,我们将介绍滤波、直方图均衡化、边缘检测…...

【技术学习网站】

小黄鸭:面试鸭 - 程序员求职面试刷题神器,高频编程题目免费刷 编程导航:编程导航 - 程序员一站式编程学习交流社区,做您编程学习路上的导航员 博客园:博客园 - 开发者的网上家园 前端开发:HTTP 缓存 - H…...

程序员需要具备哪些知识?

程序员需要掌握的知识广泛而深厚,这主要取决于具体从事的领域和技术方向。不过,有些核心知识是共通的,就像建房子的地基一样,下面来讲讲这些关键领域: 1. 编程语言: 无论你是搞前端、后端、移动开发还是嵌…...

架构10-可观测性

零、文章目录 架构10-可观测性 1、可观测性 (1)可观测性的背景 **历史沿革:**可观测性最初由匈牙利数学家鲁道夫卡尔曼提出,用于线性动态控制系统。后来,该概念被引入到计算机科学中。**现代意义:**在分…...

Active RIS-Aided ISAC Systems: Beamforming Design and Performance Analysis

文章目录 II. SYSTEM MODELC. Active RIS Model III. PROBLEM FORMULATIONA. Radar Performance MetricC. Optimize Φ V. PERFORMANCE ANALYSIS OF THE RADAR SINR IN ACTIVE RIS-AIDED SENSING SYSTEMSA. Simplified System SettingB. Power Scaling Law AnalysisC. Active R…...

oracle 11g中如何快速设置表分区的自动增加

在很多业务系统中,一些大表一般通过分区表的形式来实现数据的分离管理,进而加快数据查询的速度。分区表运维管理的时候,由于人为操作容易忘记添加分区,导致业务数据写入报错。所以我们一般通过配置脚本或者利用oracle内置功能实现…...

HCIA-openGauss_1_4基本功能介绍

openGauss支持标准SQL SQL是用于访问和处理数据库的标准计算机语言,SQL标准的定义分成核心特性以及可选特性,绝大部分的数据库都没有100%支撑SQL标准。openGuass支持SQL2003标准语法,支持主备部署的高性能可用关系型数据库。openGauss数据库…...

el-menu导航三级数据结构及数据展示

1:数据展示 <el-col><el-menu:default-active"$route.path"class"el-menu-vertical-demo"routerunique-openedbackground-color"#545c64"text-color"#fff"active-text-color"#ffd04b"><div v-for"item …...

全面解析 Transformer:改变深度学习格局的神经网络架构

目录 一、什么是 Transformer&#xff1f; 二、Transformer 的结构解析 1. 编码器&#xff08;Encoder&#xff09; 2. 解码器&#xff08;Decoder&#xff09; 3. Transformer 模型结构图 三、核心技术&#xff1a;注意力机制与多头注意力 1. 注意力机制 2. 多头注意力&…...

R语言机器学习论文(二):数据准备

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据一、数据描述二、数据预处理(一)修改元素名称(二)剔除无关变量(三)缺失值检查(四)重复值检查(五)异常值检查三、描述性统计(一)连续变量数据情…...

Linux之socket编程(一)

前言 网络通信的目的 我们已经大致了解了网络通信的过程: 如果主机A想发送数据给主机B, 就需要不断地对本层的协议数据单元(PDU)封装, 然后经过交换设备的转发发送给目的主机, 最终解封装获取数据. 那么网络传输的意义只是将数据由一台主机发送到另一台主机吗&#xff1f; …...

STM32之SDIO通讯接口和SD卡(九)

STM32F407 系列文章 - SDIO-To-SD Card&#xff08;九&#xff09; 目录 前言 一、SDIO接口 二、SD卡 三、实现程序 1.SD卡结构体参数说明 2.头文件定义 3.函数sd_init() 4.函数HAL_SD_MspInit() 5.函数get_sd_card_info() 6.函数get_sd_card_state() 7.函数sd_read…...

【Rust在WASM中实现pdf文件的生成】

Rust在WASM中实现pdf文件的生成 前言概念和依赖问题描述分步实现pdf转Blob生成URL两种方式利用localstorage传递参数处理图片Vec<u8>到pdf格式的Vec<u8>使用rust创建iframe显示pdf的Blob最后 前言 实现了一个通用的前端jpg转pdf的wasm,因为动态响应框架无法直接打…...

蓝桥杯真题——砍竹子(C语言)

问题描述 这天, 小明在砍竹子, 他面前有 n 棵竹子排成一排, 一开始第 ii 棵竹子的 高度为 ​.他觉得一棵一棵砍太慢了, 决定使用魔法来砍竹子。魔法可以对连续的一 段相同高度的竹子使用, 假设这一段竹子的高度为 H, 那么用一次魔法可以,把这一段竹子的高度都变为, 其中 [x]表…...

技术栈4:Docker入门 Linux入门指令

目录 1.Linux系统目录结构 2.处理目录的常用命令 3.Docker概述 4.Docker历史 5.Docker基本组成 6.Docker底层原理 7.Docker修改镜像源 8.Docker基本命令 在学习docker之前我们先要熟悉Linux系统&#xff0c;推荐阅读&#xff1a;Linux笔记&#xff08;狂神说&#xff0…...

项目开发之Docker

文章目录 基础核心概念常用命令 实操1 windows11 docker mysql2 docker部署 xxljob3 container间调用异常问题4 部署mysql数据库5 docker desktop unexpected wsl error 基础 核心概念 其中的三个核心概念&#xff1a;dockerfile image/镜像 container/容器 image&#xff1a…...

状态模式的理解和实践

在软件开发中&#xff0c;我们经常遇到需要根据对象的不同状态执行不同行为的情况。如果直接将这些状态判断和行为逻辑写在同一个类中&#xff0c;会导致该类变得臃肿且难以维护。为了解决这个问题&#xff0c;状态模式&#xff08;State Pattern&#xff09;应运而生。状态模式…...

正点原子imx6ull配置MQTT客户端上传数据到Ubuntu MQTT服务器

目录 使用QT自带的MQTT模块部署客户端创建一个class专门用于MQTT客户端通讯使用QT在ui界面上生成按钮在Windows上订阅相应主题测试在imx6ull上订阅Windows发布的消息 在上一篇中介绍了在Ubuntu22.04的Docker中部署MQTT服务器&#xff0c;然后在window上测试订阅和发布&#xff…...

【联表查询】.NET开源 ORM 框架 SqlSugar 系列

.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…...

CAN接口设计

CAN总线的拓扑结构 CAN总线的拓扑结构有点像485总线,都是差分的传输方式,总线上都可以支持多个设备,端接匹配电阻都是120Ω。 485和CAN通信方面最大的区别:网络特性。485是一主多从的通讯方式,CAN是多主通讯,多个设备都可以做主机。那多个设备都相要控制总线呢?…...

基于遗传优化SVM的电机参数预测matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 数据收集与预处理 4.2模型构建与训练 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 输入&#xff1a;电机结构参数x1 x2 x3 x4 x5(分别是铁心高度 铁心厚度 绕组…...

C++设计模式之代理模式

动机 在面向对象系统中&#xff0c;有些对象由于某种原因&#xff08;比如对象创建的开销很大&#xff0c;或者某些操作需要安全控制&#xff0c;或者需要进程外的访问等&#xff09;&#xff0c;直接访问会给使用者、或者系统结构带来很多麻烦。 如何在不失去透明操作对象的…...

多线程JUC 第2季 控制线程的执行顺序,依次,交替,同时

一 场景1 交替执行 1.1 方案1使用completablefuture public class TestA {public static void main(String[] args) {for(int k0;k<10;k) {CompletableFuture<Void> t1 CompletableFuture.runAsync(() -> {System.out.println("A: >" Thread.curr…...

数据分析(一): 掌握STDF 掌握金钥匙-码农切入半导体的捷径

中国的半导体行业必然崛起&#xff01;看清这个大势&#xff0c;就会有很多机会。 今天&#xff0c;我们一起来了解一下半导体行业的一朵金花&#xff1a;STDF。 实际上这只是一种文件格式&#xff0c;但是当你熟练掌握解析这种文件的时候&#xff0c;你就已经打开在这个基础…...

NPM镜像详解

NPM镜像详解 什么是NPM镜像 NPM镜像&#xff08;NPM Mirror&#xff09;是一个完整的NPM包的副本服务器。由于npm的官方registry服务器部署在国外&#xff0c;国内访问可能会比较慢&#xff0c;因此使用镜像可以加快包的下载速度。 常用的NPM镜像源 npm官方镜像 https://reg…...

【springboot】 多数据源实现

文章目录 1. 引言&#xff1a;多数据源的必要性和应用场景**为什么需要多数据源&#xff1f;****应用场景** 2. Spring Boot中的数据源配置2.1 默认数据源配置简介2.2 如何在Spring Boot中配置多个数据源 3. 整合MyBatis与多数据源**配置MyBatis使用多数据源****Mapper接口的数…...

Zephyr 入门-设备树与设备驱动模型

学习链接&#xff1a;https://www.bilibili.com/video/BV1L94y1F7qS/?spm_id_from333.337.search-card.all.click&vd_source031c58084cf824f3b16987292f60ed3c 讲解清晰&#xff0c;逻辑清楚。 1. 设备树概述&#xff08;语法&#xff0c;如何配置硬件&#xff0c;c代码如…...

css实现圆周运动效果

在CSS中可以通过 keyframes 动画 和 transform 属性实现元素的圆周运动。以下是一个示例代码&#xff1a; 示例代码 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content…...

乐鑫科技嵌入式面试题及参考答案(3万字长文)

嵌入式开发为什么用 C 语言,而不用 C++ 语言? 在嵌入式开发中,C 语言被广泛使用而 C++ 相对少用有以下一些原因。 首先,C 语言具有更高的效率。嵌入式系统通常资源受限,包括处理器速度、内存容量等。C 语言的代码生成效率高,能够生成紧凑的机器码,占用较少的内存空间和处…...

这就是IoC容器

IoC(Inversion of Control,控制反转),也叫依赖注入(Dependency Injection),是一种决定容器如何装配组件的模式。使用 Spring 来实现 IoC,意味着将设计好的对象交给 Spring 容器控制,而不是直接在对象内部控制。控制反转不能很好地描述这个模式,依赖注入却能更好地描述…...

KVM OVS双网卡配置trunk模式

一、宿主机配置 1. 确保必要的软件包已安装 确保宿主机上已安装 Open vSwitch 和 VLAN 工具。如果尚未安装&#xff0c;可以使用以下命令进行安装&#xff1a; yum install openvswitch-switch vlan 2. 配置现有 OVS 桥接 br0 假设已有一个 OVS 桥接接口 br0&#xff0c;并…...

氢能源车和电动车,谁将成为未来?

很多人都觉得氢能源是未来的终极绿色能源&#xff0c;因为氢气燃烧后只产生水&#xff0c;听起来是不是很环保&#xff1f;但这只是从化学能的角度来看。实际上&#xff0c;氢能源汽车还有很多问题需要解决。氢气的制作成本高得吓人 目前&#xff0c;制作氢气最理想的方法是电…...

CTF-PWN: WEB_and_PWN [第一届“吾杯”网络安全技能大赛 Calculator] 赛后学习(不会)

附件 calculate.html <!DOCTYPE html> <html lang"en"> <head><!-- 设置字符编码为 UTF-8&#xff0c;支持多语言字符集 --><meta charset"UTF-8"><!-- 设置响应式视图&#xff0c;确保页面在不同设备上自适应显示 --&…...

解决Jupyter Notebook无法转化为Pdf的问题(基于Typora非常实用)

笔者在完成各项作业和做笔记时&#xff0c;经常用到jupyter notebook&#xff1b;其因为可以同时运行python并提供格式化的数字公式的输入方式&#xff0c;得到了广大用户的喜爱。 当我们想要将.ipynb文件导出为pdf时&#xff0c;有两种常用方法。 1.Ctrlp 2.通过File ->…...