深入解析TI C2000 eCAP模块:捕获与APWM双模实战指南
1. eCAP模块嵌入式系统里的“时间侦探”与“波形雕刻师”在嵌入式系统尤其是实时控制领域里时间就是一切。无论是测量电机编码器脉冲的间隔来推算转速还是生成一个精准的PWM信号去控制LED亮度或电机扭矩背后都需要一个可靠的“计时员”和“信号发生器”。德州仪器TI在其C2000系列等微控制器中集成的增强型捕获eCAP模块就是这样一个集“时间侦探”和“波形雕刻师”于一身的全能选手。它不仅能像秒表一样精确记录外部事件发生的时刻捕获模式还能摇身一变成为一个高精度的单通道PWM信号源APWM模式。对于从事电机驱动、数字电源、逆变器或者任何需要精密时序控制项目的工程师来说吃透eCAP的工作原理就等于掌握了一把打开高性能实时控制大门的钥匙。这篇文章我将结合自己多年在电机控制项目中的实际使用经验为你彻底拆解eCAP模块的捕获与APWM两种模式从内部运作机制到寄存器配置细节再到实际编程中的避坑指南让你不仅能看懂手册更能用活这个强大的外设。2. 核心架构与双模切换逻辑2.1 模块概览一芯两用资源共享初次接触eCAP模块最容易让人困惑的就是它如何用同一套硬件资源支持两种截然不同的功能。理解这一点是灵活运用它的前提。eCAP模块的核心是一个32位的自由运行计数器TSCTR它由系统时钟驱动不断向上计数为所有操作提供统一的时间基准。围绕这个核心模块配备了四组32位的捕获寄存器CAP1-CAP4、丰富的边沿检测与序列控制逻辑以及完整的中断系统。其精妙之处在于这些资源在不同的模式下被赋予了不同的角色。在捕获模式下CAP1-CAP4寄存器是四个独立的“快照存储器”。当外部引脚ECAPx上发生预设的边沿事件如上升沿或下降沿时当前TSCTR计数器的值会被瞬间“抓拍”并存入对应的CAPx寄存器中这个值就是该事件的“时间戳”。通过连续记录多个事件的时间戳我们就能计算出脉冲宽度、周期或频率。在APWM模式下CAP1和CAP2寄存器摇身一变成为了活动周期寄存器APRD和活动比较寄存器ACMP。而CAP3和CAP4则作为它们的影子寄存器。此时32位计数器TSCTR与这两个寄存器进行比较当TSCTR等于ACMP时输出引脚电平翻转当TSCTR等于APRD时TSCTR复位归零并开始下一个PWM周期同时输出引脚电平再次翻转从而生成一个周期和占空比都可精确控制的PWM波形。关键提示模式切换由ECCTL2[CAP/APWM]位控制。切换模式时不仅功能改变引脚方向也会自动切换。捕获模式下ECAPx引脚为输入APWM模式下该引脚变为输出。务必在初始化配置阶段就明确设定好模式避免硬件冲突。2.2 核心寄存器角色扮演理解寄存器在不同模式下的角色转换是进行正确配置的基础。下面这个表格清晰地展示了这种“变身”寄存器捕获模式下的角色APWM模式下的角色关键说明TSCTR时间戳基准计数器PWM时基计数器32位核心时钟源。APWM模式下计数到周期值APRD后自动复位。CAP1捕获事件1的时间戳活动周期寄存器 (APRD)APWM模式下其值决定PWM波形的周期。CAP2捕获事件2的时间戳活动比较寄存器 (ACMP)APWM模式下其值决定PWM波形的占空比高电平或低电平时间取决于极性。CAP3捕获事件3的时间戳周期影子寄存器 (APRD Shadow)APWM模式下作为CAP1的影子缓冲区用于安全更新周期值。CAP4捕获事件4的时间戳比较影子寄存器 (ACMP Shadow)APWM模式下作为CAP2的影子缓冲区用于安全更新比较值。CTRPHS计数器相位偏移值计数器相位偏移值用于多个eCAP或ePWM模块间的同步实现相位精确对齐。这种设计体现了硬件模块的高度复用思想。对于资源受限的微控制器用一个模块的钱办了两个模块的事极大地提高了性价比和灵活性。在实际项目中我经常利用这一点在系统启动或校准阶段使用捕获模式测量传感器信号在正常运行阶段又切换到APWM模式输出驱动信号。3. 捕获模式深度解析精准的事件“抓拍”捕获模式是eCAP的看家本领其目标就是精确回答“某个事件发生在什么时刻” 这个过程远比简单的“来一个脉冲记一个数”要复杂和强大。3.1 事件预处理边沿检测与预分频外部信号进入ECAPx引脚后首先经过事件预分频器和边沿极性选择两级处理。事件预分频器 (ECCTL1[EVTPS])这就像给高速摄像机加了一个“抽帧”功能。当输入信号频率非常高超过了CPU处理中断或读取寄存器的速度时直接捕获每个边沿会导致数据溢出或CPU过载。预分频器可以将输入信号按2、4、6、...、62的偶数倍进行分频只让第N个边沿通过。例如设置预分频值为4EVTPS2那么每4个边沿才会产生一个有效的“捕获事件”进入后续流程。这在处理高频编码器信号时非常有用。边沿极性选择 (ECCTL1[CAPxPOL])每个捕获事件CEVT1-CEVT4都可以独立配置是检测上升沿还是下降沿。这让你可以灵活地测量高电平脉宽先捕获上升沿再捕获下降沿、低电平脉宽或整个信号周期。3.2 有序的“抓拍”流程模4计数器与连续/单次模式处理后的有效边沿事件并不会随意存入某个CAP寄存器而是由一个模4计数器Mod4 Counter进行严格调度。这个计数器就像一个取号机从0开始每来一个有效事件就加10-1-2-3-0...。计数器的值0,1,2,3直接决定了当前事件的时间戳应该存入哪个CAP寄存器CAP1, CAP2, CAP3, CAP4。这里引出了eCAP捕获模式的两个核心工作方式连续模式 (ECCTL2[CONT/ONESHT]0)模4计数器循环往复永不停止。CAP1-CAP4寄存器构成一个环形缓冲区新数据会不断覆盖旧数据。这种模式适用于需要持续监控信号、读取最新数据的场景比如实时监测频率。单次模式 (ECCTL2[CONT/ONESHT]1)你需要告诉模块“抓满N个事件后就停下”。这个N由ECCTL2[STOP_WRAP]位决定1-4。当模4计数器的值等于设定的停止值时计数器会冻结CAP寄存器的加载也被禁止。此时CAP1-CAP4中恰好保存了从开始到停止的N个连续事件的时间戳。这种模式完美适用于测量固定数量的脉冲间隔或一个完整波形周期。测量完成后需要通过软件将ECCTL2[REARM]位置1来重新“武装”模块为下一次单次捕获做准备。3.3 绝对时间戳与差值模式捕获到的时间戳怎么用这里有两种思路绝对时间戳模式每次捕获记录的都是TSCTR计数器自开始运行以来的当前值。要计算两个事件的时间间隔需要软件做减法间隔 CAP2 - CAP1。这种方式直观但要求TSCTR不能溢出或能处理溢出回绕。差值Delta模式这是eCAP一个非常实用的硬件特性。通过设置ECCTL1[CTRRSTx]位可以让模块在捕获某个事件后自动将TSCTR计数器复位为0。例如设置CTRRST10捕获事件1后不复位CTRRST21捕获事件2后复位。那么CAP1记录的是事件1的绝对时间CAP2记录的则是从事件1到事件2之间TSCTR的计数值直接就是时间间隔这对于测量固定起始点的脉冲宽度极其方便软件无需再做减法也避免了计数器溢出问题。实操心得在测量电机编码器的脉冲间隔时我强烈推荐使用“单次模式 差值模式”。配置为在第一个上升沿事件1开始在第四个上升沿事件4停止并复位计数器。这样CAP1到CAP4存储的就是连续三个脉冲的周期时间。读取一次数据就能得到三个精确的周期值用于计算平均转速既能滤除偶然误差又提高了数据采集效率。4. APWM模式实战生成高精度PWM波形当你的项目不需要捕获外部信号而是需要输出一个PWM时eCAP的APWM模式就派上用场了。它相当于一个简化但精度极高的单通道PWM发生器。4.1 PWM生成原理与影子寄存器机制APWM模式的核心是比较匹配。TSCTR计数器从0开始向上计数我们设定两个关键值周期值 (APRD)存储在CAP1活动寄存器和CAP3影子寄存器中。当TSCTR计数到等于APRD时发生“周期匹配”事件CTRPRDTSCTR立即复位为0开始下一个周期并触发周期中断如果使能。比较值 (ACMP)存储在CAP2活动寄存器和CAP4影子寄存器中。当TSCTR计数到等于ACMP时发生“比较匹配”事件CTRCMP输出引脚的电平根据极性设置发生翻转并触发比较中断如果使能。通过设置APRD和ACMP就能精确控制PWM波的频率由APRD决定和占空比由ACMP/APRD的比值决定。极性位ECCTL2[APWMPOL]决定输出是高有效CMP定义高电平时间还是低有效CMP定义低电平时间。影子寄存器是APWM模式稳定性的关键。想象一下你正在用PWM控制电机的电流如果在PWM周期中间直接修改了活动的比较值CAP2可能会导致当前周期输出脉宽突然变化引起电机转矩抖动甚至损坏。影子寄存器CAP3/CAP4的作用就是提供一个缓冲区。你可以在任何时候安全地更新影子寄存器中的值而这个新值会在一个安全的时刻如下一个周期起点即CTRPRD时自动加载到活动寄存器中从而实现了PWM参数的无毛刺、平滑更新。这种机制对于闭环控制如PID调节占空比至关重要。4.2 立即更新与影子更新模式eCAP的APWM提供了两种更新策略由你写入的寄存器地址决定立即更新模式当你直接写入活动寄存器CAP1或CAP2时硬件会“立即”将新值同时更新到对应的影子寄存器CAP3或CAP4并立即生效。这模拟了没有影子寄存器的行为适用于初始化或对实时性要求极高、不介意可能产生毛刺的场景。影子更新模式当你写入影子寄存器CAP3或CAP4时新值会暂存其中直到下一个CTRPRD事件周期结束发生时才被加载到CAP1或CAP2中生效。这是推荐的标准用法能确保波形连续稳定。配置口诀初始化时必须先写CAP1和CAP2同时初始化活动和影子寄存器。运行时若需更新周期就写CAP3若需更新比较值占空比就写CAP4。记住这个口诀可以避免很多奇怪的波形问题。4.3 同步功能多模块协同作战在复杂的系统中经常需要多个PWM通道之间保持严格的相位关系例如三相逆变器的六路PWM。eCAP模块提供了强大的同步Sync链功能。同步输入 (SYNCI)一个eCAP模块的TSCTR计数器可以在外部同步信号来自另一个eCAP或ePWM模块到来时将其相位寄存器CTRPHS的值加载到TSCTR中。这可以将多个模块的计数器“对齐”到同一个起点。同步输出 (SYNCO)一个eCAP模块可以产生同步信号输出给下游模块。它可以配置为直接转发自己的同步输入直通模式或者在自己的计数器周期匹配CTRPRD时产生一个同步脉冲。软件同步 (SWSYNC)通过软件置位ECCTL2[SWSYNC]位可以手动触发一次同步事件为系统调试和启动对齐提供了便利。通过构建同步链你可以让一个模块作为主时钟其他模块作为从时钟实现所有PWM输出之间精确的、可编程的相位偏移这对于驱动多相电机或交错并联电源拓扑是必不可少的。5. 中断系统与寄存器配置详解再强大的硬件功能也需要软件的灵活控制。eCAP的中断系统和寄存器配置是软件与之交互的桥梁。5.1 中断事件与处理流程eCAP可以产生多种中断在两种模式下有效的中断源不同捕获模式有效CEVT1, CEVT2, CEVT3, CEVT4四个捕获事件CTROVF计数器溢出。APWM模式有效CTRPRD周期匹配CTRCMP比较匹配CTROVF计数器溢出。中断的处理遵循标准的外设中断流程但eCAP有其特殊性。中断使能寄存器ECEINT用于开放哪些事件可以申请中断中断标志寄存器ECFLG则实时显示哪些事件已经发生。这里有一个至关重要的细节ECFLG中的全局中断标志位INT就像一个总开关。当某个使能的事件发生且INT位为0时才会真正向CPU产生中断脉冲。一旦进入中断服务程序你必须读取ECFLG判断具体是哪个事件触发。处理该事件如读取捕获值、更新PWM参数。清除该事件的具体标志位在ECCLR寄存器中对应位写1。最后清除全局中断标志INT位在ECCLR寄存器中写1。如果只清除了具体事件标志而忘了清INT位模块将无法产生下一次中断。这个顺序是很多初学者容易出错的地方。5.2 关键控制寄存器配置指南手册中寄存器描述很详细但实际配置时需要抓住重点。以下是两个核心控制寄存器的关键位解析ECCTL1 (捕获控制寄存器1)CAPxPOL设置每个捕获事件的边沿极性。测量脉宽时通常CEVT1设上升沿CEVT2设下降沿。CTRRSTx是否在捕获事件x后复位计数器。用于启用差值模式。CAPLDEN允许捕获事件加载CAP寄存器。在单次模式下模块会在停止时自动禁用此位防止数据被意外覆盖。PRESCALE事件预分频用于滤除高频噪声或降低CPU中断频率。ECCTL2 (捕获控制寄存器2)CAP/APWM模式选择开关。0捕获1APWM。CONT/ONESHT连续/单次模式选择。STOP_WRAP在单次模式下定义停止点1-4在连续模式下定义循环缓冲区的包装点。APWMPOLAPWM输出极性。SYNCI_EN/SYNCO_SEL同步功能的使能与输出选择。REARM在单次模式停止后写1重新启动捕获序列。一个典型的捕获模式初始化代码框架以C语言为例可能如下所示void ECAP1_Capture_Init(void) { // 1. 停止计数器禁用中断安全配置阶段 ECap1Regs.ECCTL2.bit.TSCTRSTOP 0; // 停止计数器 ECap1Regs.ECCTL2.bit.REARM 1; // 确保模块处于待命状态 ECap1Regs.ECCLR.all 0xFFFF; // 清除所有可能存在的旧中断标志 ECap1Regs.ECEINT.all 0x0000; // 禁用所有中断 // 2. 配置捕获参数 ECap1Regs.ECCTL1.bit.CAP1POL 0; // CEVT1: 上升沿触发 ECap1Regs.ECCTL1.bit.CAP2POL 1; // CEVT2: 下降沿触发 ECap1Regs.ECCTL1.bit.CAP3POL 0; // CEVT3: 上升沿触发 ECap1Regs.ECCTL1.bit.CAP4POL 1; // CEVT4: 下降沿触发 ECap1Regs.ECCTL1.bit.CTRRST2 1; // 在CEVT2后复位计数器测量第一个脉宽 ECap1Regs.ECCTL1.bit.CTRRST4 1; // 在CEVT4后复位计数器测量第二个脉宽 ECap1Regs.ECCTL1.bit.CAPLDEN 1; // 使能捕获寄存器加载 ECap1Regs.ECCTL1.bit.PRESCALE 0; // 预分频设为1不分频 // 3. 配置工作模式 ECap1Regs.ECCTL2.bit.CAP_APWM 0; // 捕获模式 ECap1Regs.ECCTL2.bit.CONT_ONESHT 1; // 单次模式 ECap1Regs.ECCTL2.bit.STOP_WRAP 3; // 在4个事件后停止 (CEVT1-CEVT4) ECap1Regs.ECCTL2.bit.SYNCI_EN 0; // 禁用同步输入本例中 ECap1Regs.ECCTL2.bit.SYNCO_SEL 2; // 禁用同步输出 // 4. 使能中断 ECap1Regs.ECEINT.bit.CEVT4 1; // 我们选择在第4个事件停止时触发中断 // 5. 启动计数器 ECap1Regs.ECCTL2.bit.TSCTRSTOP 1; // 启动TSCTR计数器 ECap1Regs.ECCTL2.bit.REARM 1; // 武装单次序列开始等待事件 }6. 典型应用场景与避坑指南6.1 应用场景实例无刷直流电机BLDC换相检测使用捕获模式连接霍尔传感器信号。配置为在三个霍尔信号的边沿进行捕获通过计算相邻捕获事件的时间差可以精确计算出电机的电角度和转速用于实现六步换相或更高级的FOC控制。数字电源电压/电流环控制使用APWM模式生成驱动功率开关管如MOSFET的PWM信号。利用影子寄存器可以在每个PWM周期开始时安全地更新由PID控制器计算出的新占空比值实现平滑的电压或电流调节避免因占空比突变引起的次谐波振荡。超声波测距使用捕获模式测量超声波回波的时间。配置为单次模式在发射超声波的同时启动捕获并清零计数器当接收到回波上升沿时触发捕获事件读取的时间戳值即为超声波飞行时间从而计算距离。频率计使用捕获模式连续工作。测量连续两个上升沿或下降沿之间的时间间隔取倒数即为信号频率。结合预分频器可以测量很宽频率范围的信号。6.2 常见问题与排查技巧在实际调试中你可能会遇到以下问题问题1捕获模式下读到的CAP寄存器值全是0或不变。排查首先检查ECCTL2[CAP/APWM]位是否确为0捕获模式。然后确认ECCTL1[CAPLDEN]是否已使能1。接着检查输入引脚GPIO是否已正确复用为ECAP功能。最后用示波器确认外部信号是否真的到达了芯片引脚以及边沿极性配置CAPxPOL是否与信号匹配。问题2APWM模式没有波形输出或波形频率不对。排查确认ECCTL2[CAP/APWM]1。检查APRDCAP1寄存器是否被正确写入了一个非零值周期为0会导致计数器不工作。检查TSCTR计数器是否已启动TSCTRSTOP1。确认输出引脚的GPIO复用功能已开启。如果频率不对检查系统时钟配置和APRD值的计算是否正确PWM频率 系统时钟频率 / (APRD 1)。问题3在APWM模式下更新比较值CAP4但占空比没有改变。排查这是最经典的影子寄存器理解问题。你是否写入了影子寄存器CAP4写入后是否等待了足够的时间直到下一个PWM周期开始CTRPRD事件可以在CTRPRD中断中更新CAP4这样能确保立即在下个周期生效。或者检查你是否错误地写入了活动寄存器CAP2这会导致立即更新但可能引发波形毛刺。问题4中断无法进入或只进入一次。排查这是中断服务程序ISR编写不规范导致的。严格遵循中断处理流程在ISR中先读取ECFLG判断事件然后必须用ECCLR寄存器清除对应的具体事件标志位最后清除全局中断标志位INT。忘记清除INT位是导致中断只触发一次的最常见原因。同时确保在PIE或CPU级别正确使能了该中断向量。问题5多个eCAP模块的PWM输出不同步。排查检查同步链配置。确保主模块的SYNCO_SEL配置正确例如设为CTRPRD输出从模块的SYNCI_EN已使能。确保主模块的同步输出信号连接到了从模块的同步输入。可以使用软件同步SWSYNC进行一次性的对齐操作。另外检查各模块的CTRPHS相位寄存器值是否设置正确以实现期望的相位差。掌握eCAP模块意味着你掌握了嵌入式系统中处理时间与波形的核心技能之一。它虽然只是一个外设但其设计思想——硬件自动化的精确测量与生成、影子寄存器的安全更新、灵活的同步机制——代表了现代微控制器外设设计的精髓。希望这篇结合了原理与实战的详解能帮助你在下一个电机控制、电源设计或精密测量项目中得心应手地驾驭这个强大的工具。记住多动手配置多用示波器和调试器观察信号是理解这一切的最佳途径。

相关新闻

DecoTV与LunaTV深度对比:为什么选择这款二次开发的播放神器

DecoTV与LunaTV深度对比:为什么选择这款二次开发的播放神器

DecoTV与LunaTV深度对比:为什么选择这款二次开发的播放神器 【免费下载链接】DecoTV 基于最新版LunaTV二次开发的一个开箱即用的、跨平台的影视聚合播放站。【原KatelyaTV】 项目地址: https://gitcode.com/gh_mirrors/de/DecoTV DecoTV是基于最新版LunaTV二…

2026/10/19 11:33:16 阅读更多 →
AI Agent技术架构与核心实现解析

AI Agent技术架构与核心实现解析

1. AI Agent技术全景解析AI Agent(人工智能代理)本质上是一个能够感知环境、自主决策并执行行动的智能系统。不同于传统程序化的"if-then"规则,现代AI Agent通过机器学习模型实现认知、规划和行动三大核心能力。典型的AI Agent架构…

2026/10/18 9:19:05 阅读更多 →
C2000 eQEP模块深度解析:从编码器脉冲到精准位置与速度控制

C2000 eQEP模块深度解析:从编码器脉冲到精准位置与速度控制

1. 从脉冲到位置:eQEP模块的核心价值与设计哲学 在伺服电机、机器人关节或者任何需要精确知道“自己在哪里”的运动控制场景里,正交编码器(Quadrature Encoder)是工程师最信赖的“眼睛”。它输出的两路相位差90度的方波信号&#…

2026/10/18 9:19:19 阅读更多 →

最新新闻

AI辅助本科毕业论文:从选题到查重降重的9个实战工具清单

AI辅助本科毕业论文:从选题到查重降重的9个实战工具清单

每年毕业季都有人问我:为什么导师只丢下一句“再改改”就不管了?我看了不下几十份本科毕业论文初稿,绝大多数问题其实不在文笔,而在流程太乱——文献找不到重点、综述堆了一堆却没逻辑、改了七八稿还在被说“表述不学术”。这两年…

2026/10/19 15:08:05 阅读更多 →
激光雷达测距与三维点云:从原理到极端天气下的工程实践

激光雷达测距与三维点云:从原理到极端天气下的工程实践

早在封闭场地里陪别人调自动驾驶车的时候,我就对激光雷达又爱又恨。这玩意儿能在一百多米外把一棵树的每一根粗枝都扫成三维点云,但碰上大雾天,它又会瞬间“瞎”掉一大半,连路沿都找不准。不少刚入行的朋友问我:激光雷…

2026/10/19 15:08:05 阅读更多 →
数据链路层核心考点全解析:封装成帧、CRC校验与滑动窗口协议

数据链路层核心考点全解析:封装成帧、CRC校验与滑动窗口协议

1. 数据链路层到底在解决什么问题1.1 从“两台机器怎么说话”说起学计算机网络,到了数据链路层这一章,很多人会突然觉得画风变了。物理层讲的是比特流怎么在铜线、光纤里跑,网络层讲的是路由和转发,而数据链路层夹在中间&#xff…

2026/10/19 15:08:05 阅读更多 →
WireMock UI可视化API模拟管理实战:从入门到团队落地

WireMock UI可视化API模拟管理实战:从入门到团队落地

API联调是我们日常开发绕不过去的坎。接口一旦没就绪,前端等得干瞪眼,后端联调也得倒排期;就算接口好了,想模拟一个超时、一条报错数据、一个特殊状态码,还得跟后端同事反复商量。这个场景下,可视化API模拟…

2026/10/19 15:08:05 阅读更多 →
可重复读隔离级别:MVCC与快照读的机制解析

可重复读隔离级别:MVCC与快照读的机制解析

“可重复读”这个隔离级别,我见过太多人第一反应是:简单,就是在一个事务里,同一行数据读多少次都是一样的。但真到了线上排查问题的时候,又会发现事情没那么简单——明明设置的是可重复读,事务里第二次查询…

2026/10/19 15:08:05 阅读更多 →
Spring Boot配置加密实战:Jasypt加解密命令与密钥管理

Spring Boot配置加密实战:Jasypt加解密命令与密钥管理

先说说我为什么要把这篇文章写下来。之前的某次项目交接中,我接手了一套遗留系统,打开application.yml一看,数据库账号密码、Redis密码、第三方支付密钥清清楚楚躺在里面,甚至还有生产环境的配置。当时后背一凉——这意味着任何一…

2026/10/19 15:07:02 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →