ADC转换实战汇总:采样原理、噪声抑制与校准技巧
我调试一块板子上的电池电压采样时被ADC读数折磨得够呛输入电压纹丝不动采集值却在一两百个数之间来回跳。查了几天最后发现问题根本不在ADC自身——参考电压引脚旁边缺了一颗退耦电容采样结果自然跟着参考源一起抖。从那以后我就养成了一个习惯遇到ADC转换结果不准先别急着怀疑芯片坏了按“原理—噪声—算法—校准”这条线逐层排查大部分问题都能定位。这篇内容就是把这几年跟ADC转换打交道的经验汇总出来。从采样原理中最核心的保持电容与量化误差到取平均时算术平均与滑动平均怎么选再到精度层面参考电压、输入阻抗、校准方法的影响配合几个可以直接抄的工程参数建议。无论你是在做电池电压检测、传感器采集还是电流采样读完应该都能少踩几个坑。1. ADC到底在做什么从电压到数字的一次翻译1.1 采样保持为什么ADC需要“定格”瞬间值ADC转换模数转换的本质是把一个连续的模拟电压信号切成一个个离散的数字值。但这件事不像读数那么轻松因为转换需要时间——芯片内部的处理电路从拿到电压到输出数字结果总有个过程。如果在这个过程中输入电压一直在变化转换结果就会“糊”掉谁也说不清你采到的到底是哪个时刻的电压。所以几乎所有逐次逼近型ADCSAR ADC内部都有一个采样保持电路它的角色相当于“按下快门”先通过一个开关接通输入信号让内部的保持电容充电让电容电压跟着输入走一小段时间然后断开开关电容就把这一刻的电压“定格”住直到转换完成。这个“定格”的电压才是后续量化电路真正处理的输入。这里有一个非常关键的工程参数叫采样时间。你给这电容的充电时间越短就越要求输入信号源能快速把电容充满。如果信号源输出阻抗过大充电时间常数RC太大电容电压还没追上输入电压开关就断开了结果就是采样值偏低——这是很多人遇到的“读数偏小”问题的常见原因之一。后面讲精度时还会专门展开。1.2 量化与分辨率位数的真实含义采样保持之后电压信号进入量化阶段。量化就是把连续的电压幅度划分为有限个台阶每个台阶对应一个数字编码。一个12位ADC就是把参考电压Vref比如3.3V从0到Vref分成4096个台阶每个台阶对应1 LSB也就是1个最低有效位1 LSB Vref / 2^N代入一下12位ADC参考电压3.3V1 LSB ≈ 0.000806V约0.8mV。这意味着你输入2.000V得到的数字值和输入2.0008V得到的数字值从数字结果上看可能完全一样——ADC的“分辨率天花板”就摆在那里不是软件能突破的。这里必须澄清一个很多人混为一谈的概念分辨率不等于精度。分辨率只是ADC能分辨的最小步进而精度是实际测量值与真实电压之间的接近程度。一个12位ADC如果参考电压噪声很大可能分辨率很高但精度很差反过来一个10位ADC经过精心校准精度反而可能超过那个未经校准的12位ADC。理解这个区别后续很多调试方向就不会跑偏。量化过程还有一个绕不开的量化误差理论最大为±0.5 LSB。这个误差本质上是信息丢失——电压落在两个台阶之间时ADC只能选其中一个最近的台阶。它不是芯片缺陷而是所有ADC的原理性误差。1.3 转换时钟与采样时间快不等于好如果你翻过单片机手册的ADC章节一定会看到“最大转换频率”和“最小采样时间”两个指标。以常见的12位逐次逼近型ADC为例芯片内部要求一定频率范围内的ADC时钟然后规定最短采样时间比如1.5个ADC时钟周期和转换时间比如12.5个周期。很多新手容易这样操作把ADC时钟拉到最大值总转换时间压到最短结果发现测量结果波动变大。原因在于采样时间太短时内部采样电容没有足够时间充满尤其当信号源阻抗偏高时误差会被进一步放大。此外过高的转换时钟会引入更多内部数字开关噪声对模拟结果造成干扰。实际项目中我一般不建议把ADC设为“极限高速”模式除非你确实需要极高的采样率。多数应用场景比如电池电压检测、温度采集采样率哪怕只有几百赫兹也完全够用。此时把采样时间适当放宽比如软件里配置成最大采样周期往往能显著改善读数的稳定性。快不是目的准确才是。2. 读数乱跳的根源噪声来自哪里2.1 参考电压的抖动精度的大本营ADC转换的本质是把输入电压与参考电压做比较。说得直白点参考电压就是ADC的“标尺”——标尺本身不准量什么都白搭。参考电压的抖动、漂移、纹波会直接叠加到所有转换结果里。内部参考源的优势是使用方便有些芯片还能在软件里调节参考电压值但它的温漂系数和噪声水平通常不如外部专用参考芯片。如果你做的是工业级产品要求在全温范围内保持稳定强烈建议使用外部参考芯片选型时重点关注两个指标温漂系数ppm/°C和噪声峰峰值。举例来说一个温漂50ppm/°C的外部参考常温下3.0V很准温度升到85°C时参考电压可能偏了大约9mV——对12位ADC来说这个偏量接近11个LSB足够让你的采集结果出现可观察的偏移。MCU内部参考通常存在同样问题只是表现更隐蔽。我踩过的坑是某芯片数据手册上写着内部基准精度2%其实常温下问题不大但板子放在室外早晚温差十几度时采集值就像“呼吸”一样缓慢漂移。后来换成外部参考IC后漂移曲线立刻平了。2.2 电源与布局带来的耦合噪声第二个常见噪声源来自供电。ADC的模拟电源引脚AVDD、AVCC等和数字电源引脚如果共用同一路电源数字电路翻转时产生的电流尖峰会在电源走线的寄生电感上产生压降进而污染模拟电源。这个问题在ADC采样率较高、数字总线繁忙时尤其明显。处理方式有几个层次按性价比从高到低模拟电源与数字电源之间串磁珠磁珠在高频时呈高阻能阻断数字噪声向模拟域传播模拟电源引脚就近放0.1uF 10uF并联退耦电容电容要尽可能靠近引脚放置走线先到电容再到引脚效果比较好条件允许时PCB上把模拟地和数字地分区铺铜在一点处汇合避免数字电流的返回路径穿过模拟采样区域。再一个容易忽视的噪声源就是快速翻转的数字信号线比如I2C时钟线、PWM输出线与ADC模拟走线平行敷设。高频信号通过寄生电容耦合到模拟走线上直接污染采样结果。解决办法就是拉开距离、垂直走线、用地线隔离这些都属于布局基本功但很多人都不爱注意直到读数飘了才回头查布线。2.3 信号源阻抗别把ADC输入端当成理想电压表有人用万用表测量习惯套ADC以为ADC输入引脚是高阻随便接什么源都行。实际上大多数MCU内置ADC的输入引脚并非理想高阻它有一个采样电容每次采样都相当于把一个电容接入被测电路充电充电需要从信号源吸取电流。重要概念是信号源阻抗。以一个输出阻抗10kΩ的温度传感器分压网络为例内部采样电容假设为14pF常见MCU参数取样时间极短时RC 10kΩ * 14pF 0.14us这个时间常数本身很小。但如果源阻抗为100kΩRC就变成1.4us。设计上要求采样时间内电容电压应稳定到0.5 LSB以内经验法则是采样时间至少要达到几个RC时间常数。如果源阻抗较大而采样时间不足时会出现一个非常典型的症状ADC读数“系统性偏低”而且这个偏低量随着前一通道电压的大小变化而变化——因为电容上的残留电荷会影响下一次采样。解决思路有三类增大采样时间软件可配在ADC输入引脚对地并联一个电容无源RC滤波也能压低噪声但注意会与源阻抗形成低通可能导致动态信号变慢加入运算放大器做缓冲电压跟随器提供极低输出阻抗这是最彻底的方案。我的经验是先用上面的“并联电容看变化”法快速判断源阻抗问题在输入脚并联一个0.1uF电容如果读数明显变高趋向真实值或者波动显著变小那就说明源阻抗偏高了。2.4 运放与缓冲低阻抗驱动的必要性既然源阻抗问题这么普遍实际项目中直接用运放做缓冲就是常规操作。电压跟随器接成单位增益输入阻抗可以做到几百兆欧输出阻抗只有几欧姆到几十欧姆几乎可以和任何ADC直接相连。不过运放不是随便接上就完事。要注意运放是否轨到轨输出如果输入电压接近电源轨普通运放输出会削顶还要注意运放的带宽和压摆率对于变化很慢的直流信号基本无所谓但如果信号有高频成分带宽不足会导致信号失真。此外运放自身也有失调电压Vos高精度场景要选低失调、低温漂的型号。很多精密运放Vos能做到几十微伏级别比12位ADC的一个LSB还小基本不会成为误差瓶颈。给ADC做缓冲还有个防呆技巧给运放输出到ADC输入之间串一个小电阻比如100Ω可以抑制运放输出与采样电容之间的振铃代价是引入极小的时间延迟和电阻热噪声对于大多数场景可以忽略。3. 取平均的正确姿势从简单算术到滑动滤波3.1 算术平均最简单但容易被忽视的前提ADC读数乱跳时很多人的第一反应就是“多采几次取平均”。这个思路没错但必须明白算术平均到底解决了什么问题。它主要抑制的是随机白噪声——也就是那种围绕真实值上下对称抖动的噪声。对确定性干扰比如50Hz工频干扰的固定偏置、方波毛刺、脉冲尖峰单纯求平均效果有限。这里有个“收益递减”规律对高斯白噪声M次采样的平均值噪声标准差降为单次采样的1/√M。也就是说4次平均噪声降一半16次平均降到四分之一100次平均才降到十分之一。想靠无限增加采样次数来压噪投入产出比很低。我做过一组实测对比某个12位ADC单次采样噪声峰峰值约±8 LSB4次平均后降到约±4 LSB16次平均后降到约±2 LSB64次平均后约±1 LSB基本接近12位ADC的物理极限。再往上增加次数改善幅度几乎不可感知还白白占用CPU时间。所以使用算术平均时先要判断噪声类型。如果读数在真实值上下对称抖动抖动幅值随机那么算术平均是有效的如果噪声表现为偶发的尖峰那算术平均会把这个尖峰也平均进去导致偶尔出现一次离谱的值——这种情况中值滤波反而更合适。另一个容易忽略的前提被测信号本身必须是稳定的。如果信号本身就在缓慢变化你对64次采样取平均得到的是这段时间内的“时间平均”可能抹平了真实的信号波动。取舍原则是信号的截止频率越低滤波窗口可以越大信号变化越快窗口必须越短。3.2 滑动平均实时系统的实用选择算术平均有个使用限制要么定期采集固定次数要么就必须等凑齐N个数据才能算一次。实时系统里我们希望每个控制周期都能拿到一个刷新过的平滑值而不是隔一段时间才跳出一个新数。滑动平均就是为此设计的。实现上就是固定一个长度为N的环形缓冲区每次采到新值把最老的值丢出去用剩余N-1个值和最新值重新求平均。这样每个采样周期都能输出一个新的滤波值数据流动性好。选择窗口长度N要权衡两点窗口越长平滑效果越好、滞后越大窗口越短响应越快、但残余噪声更多。我的经验参考如下电源电压监测窗口8-16信号变化本身很慢有效值刷新足够频繁温度NTC采集窗口4-8温度变化蒸馏一般可以稍微激进一点电机电流采样窗口4-8需要一定的响应速度窗口太大会掩盖真实电流突变音频/话音信号不建议用简单滑动平均相位失真和频率响应问题会让信号明显“发闷”。滑动平均还有一个工程便利如果窗口长度N取2的整数次幂8、16、32除法可以直接用移位实现在无FPU的低端单片机上节省不少CPU开销。3.3 中值滤波对付尖峰干扰更稳ADC采集中最令人头疼的噪声往往不是随机白噪声而是偶发的脉冲干扰——可能是电机换向火花、继电器吸合、电磁阀动作瞬间产生的尖峰。这类干扰的特点是时间很短、幅度很大、偶尔出现。用算术平均和滑动平均处理尖峰会被部分“吸收”进结果里表现为偶尔一次的突跳但如果用中值滤波只要尖峰不占多数它就会被直接丢弃。中值滤波的原理很简单连续采N个值通常N取奇数如3、5、7排序后取中间那个作为输出。如果N5连续采到的值是[100, 98, 102, 350, 101]排序后是[98, 100, 101, 102, 350]取中间值101尖峰350被完全排除。中值滤波的代价是排序耗时。N3时交换排序非常快N5、7时适当选择插入排序或选择排序在几十MHz的单片机上也就是几十个周期的事。如果采样率要求不高这个开销可以忽略。把中值滤波和滑动平均组合使用效果往往好于任何一个单独使用先做一次窗口大小为3或5的中值滤波剔除尖峰再对剔除尖峰后的数据做滑动平均压低白噪声。这个组合在电机控制场景里非常常见既能防脉冲又不至于让平滑滞后太大。3.4 一次性跳变检测游戏摇杆式的数据平滑思路还有一种场景既不希望随机抖动暴露出来又不希望过滤掉真实的大幅变化。典型比如摇杆电位器、油门踏板位置传感器——用户拨动时数据应该平滑跟进用户不操作时输出应该稳定如钉。这类场景可以采用“死区步进跟随”的思路维护一个上次输出值base每次读取新采样值cur如果 |cur - base| 小于阈值认为这是噪声保持base不变如果差值大于阈值则让base向cur方向移动一个固定步长step。这样小抖动被完全抑制大变化则以固定速率跟进手感上类似模拟摇杆的阻尼。实际参数设定上阈值要大于系统正常噪声的峰峰值步长决定响应的快慢。一次项目中调速旋钮的读数一直抖动导致电机转速抖参考这个思路只加了十几行代码问题就解决了。这个方式完全不需要排序和缓冲内存占用小是资源受限场景下的好方案。4. 精度的尽头是校准增益误差与偏移误差的处理4.1 偏移误差让曲线平移的元凶只要输入端接地理论上ADC应该输出0。但实际芯片总有偏移误差表现为“输入为0时输出不为0”或“输入为某个电压时输出整体平移了若干个LSB”。偏移误差意味着整个转换曲线在横轴方向上平移了一段距离。偏移误差的来源主要是内部比较器的失调电压、电荷注入效应、以及参考电路的不对称。对大多数MCU内置ADC来说出厂时并没有做精密校准偏移误差可以达到几个到十几个LSB。处理偏移误差的方法叫零点校准把输入端接到已知电压最方便的就是接地采集足够多次取平均把平均值记作offset。以后每次转换结果都减去这个offset。注意一点零点校准只是在“0点附近”修正平移它不能同时修正放大倍数的偏差。所以做完偏移校准后还要做增益校准。4.2 增益误差斜率不对是什么感觉增益误差表现为转换曲线斜率偏离理想斜率。假设理想情况下输入Vref时输出4095实际可能只有4080输入Vref/2时输出2047实际可能只有2035。这种误差在高量程端表现得尤为明显。增益误差的来源包括内部DAC电容阵列的失配、参考电压采样网络阻抗等。和偏移误差一样MCU内置ADC的增益误差也不做出厂标定不同芯片之间的离散性还比较大。这里可以算一笔账一个12位ADC增益误差假设为-5 LSB满幅如果直接测量3.0V接近满幅误差就是接近5个LSB测量0.5V时由于信号只占量程的15%贡献误差大约只有0.8个LSB左右——所以增益误差在低量程端影响小高量程端影响大。这也是为什么校准增益误差要尽可能在接近满量程的电压下进行。4.3 两点校准法的完整流程把偏移误差和增益误差合在一起校准就是经典的两点校准法。核心假设是ADC的实际输入-输出曲线是一条直线与理想直线之间存在偏移和斜率两个偏差只要测两个已知点就能唯一确定这条实际直线然后建立从ADC读数到真实电压的线性映射关系。实操步骤选两个校准点一个尽量接近0V比如Vref引脚接地一个尽量接近满量程比如用精密基准源给Vref电压或者一个已知高精度电压。每个校准点连续采集N次N建议64或128取平均得到raw_low和raw_high对应的真实电压为real_low和real_high已知值。计算增益系数k (real_high - real_low) / (raw_high - raw_low)以及偏移量b real_low - k * raw_low。实际测量时真实电压 k * 原始读数 b。需要注意两个细节校准点之间跨度越大拟合出的直线越能代表整个量程的响应校准点的真实电压必须比你的测量设备还准否则校准反而引入了新误差。批量产品想要一致性更好可以每个模块单独校准把k和b写入EEPROM/Flash里上电时加载。4.4 温度漂移校完了还会变两点校准能解决芯片固有偏差但校准结果并非永久有效。ADC的偏移误差和增益误差都会随温度变化尤其是MCU内置ADC内部某些电路的温度系数并不算小。你25°C室温下校准好的k和b板子放到60°C环境里可能又偏回去了。应对措施分几个层次不追求极端精度时做常温两点校准即可在整机工作温度范围内精度仍然可以接受如果温度范围大、精度要求高可以在多个温度点做分段校准在运行中根据当前温度插值选取k和b还有一种不算常见的做法利用ADC内部温度传感器实时估计芯片温度然后对校准参数做温度补偿。这个精度取决于内部传感器的准确度不算特别好但聊胜于无。我的看法是不要一开始就想着搞复杂温度补偿。先在常温下校准测试整机全温度范围的误差到底有多少。如果校后误差在可接受范围内就不用画蛇添足如果超差再看误差是否呈线性规律再决定是否做多温度点标定。5. 工程上的几个实用经验5.1 关键参数速查表把前面涉及的核心参数整理成一个表方便设计时快速对照参数典型值/建议说明1 LSB12位3.3V≈0.806mV分辨率物理极限采样时间按需拉长源阻抗高时尤其重要信号源阻抗建议低于10kΩ过高需加运放缓冲平均次数16~64对白噪声有效窗口长度滑动平均4~16滞后与平滑的折中中值窗口3或5抗脉冲尖峰校准点数2点0点附近满量程附近表里每一项背后都能串联起一串排查步骤。你调ADC时如果感觉无从下手照着表逐项核对就是一个很好的排查路径。5.2 过采样用速度换精度的技巧有些场景下ADC的分辨率不够用想测量一个比1 LSB还小的电压细微变化又不想换更高位数的外部ADC可以尝试过采样Oversampling技巧。原理不复杂如果噪声是白噪声且幅度足够覆盖至少1 LSB对2^m次采样取平均等效分辨率大约可以增加m/2位。也就是说要增加1位有效分辨率需要4倍过采样增加2位需要16倍。注意这个技术有两个先决条件噪声必须是随机白噪声且噪声幅度不能太小。如果信号本身极其稳定、噪声极小那么每次采样得到的都是同一个值取平均自然什么都提升不了。这种情况下反而可以把参考电压调低以提高相对分辨率或者改用更高位数的ADC。过采样的另一个作用是“白赚分辨率”的同时还平滑了数据。常见实现是以4倍或16倍于所需采样率的频率连续采样累加后右移相应位数输出。代码实现相当简单很多低端单片机也能跑得动。5.3 不同场景下的推荐配置最终给几个场景的推荐组合属于可以直接套用的起点配置电池电压检测采样率1kHz以下采样时间拉长滑动平均窗口8不需要运放缓冲分压电阻注意阻值典型100k/20k这种组合最好加运放。NTC温度采集采样率几百Hz中值滤波3 滑动平均4NTC分压网络中上拉电阻建议不超过10k否则直接换用低阻输入电路。电机电流采样采样率尽量高几十kHz先做3值中值剔除尖峰再做4~8点滑动平均布局上采样电阻与ADC距离尽量短。多通道轮询采集每个通道切换后延时几个微秒再启动采样给内部电容充分时间建立到新通道的电压水平。这几组配置都不是什么严谨推论而是多种场景实测后觉得比较“省心”的起点。带自己项目时从这些参数出发再根据实际噪声情况微调通常能少走很多弯路。如果调参过程中发现再怎么调都压不下来的噪声回到上面2和4两节检查参考电压、电源、接地和信号源阻抗——八成问题不在算法上。文章来自“ADC转换汇总(采样原理、取平均、精度等)”

