尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
【嵌入式外设精学】Day16|ADC:分辨率、采样时间、平均滤波
【嵌入式外设精学】Day16ADC分辨率、采样时间、平均滤波今天解决读数抖、通道串扰、静态值偏分别怎么处理目录问题 2. 原理 3. 代码 4. 误区 5. 自测 6. 答案1. 问题同一电压码字乱跳多通道轮流读时互相影响2. 原理2.1 分辨率12bit 表示把参考电压分成约 4096 档。档数不等于“一点不抖”噪声、参考电压不稳都会让码字跳。2.2 采样时间ADC 内部先给一个采样电容充电再转换。信号源内阻大、采样时间太短 → 电容没充够 → 读数偏、通道之间“残留”上一通道的电压。多通道轮流扫时更要把采样时间留够。2.3 平均滤波多次采样求平均能压噪声但会变“钝”有滞后。现场常用“连续 N 次平均”或“滑动平均”。2.4 电压换算12bit、参考 3.3V 时一码约 3.3/4095 ≈ 0.8mV。以实际参考电压和校准为准。3. 代码示例#includestm32f4xx.h#includestdint.huint16_tadc_read_once(uint8_tchannel){ADC_RegularChannelConfig(ADC1,channel,1,ADC_SampleTime_84Cycles);ADC_SoftwareStartConv(ADC1);while(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC)RESET){}returnADC_GetConversionValue(ADC1);}uint16_tadc_read_avg(uint8_tchannel,intn){uint32_ts0;inti;for(i0;in;i){sadc_read_once(channel);}return(uint16_t)(s/(uint32_t)n);}floatadc_to_volt(uint16_tx,floatvref){return(float)x*vref/4095.0f;}滑动平均1ms 调一次窗口 8staticuint16_thist[8];staticuint8_tidx;staticuint32_tsum;uint16_tadc_slide_push(uint16_tx){sumsum-hist[idx]x;hist[idx]x;idx(uint8_t)((idx1u)7u);return(uint16_t)(sum3);}4. 常见误区误区正解12bit 就是绝对准有噪声和误差看有效位采样时间越短越好源阻抗大时会测不准平均点数无限大滞后变大动态信号失真不必看参考电压换算必须用真实 Vref5. 自测12bit码 2048Vref3.0V电压约多通道串扰优先改什么6. 答案约1.5V。加长该通道采样时间或通道间加缓冲/延时硬件上降低源阻抗。作者shuifanyu标签ADC采样滤波
RELATED

相关推荐

STM32串口不定长接收:DMA+空闲中断方案详解与避坑指南

STM32串口不定长接收:DMA+空闲中断方案详解与避坑指南

搞嵌入式的人迟早都会遇到这么一件事:MCU 串口收到的数据不是定长的。可能是 AT 指令那种“以 \r\n 结尾”的文本帧,可能是 Modbus 那种“每次几十字节但长度不确定”的报文,也可能是传感器模块随机吐出来的一段不定长数据。如果用查询或者单…

📅 2026/10/4 20:08:22
让AI输出难读的6个习惯清单:asd-ste100-skill扫描检查表,人人可立即上手

让AI输出难读的6个习惯清单:asd-ste100-skill扫描检查表,人人可立即上手

让AI输出难读的6个习惯清单:asd-ste100-skill扫描检查表,人人可立即上手 【免费下载链接】asd-ste100-skill ASD-STE100 Simplified Technical English rules, repurposed as a Claude Code skill for rewriting ambiguous agent-facing English. 项目…

📅 2026/10/4 20:08:22
NumPy 入门:掌握 Python 数据处理的基础能力

NumPy 入门:掌握 Python 数据处理的基础能力

摘要 NumPy 是 Python 数据分析生态的重要基础库,提供高效的多维数组、向量化运算、广播机制、索引切片和线性代数能力。pandas、SciPy、scikit-learn 等工具都不同程度地建立在 NumPy 的数组思想之上。 本文从 ndarray 开始,介绍数组创建、形状、数据…

📅 2026/10/4 20:08:22
MORE NEWS

更多资讯

📰

IDE插件机制深度解析:从activationEvents到CLI协同

1. “plugins”不是功能模块,而是现代开发工具的神经末梢你点开 Cursor、VS Code、JetBrains IDE 的插件市场时,看到的“Plugins”三个字母,绝不是菜单栏里一个可有可无的二级入口。它本质上是一套运行时可加载、沙盒化隔离、声明式注册、事件…

📰

kordoc watch无人值守流水线:文件夹监控+Webhook通知,自动文档转换

kordoc watch无人值守流水线:文件夹监控Webhook通知,自动文档转换 【免费下载链接】kordoc 모두 파싱해버리겠다 — HWPHWPXPDFOffice 문서를 Markdown으로. 양식 자동 채우기와 신구대조를 갖춘 CLIMCP 서버 | Convert Korean documents (HWP, HWPX, PD…

📰

插件体系全解析:从plugin.json到TypeScript SDK的实战指南

1. 从“plugins”这个词说起:它到底在解决什么问题但凡折腾过现代开发工具的人,对plugins这个词都不会陌生。它字面意思就是“插件”,但真正理解它的人知道,这背后其实是一整套可扩展架构的设计哲学。你用的编辑器、IDE、命令行工…

📰

插件机制深度解析:从IAR到Web IDE的加载失败与激活问题

我最近查资料的时候,无意间刷到一串热搜词,里面好几条都在问类似的问题:“iar plugins 是干什么的”“failed to load plugins web boot: 2 entries did not activate”“harness failed to load plugins”“musicfree plugins”。说实话&…

📰

Node.js 安全实践:在沙箱中运行不可信代码的完整指南(nodebestpractices 解读)

文档教程后端 【免费下载链接】nodebestpractices ✅ The Node.js best practices list (July 2026) 项目地址: https://gitcode.com/GitHub_Trending/no/nodebestpractices 点击查看 免费下载 在 Node.js 应用中,我们通常只应运行自己信任的 JavaScrip…

📰

小说改编短剧怎么做:Drama Skills原著分析skill拆解改编价值与分集候选

小说改编短剧怎么做:Drama Skills原著分析skill拆解改编价值与分集候选 【免费下载链接】drama-skills 开源 AI 短剧/漫剧创作 skill 合集:剧本、角色资产、分镜 storyboard、图片/视频提示词、审查,适配 Claude Code 与 Codex | Open-source…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