超低功耗MCU软件开发设计中的要点与选型推荐
前沿-超低功耗MCU应用:
超低功耗MCU(微控制器)凭借其极低的功耗和高效的能量管理能力,正在快速渗透到多个新兴领域,尤其在物联网(IoT)、可穿戴设备、智能家居和医疗电子等领域展现出巨大的应用潜力,国内超低功耗MCU的崛起与开发应用生态的沉淀,大力节省超低功耗选型设计成本以及开发周期.
超低功耗MCU趋势:
-
8位→32位MCU的必然性
代码密度提升30%(Thumb-2指令集) 相同任务时钟频率降低50% 案例:STM32L0 vs 8051的FFT能耗对(-40%)
-
制程技术突破
40nm ULL制程静态电流密度:5pA/μm²,对比数据:0.18μm工艺待机电流(50-100μA)→ 40nm ULL(<1μA)
超低功耗MCU设计实现方法详解:
PDynamic (动态功耗) = f (工作频率) x CL (等效负载电容) x VDD 2 (工作电压)
在超低功耗MCU(如MSP430、STM32L系列、国产HC32L196等)的软件开发中,设计策略与常规MCU有显著差异。以下是需要重点考量的技术要点和实战经验:
一、电源状态机精细化控制
-
功耗模式深度利用
- 模式切换策略:
// 示例:STM32L4从Run到Stop2模式的切换 HAL_PWREx_EnterSTOP2Mode(PWR_SRAM2_RETENTION, PWR_STOPENTRY_WFI); // 唤醒后需重新配置时钟 SystemClock_Config();
- 典型模式对比:
模式 唤醒源 保持数据 恢复时间 电流消耗 Active - 全部 - 1-10mA Sleep 任意中断 全部 1μs 100μA-1mA Stop 外部事件/RTC SRAM保留 10μs 1-10μA Standby 复位/唤醒引脚 丢失 1ms 0.1-1μA
- 模式切换策略:
-
外设级电源管理
- 动态关闭未使用外设时钟(如STM32的
__HAL_RCC_GPIOA_CLK_DISABLE()
) - 高功耗外设(射频/RGB LED)采用使能引脚控制供电
- 动态关闭未使用外设时钟(如STM32的
二、中断驱动架构设计
-
事件代替轮询
- 使用GPIO中断唤醒替代ADC轮询:
// 配置ADC阈值触发GPIO中断 HAL_ADC_Start_IT(&hadc); HAL_GPIO_EnableWakeupPin(GPIO_PIN_12, RISING_EDGE);
- 中断优先级优化:
- 将RTC唤醒中断设为最高优先级(防止被阻塞)
- 非关键中断(如按键)设为最低优先级
- 使用GPIO中断唤醒替代ADC轮询:
-
DMA解放CPU
- ADC采样数据通过DMA直接存入内存,CPU全程休眠:
HAL_ADC_Start_DMA(&hadc, (uint32_t*)adc_buffer, 256); HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
- ADC采样数据通过DMA直接存入内存,CPU全程休眠:
三、时钟系统优化
-
动态频率调节
- 任务分级处理:
void Task_Scheduler(void) {if(need_high_speed) {SystemClock_HSI_48MHz(); // 复杂算法时高速运行} else {SystemClock_MSI_2MHz(); // 空闲时降频} }
- 国产MCU示例:GD32VF103的Flexible Clock Controller(FCC)支持无中断频率切换
- 任务分级处理:
-
低精度时钟取舍
- 用RC振荡器替代晶体(牺牲精度换取低功耗)
- 关键时序用LPTIM(低功耗定时器)补偿精度
四、外设使用禁忌与技巧
-
ADC采样优化
- 关闭采样期间其他数字电路(减少噪声)
- 单次采样模式替代连续采样
HAL_ADC_Start(&hadc); // 启动单次转换 while(!HAL_ADC_PollForConversion(&hadc, 10)); // 阻塞等待 value = HAL_ADC_GetValue(&hadc); HAL_ADC_Stop(&hadc); // 立即关闭
-
GPIO配置黄金法则
- 未用引脚设为模拟输入(防漏电流)
- 输出引脚避免悬空(加下拉电阻)
- 上升沿比下降沿更省电(CMOS工艺特性)
五、低功耗调试黑科技
-
电流波形分析法
- 使用示波器+1Ω电阻测量动态电流
- 异常功耗定位流程:
发现电流异常 → 逐步注释外设初始化代码 → 锁定问题模块
-
国产开发工具链
- 华大HC32L196的Low Power Analyzer工具
- 极海APM32的Power Profiler插件
六、典型功耗陷阱与规避
-
软件陷阱
- while循环未加
__WFI()
(CPU持续运行) - 调试接口未禁用(SWD引脚漏电流)
// 发布版本关闭调试 __HAL_DBGMCU_DISABLE_DBG_STANDBY();
- while循环未加
-
硬件陷阱
- PCB上拉电阻值过大(10MΩ优于100kΩ)
- LDO静态电流过高(选<1μA的型号如TPS7A02)
七、国产超低功耗MCU实战案例(XHSC)
场景1:三表(水表、气表、电表)/额温枪/温控器
方案: 由泽兆电子基于小华HC32L196/136超低功耗带显示MCU
- 主控:小华半导体HC32L136K8TA(1.0μA @3V深度休眠模式+ RTC工作)
- 特点:LCD驱动显示;支持M-Bus,64-256k(flash)
- 关键代码:
void Main_Loop() {LoRa_EnterSleep();PWR_EnterSTANDBYMode(); // 只有RTC和唤醒引脚有效// 被RTC每小时唤醒1次执行检测Smoke_Sensor_Check(); }
成果:整机平均电流<10μA,静态功耗<5μA,
场景2:可穿戴设备–无线耳机/助听器
方案:由泽兆电子基于小华HC32L110B6YA超小尺寸超低功耗MCU设计方案 (芯片尺寸CSP16(1.59*1.436)
- 主控:小华半导体HC32L110(1.0μA @3V深度休眠模式+ RTC工作)
- 关键代码:
void Main_Loop() {LoRa_EnterSleep();PWR_EnterSTANDBYMode(); // 只有RTC和唤醒引脚有效// 被RTC每小时唤醒1次执行检测Smoke_Sensor_Check(); }
成果:业内最小超低功耗MCU-CSP16(1.59*1.436)满足可穿戴设备极小尺寸要求;
场景3:NB-IoT物联终端传感器等
方案:由上海泽兆基于小华HC32L110C6PA-TSSOP20在传感器/报警器等设备实现超低功耗,
- 特点: 抗干扰性能强;多种通信接口,nA级超低待机功耗,uS级高速唤醒.
- 关键代码:
void Main_Loop() {LoRa_EnterSleep();PWR_EnterSTANDBYMode(); // 只有RTC和唤醒引脚有效// 被RTC每小时唤醒1次执行检测Smoke_Sensor_Check(); }
成果:深度睡眠电流0.42uA,唤醒到主频时间4uS,
总结:超低功耗设计CHECKLIST
- 所有未使用引脚配置为模拟输入
- 禁用调试接口(发布版本)
- 外设使用后立即关闭时钟
- 中断唤醒源配置最高优先级
- 关键数据保存在保留内存区域
- 验证所有可能的唤醒路径
通过将硬件特性与软件策略深度结合,配合国产MCU的低功耗设计(如华大的HALT模式、兆易创新的动态电压调节),可实现nA级待机电流的系统设计。
超低功耗MCU应用设计要点:
1、优化软件算法:通过优化软件算法,减少不必要的循环和延时,提高程序执行效率。
2、合理配置系统参数:设置合适的系统时钟频率、休眠模式等,关闭不需要的外设和功能模块。
3、使用低功耗外设:选择具有低功耗特性的外设,如低速串行通信接口、低功耗模拟外设等。
4、采用电源管理技术:使用动态电压调节(DVS)技术,根据实际需求调整工作电压;采用能量回收技术,将系统中的能量损耗转化为电能存储。
5、优化硬件电路:使用低功耗电源管理芯片、低功耗电容和电感元件等,降低系统电源损耗。
如何选择低功耗MCU:
提示:国产MCU在基础功耗指标上已与国际大厂持平,且在价格和本地支持上具有优势。建议新项目优先评估国产方案,复杂系统可考虑"国际MCU主控+国产协处理器"的混合架构。
以下是目前市场上主流的超低功耗MCU品牌、代表型号及其关键特点的详细对比,涵盖国际大厂和国产新锐品牌,
供选型参考:
一、国际品牌超低功耗MCU
1. STMicroelectronics(意法半导体)
-
STM32U5系列
- 特点:基于40nm工艺,Cortex-M33内核,停机模式电流仅8nA
- 型号:STM32U575(带TrustZone安全区)
- 典型应用:智能门锁、医疗传感器
-
STM32L4/L4+系列
- 特点:动态电压调节(ART Accelerator™),运行模式功耗低至19μA/MHz
- 型号:STM32L4R9(带LCD控制器)
- 典型应用:便携式医疗设备
2. Texas Instruments(德州仪器)
-
MSP430FR系列(FRAM)
- 特点:FRAM存储器(零写入功耗),待机电流0.4μA(RTC保持)
- 型号:MSP430FR5994(带硬件加速器)
- 典型应用:能量收集设备
-
CC26xx系列(无线MCU)
- 特点:BLE+Zigbee双模,接收功耗5.4mA
- 型号:CC2652R(多协议支持)
- 典型应用:智能家居网关
3. NXP(恩智浦)
-
Kinetis L系列
- 特点:Cortex-M0+内核,运行功耗50μA/MHz
- 型号:KL17(支持USB OTG)
- 典型应用:HMI控制面板
-
i.MX RT500(跨界MCU)
- 特点:Cortex-M33+DSP,带语音唤醒硬件加速
- 典型应用:AI语音终端
4. Silicon Labs(芯科科技)
-
EFM32系列
- 特点:自主Gecko内核,2μA深度睡眠模式
- 型号:EFM32PG22(集成DC-DC转换器)
- 典型应用:无线传感器节点
-
BG22(蓝牙MCU)
- 特点:BLE 5.2,Tx功耗仅3.6mA@0dBm
- 典型应用:可穿戴设备
二、国产超低功耗MCU
1. 小华半导体(XHSC)
-
HC32L110系列
- 特点:0.5μA停机电流,内置12位1Msps ADC
- 型号:HC32L136(支持硬件AES加密)
- 典型应用:NB-IoT终端
-
HC32L136/176/196系列(Cortex-M0+ ADC/DAC/RTC/LCD/USB/CAN/OPA)
- 特点:nA级超低待机功耗,uS级高速唤醒
- 典型应用:三表、医疗电子、电池供电设备
-
HC32F4A0(高性能)
- 特点:Cortex-M4@200MHz,带FPU和MPU
- 典型应用:工业控制器
2. 兆易创新(GigaDevice)
- GD32L23x系列
- 特点:Cortex-M23,动态功耗低至20μA/MHz
- 型号:GD32L233(支持USB PD)
- 典型应用:PD快充设备
3. 国民技术(Nations)
- N32L40x系列
- 特点:0.9μA@Stop模式,内置SM4国密算法
- 型号:N32L406(宽电压1.8V~5.5V)
- 典型应用:智能水表
4. 澎湃微电子(PT)
- PT32L0xx系列
- 特点:RISC-V内核,待机电流<1μA
- 型号:PT32L076(支持电容触摸)
- 典型应用:智能家居面板
5. 中微半导体(CMS)
- CMS32L051系列
- 特点:24MHz Cortex-M0,停机模式0.7μA
- 典型应用:电动牙刷
三、关键参数对比表
品牌/型号 | 内核 | 工作电流 | 休眠电流 | 特色外设 | 价格(千颗价) |
---|---|---|---|---|---|
STM32U575 | Cortex-M33 | 40μA/MHz | 8nA | 硬件加密引擎 | $2.8 |
MSP430FR5994 | 16-bit RISC | 100μA/MHz | 0.4μA | FRAM存储器 | $1.5 |
HC32L136 | Cortex-M0+ | 30μA/MHz | 0.5μA | 12位ADC | ¥2.8 |
GD32L233 | Cortex-M23 | 20μA/MHz | 1μA | USB Type-C | ¥2.8 |
EFM32PG22 | Cortex-M33 | 25μA/MHz | 2μA | 集成DC-DC | $1.8 |
四、选型建议
-
电池供电设备
- 首选国产HC32L136或MSP430FR系列(FRAM抗写磨损)
-
无线连接需求
- 国际:Silicon Labs BG22
- 国产:GD32W515(Wi-Fi 6+BLE 5.2)
-
高安全性场景
- 国民技术N32L406(国密算法)或STM32U5(TrustZone)
-
极端低成本
- 小华HC32L021(<¥0.9)
- 中微CMS32L051(<¥1.5)
- 选择低功耗MCU的关键因素;
- 工作电压:选择工作电压较低的MCU,可以在较低电压下正常工作,有效降低系统功耗。- 休眠模式:具有多种休眠模式的MCU,在系统空闲时能进入休眠状态,进一步降低功耗。- 时钟频率:选择时钟频率较低的MCU,能在较低频率下工作,从而降低系统功耗。- 外设资源:根据实际需求选择合适的外设资源,避免不必要的功耗。- 制程工艺:采用先进制程工艺的MCU,如CMOS、SOI等,能实现更低的功耗。 封装和尺寸:选择较小封装和尺寸的MCU,有助于降低系统功耗。
五、未来趋势
-
RISC-V架构渗透
- 如嘉楠科技K210(双核RISC-V+AI加速)
-
存算一体MCU
- 三星正在研发基于MRAM的超低功耗MCU
-
3D封装技术
- 台积电InFO-PoP工艺助力MCU+传感器堆叠
通过对比可见,国产MCU在基础功耗指标上已与国际大厂持平,且在价格和本地支持上具有优势。建议新项目优先评估国产方案,复杂系统可考虑"国际MCU主控+国产协处理器"的混合架构。
相关文章:
超低功耗MCU软件开发设计中的要点与选型推荐
前沿-超低功耗MCU应用: 超低功耗MCU(微控制器)凭借其极低的功耗和高效的能量管理能力,正在快速渗透到多个新兴领域,尤其在物联网(IoT)、可穿戴设备、智能家居和医疗电子等领域展现出巨大的应用…...
Gson、Fastjson 和 Jackson 对比解析
目录 1. Gson (Google) 基本介绍: 核心功能: 特点: 使用场景: 2. Fastjson (Alibaba) 基本介绍: 核心功能: 特点: 使用场景: 3. Jackson 基本介绍: 核心功能…...
冒泡排序与回调函数——qsort
文章核心内容总结 本文围绕数组排序展开,先介绍了冒泡排序,后引入qsort库函数进行排序,并对二者进行了对比。 1. 冒泡排序实现 在探讨冒泡排序(Bubble Sort)这一经典的排序算法时,我们首先需要了解其基本…...
(四)机器学习---逻辑回归及其Python实现
之前我们提到了常见的任务和算法,本篇我们使用逻辑回归来进行分类 分类问题回归问题聚类问题各种复杂问题决策树√线性回归√K-means√神经网络√逻辑回归√岭回归密度聚类深度学习√集成学习√Lasso回归谱聚类条件随机场贝叶斯层次聚类隐马尔可夫模型支持向量机高…...
微信小程序开发:微信小程序上线发布与后续维护
微信小程序上线发布与后续维护研究 摘要 微信小程序作为移动互联网的重要组成部分,其上线发布与后续维护是确保其稳定运行和持续优化的关键环节。本文从研究学者的角度出发,详细探讨了微信小程序的上线发布流程、后续维护策略以及数据分析与用户反馈处理的方法。通过结合实…...
vue拓扑图组件
vue拓扑图组件 介绍技术栈功能特性快速开始安装依赖开发调试构建部署 使用示例演示截图组件源码 介绍 一个基于 Vue3 的拓扑图组件,具有以下特点: 1.基于 vue-flow 实现,提供流畅的拓扑图展示体验 2.支持传入 JSON 对象自动生成拓扑结构 3.自…...
Python数据分析-NumPy模块-查看数组属性
查看数组的行数和列数 from numpy import array aarray([[1,1],[2,2],[3,3]]) print(a.shape)结果: 提取数组的行数或列数 from numpy import array aarray([[1,1],[2,2],[3,3]]) print(a.shape) print(a.shape[0]) print(a.shape[1])结果: 查看数组…...
ch07课堂参考代码
DFS 的优化 1) 标记搜索过的状态 用数组标记一个状态是否被搜索过,搜索过则直接 return,不用再执行函数,用于保证每个状态只被搜索一次。 在递归调用函数之前,通过 if (vis[x]) 判断 x 是否被搜索过,搜索过则直接ret…...
去重新闻数据中重复的正文内容(body 字段),并把唯一的新闻内容保存到一个新的 JSON 文件中
示例代码: import os import json import nltk from tqdm import tqdmdef wr_dict(filename,dic):if not os.path.isfile(filename):data []data.append(dic)with open(filename, w) as f:json.dump(data, f)else: with open(filename, r) as f:data json.l…...
centos crontab 设置定时任务访问链接
在 CentOS 系统中,使用 crontab 设置定时任务访问 URL,可以通过命令行工具(如 curl 或 wget)发送 HTTP 请求。以下是详细步骤: 1、安装必要工具(若未安装) 安装 curl 或 wget # 安装 curl su…...
oracle大师认证证书有用吗
专业能力的高度认可:OCM 是 Oracle认证的最高级别,是对数据库从业人员技术、知识和操作技能的最高级认可,也是 IT 界顶级认证之一。它表明持证者具备处理关键业务数据库系统和应用的能力,能够解决最困难的技术难题和最复杂的系统故…...
说说对 Node 中的 process 的理解?有哪些常用方法?
1. 简介 process对象是Node.js中的全局变量,它提供了有关当前Node.js进程的信息并允许对其进行控制。通过process对象,我们可以获取进程的环境变量、命令行参数,控制进程的行为以及与其他进程进行通信。 2. 常用属性 process.env process…...
maven 和 idea intej步骤记录
1 maven 安装配置 1.1 参考链接安装 maven参考链接 1.2 maven 关联本机jdk版本 配置 priofiles jdk 版本时,查看本本机jdk 版本:环境变量查看jdk 路径版本: java_home 变量路径是C:\Program Files\Java\jdk-21 # setting.xml <profile&…...
Java Socket编程从零到实战详解
摩西摩西~最近接单子用到了Java的socket编程,顺手给整理下来咯! 各个语言的socket编程除了语法之外几乎思路都是一样的。 所以这些思路都是可以直接移植到其他语言实现的! 话不多说上车! 一、Socket基础概念与工作流程…...
STM32中Hz和时间的转换
目录 一、常见的频率单位及其转换 二、计算公式 三、STM32中定时器的应用 四、例子 一、常见的频率单位及其转换 赫兹(Hz)是频率的国际单位,表示每秒钟周期性事件发生的次数。 1 kHz(千赫兹) 1,000 Hz1 MHz&#…...
Apache Hive学习教程
什么是Hive? Apache Hive是一款建立在Hadoop之上的开源数据仓库系统,可以将存储在Hadoop文件中的结构化、半结构化 数据文件映射为一张数据库表,基于表提供了一种类似SQL的查询模型,称为Hive查询语言(HQL)&…...
学习笔记六——Rust 切片全解析
这篇文章不是告诉你“切片是啥”,而是让你真正理解并学会用切片,同时还会把你最容易卡壳的 {:?}、char_indices() 等都讲清楚! 📚 文章目录 切片到底是什么?能不能通俗一点?切片的本质:它其实…...
Apache Doris SelectDB 技术能力全面解析
Apache Doris 是一款开源的 MPP 数据库,以其优异的分析性能著称,被各行各业广泛应用在实时数据分析、湖仓融合分析、日志与可观测性分析、湖仓构建等场景。Apache Doris 目前被 5000 多家中大型的企业深度应用在生产系统中,包含互联网、金融、…...
设计模式 Day 8:策略模式(Strategy Pattern)完整讲解与实战应用
🔄 前情回顾:Day 7 重点回顾 在 Day 7 中,我们彻底讲透了观察者模式: 它是典型的行为型模式,核心理念是“一变多知”,当一个对象状态变化时,自动通知所有订阅者。 我们通过 RxCpp 实现了工业…...
HarmonyOS-ArkUI V2装饰器-@Once
前文,关于Param的使用: HarmonyOS-ArkUIV2装饰器-Param:组件外部输入-CSDN博客 Once装饰器是一个需要配合Param装饰器一块使用的的装饰器。它的特性是,仅仅在变量进行初始化的时候,接受一个外部传来的值进行初始化&am…...
前端Node.js的包管理工具npm指令
npm(Node Package Manager)是Node.js的包管理工具,主要用于安装、更新、删除和管理JavaScript包。以下是前端开发中常用的npm命令及其用途: 基本命令 npm提供了一系列命令行工具,用于执行各种包管理操作。以下是一…...
本地搭建直播录屏应用并实现使用浏览器远程控制直播间录屏详细教程
 本文主要介绍如何在 Windows 系统电脑本地部署直播录屏工具 Bililive-go,并结合 cpolar 内网穿透工具实现远程访问本地 Bililive-go 服务 web 界面管理录屏任务。 相信很多小伙伴都喜欢看直播,不过如果一旦临时有事看不了直播,…...
Hydra Columnar:一个开源的PostgreSQL列式存储引擎
Hydra Columnar 是一个 PostgreSQL 列式存储插件,专为分析型(OLAP)工作负载设计,旨在提升大规模分析查询和批量更新的效率。 Hydra Columnar 以扩展插件的方式提供,主要特点包括: 采用列式存储,…...
OpenGL学习笔记(assimp封装、深度测试、模板测试)
目录 模型加载Assimp网格模型及导入 深度测试深度值精度深度缓冲的可视化深度冲突 模板测试物体轮廓 GitHub主页:https://github.com/sdpyy1 OpenGL学习仓库:https://github.com/sdpyy1/CppLearn/tree/main/OpenGLtree/main/OpenGL):https://github.com/sdpyy1/CppL…...
自动化备份全网服务器数据平台
1.项目说明 1.1概述 该项目共分为2个子项目,由环境搭建和实施备份两部分组成 该项目旨在复习巩固系统服务部署使用、shell编程等知识,旨在让学生增加知识面,提高项目实习经历,充实简历 1.2项目组织方式及时间 时间:…...
Trea CN多多与主流AI编程工具万字解析
Trea CN多多与主流AI编程工具万字解析 (含数学建模、架构图、开发流程可视化) 一、数学建模:代码生成效率量化模型 1.1 全链路效率公式 T total N ⋅ ( 1 λ C S ) T check (1) T_{\text{total}} N \cdot \left( \frac{1}{\lambda} \…...
Django从零搭建卖家中心注册页面实战
在电商系统开发中,卖家中心是一个重要的组成部分,而用户注册与登陆则是卖家中心的第一步。本文将详细介绍如何使用Django框架从零开始搭建一个功能完善的卖家注册页面,包括前端界面设计和后端逻辑实现。 一、项目概述 我们将创建一个名为sel…...
如何进行预算考核
✅ 一、预算考核体系总体架构 模块内容说明考核内容1. 预算目标/指标完成情况2. 预算编制/执行情况双轮驱动,目标 + 执行双考核考核对象高层、中层、基层、后台支持分层分类考核考核周期月度(滚动)+ 季度(校验)+ 年度(决算)提高适应性和准确性考核工具指标体系、差错率评…...
django相关面试题
django相关面试题 1.django的生命周期 2.django中的orm查询如何自定义方法 3.django中的中间件的作用 4.django中间件,request进来经过哪些中间件,顺序是怎么样的 5.django中的csrf是什么 6.django每访问一次数据库都会创建一个连接吗 7.uwsgi gunicorn…...
【Java面试系列】Spring Cloud微服务架构中的分布式事务实现与性能优化详解 - 3-5年Java开发必备知识
【Java面试系列】Spring Cloud微服务架构中的分布式事务实现与性能优化详解 - 3-5年Java开发必备知识 引言 在微服务架构中,分布式事务是一个不可避免的挑战。随着业务复杂度的提升,如何保证跨服务的数据一致性成为面试中的高频问题。本文将从基础到进…...
PostgreSQL 17深度解析(从17.0-17.4)
PostgreSQL 17自2024年9月发布以来,持续通过小版本迭代增强功能、优化性能并修复安全漏洞。本文将从17.0到17.4的每个版本切入,深度解析其新增特性、技术原理、性能提升及实践价值,帮助开发者、DBA及架构师全面掌握PostgreSQL 17的演进脉络。 一、PostgreSQL 17.0:基石奠定…...
人物4_Japanese
Now, I start my JaPan【Tokyo】 life, 【I go out of my country{China}, the reason is I want learn more new computer technologies in foreign, also it could let me know more different culture.】I like the place and most persons in here. The JaPan culture have…...
Go 语言中的 package main、 func main() 和main.go的使用规范
本文旨在解释 Go 语言中 package main 、 func main() 和main.go的关系及其使用规则,解决如下典型问题: 是否可以在一个项目中定义多个 func main()?是否可以在非 package main 中写 func main()?多个文件中都写 func main() 会冲…...
mac 终端 code 命令打开 vscode,修改 cursor占用
rm /usr/local/bin/code vim ~/.zshrc # 定义 cursor 函数,用于打开 Cursor 应用 function cursor {open -a "/Applications/Cursor.app" "$" }# 定义 code 函数,用于打开 Visual Studio Code function code {open -a "/Appli…...
【常用功能】下载文件和复制到剪切板
前言 前端人员在开发时经常会遇到: 后端给一个地址,需要去下载的需求。将页面的内容复制到剪切板 下载文件 我们先说下载文件,通常情况下我们会自己写上一个非常简单的工具函数。 思路如下: 创建一个a元素设置a元素跳转的链接…...
【ESP32-microros(vscode-Platformio)】
一、步骤 1、目前支持ESP32 2、同一个局域网 3、上位机要安装代理(电脑或者linux设备) 4、可直接通过USB下载,也可以使用官方烧录工具,具体的分区表地址要从USB烧录的时候日志查看,一共四个文件,第三个…...
如何使用AI辅助开发CSS3 - 通义灵码功能全解析
一、引言 CSS3 作为最新的 CSS 标准,引入了众多新特性,如弹性布局、网格布局等,极大地丰富了网页样式的设计能力。然而,CSS3 的样式规则繁多,记忆所有规则对于开发者来说几乎是不可能的任务。在实际开发中,…...
OpenCV图像形态学详解
文章目录 一、什么是图像形态学?二、基本概念:结构元素三、基本形态学操作1. 腐蚀(Erosion)2. 膨胀(Dilation)3. 开运算(Opening)4. 闭运算(Closing) 四、高级…...
Java-servlet(完结篇)过滤器乱码解决与监听器
Java-servlet(完结篇)过滤器乱码解决与监听器 前言一、过滤器乱码解决二、监听器1. HttpSessionListener2. ServletContextListener3. ServletRequestListener 三、监听器的使用场景Java-servlet 结语 前言 在之前的 Java Servlet 学习中,我…...
【发布】dtns协议的js-sdk(实现a2a协议:agent2agent)
【发布】dtns协议的js-sdk(实现a2a协议:agent2agent) dtns协议简介 dtns协议是用于dtns.network分布式智体网络的通讯协议。主要目标是将各个独立的智体节点,通过dtns协议(dtns.network)连接在一起&#…...
深度学习总结(8)
模型工作流程 模型由许多层链接在一起组成,并将输入数据映射为预测值。随后,损失函数将这些预测值与目标值进行比较,得到一个损失值,用于衡量模型预测值与预期结果之间的匹配程度。优化器将利用这个损失值来更新模型权重。 下面是…...
[特殊字符] Hyperlane:为现代Web服务打造的高性能Rust文件上传解决方案
🚀 Hyperlane:为现代Web服务打造的高性能Rust文件上传解决方案 ▎开发者必备:为什么选择Hyperlane处理大文件上传? 在实时数据爆炸式增长的时代,开发者面临两大核心挑战: 如何实现TB级大文件的可靠传输如…...
英伟达开源253B语言模型:Llama-3.1-Nemotron-Ultra-253B-v1 模型情况
Llama-3.1-Nemotron-Ultra-253B-v1 模型情况 1. 模型概述 Llama-3.1-Nemotron-Ultra-253B-v1 是一个基于 Meta Llama-3.1-405B-Instruct 的大型语言模型 (LLM),专为推理、人类对话偏好和任务(如 RAG 和工具调用)而优化。该模型支持 128K 令…...
2025年智能合约玩法创新白皮书:九大核心模块与收益模型重构Web3经济范式
——从国库管理到动态激励的加密生态全栈解决方案 一、核心智能合约架构解析 1. 国库合约:生态财政中枢 作为协议的金库守卫者,国库合约通过多签冷钱包与跨链资产池实现资金沉淀。其创新点包括: 储备资产动态再平衡:采用预言机实…...
[250411] Meta 发布 Llama 4 系列 AI 模型 | Rust 1.86 引入重大语言特性
目录 Llama 4 家族登场:开启原生多模态 AI 创新新纪元Rust 1.86.0 版本发布亮点主要新特性与改进其他重要信息 Llama 4 家族登场:开启原生多模态 AI 创新新纪元 Meta AI 近日发布了其最新、最先进的 Llama 4 系列人工智能模型,标志着 AI 技术…...
缓存不只是加速器:深入理解 Redis 的底层机制
一、Redis 是什么?为什么我们需要它? Redis(Remote Dictionary Server)是一种高性能的内存型键值对数据库。 通俗地讲,它就像一个超快的、放在内存中的超级字典,你可以用它来存数据、查数据,而…...
windows虚拟内存
windows的虚拟内存只是 虚拟内存技术的一个拓展, 叫他分页文件更好, 真正的虚拟内存是 CPU 内存管理单元 用于调度物理内存和磁盘衍生出来的技术. 在此基础上, 虚拟内存会根据页表 去物理内存中找数据, 找不到就去磁盘找, 找到之后再登记到页表. 这里的磁盘就是window系统中所…...
Ajax------免刷新地前后端交互
本文略带PHP代码需要在PHP环境下使用 介绍 AJAX (Asynchronous JavaScript and XML) 是一种创建快速动态网页应用的开发技术,它允许网页在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。例如,在我们做爬虫的时候发现有些…...
python办公自动化---pdf文件的读取、添加水印
需要安装包:pdfminer、pypdf2 一、读取pdf中的内容 from pdfminer.converter import TextConverter from pdfminer.layout import LAParams from pdfminer.pdfdocument import PDFDocument from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterprete…...
下一代数据架构全景:云原生实践、行业解法与 AI 底座 | Databend Meetup 成都站回顾
3 月底,Databend 2025 开年首场 Meetup 在成都多点公司成功举办!活动特别邀请到四位重量级嘉宾:多点科技数据库架构师王春涛、多点DMALL数据平台负责人李铭、Databend联合创始人吴炳锡,以及鹏城实验室王璞博士。在春日的蓉城&…...