相关新闻

MATLAB highpass函数详解:从滤波原理到工程实战

MATLAB highpass函数详解:从滤波原理到工程实战

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

2026/10/14 1:44:13 阅读更多 →
YOLO26改进-Neck | LPRMAlignUpModule:局部像素关系建模对齐上采样,缓解跨尺度融合中的细节损失 | TPAMI2025

YOLO26改进-Neck | LPRMAlignUpModule:局部像素关系建模对齐上采样,缓解跨尺度融合中的细节损失 | TPAMI2025

前言 本文介绍了局部像素关系对齐上采样模块(LPRMAlignUpModule)在YOLO26中的结合应用。该模块通过压缩特征预测局部像素关系,并利用不同膨胀率的动态关系对跨尺度特征进行对齐与细化,增强上采样过程中的局部结构表达能力。我们将…

2026/10/14 1:44:13 阅读更多 →
Cloud 3.0 实战:算力调度、应用交付与成本优化的三大挑战

Cloud 3.0 实战:算力调度、应用交付与成本优化的三大挑战

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

2026/10/14 1:44:13 阅读更多 →

最新新闻

LaTeX 2025环境配置:texlive + TeXstudio

LaTeX 2025环境配置:texlive + TeXstudio

文章目录Latex2025环境配置一、LaTeX 简介1.1 什么是 LaTeX?1.2 为什么使用 LaTeX?1.3 如何开始使用 LaTeX?二、texlive下载安装2.1 texlive下载2.2 texlive安装2.3 常见问题2.3.1 用管理员权限打开install-tl-windows.bat 报错2.3.2 Latex安…

2026/10/14 2:20:23 阅读更多 →
从工勘图到资源库:提交 nVisual Studio 与机房设计全生命周期的闭环

从工勘图到资源库:提交 nVisual Studio 与机房设计全生命周期的闭环

从工勘图到资源库:提交 nVisual Studio 与机房设计全生命周期的闭环摘要:工勘图纸的价值在「进入可检索、可复用资源库」之后才被放大——本地文件解决现场与交付,平台解决长期资产。DCDesigner 的「提交 nVisual Studio」把工勘 JSON 一键回…

2026/10/14 2:20:23 阅读更多 →
因果推断教材实战:从AB实验到双重机器学习与策略学习

因果推断教材实战:从AB实验到双重机器学习与策略学习

简介:这份资源是斯坦福大学Stefan Wager于2024年9月更新的《Causal Inference: A Statistical Learning Approach》教科书草稿,面向数据科学、统计学、经济学与公共政策领域的学习者和研究者,帮助其系统掌握基于统计学习方法的因果推断理论与…

2026/10/14 2:20:23 阅读更多 →
游集美Day1:逛完学村走老巷,被这几家街坊常来的小店拦住了脚步

游集美Day1:逛完学村走老巷,被这几家街坊常来的小店拦住了脚步

很多人来集美,打卡完嘉庚建筑、龙舟池,拍几张照片就匆匆返程。 但集美真正动人的烟火,不在网红打卡点,藏在黄昏的社区老巷。 这条路线我按地理位置理顺,不跨区乱跑,骑行顺路,慢逛无赶路压力&…

2026/10/14 2:20:23 阅读更多 →
系统辨识实战教案:M序列设计、RLS实现与工业白化检验

系统辨识实战教案:M序列设计、RLS实现与工业白化检验

简介:本资源是一份面向自动化专业本科生与研究生的《系统辨识》课程教案,聚焦工程建模核心能力培养,解决从实际系统数据中构建可用数学模型的关键问题。教案覆盖实体与模型本质辨析、Zadeh三要素(数据/模型类/准则)理论…

2026/10/14 2:20:23 阅读更多 →
AI 辅助科研溯源闸门:输入·命令·决策·证据四类记录的失败含义与当天最小实验

AI 辅助科研溯源闸门:输入·命令·决策·证据四类记录的失败含义与当天最小实验

千笔-AIWritePaper https://www.aiwritepaper.com Agent 能很快从原始表跑出一张宇宙学风格的斜率图,不等于结果可审查。缺了输入校验和,文件可以被静默替换;命令行事后改参,YAML 里仍写着旧参数;决策条目没有理由&am…

2026/10/14 2:19:23 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 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/13 22:01:27 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/12 18:11:17 阅读更多 →