MCU内置ADC的转换精度提高方法

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

差。
A、方法:
本文采用数学变化,将会大大减少该算式的误差,
连续取N个采样值进行算术平均运算
有效改善电源电压变化的抑制比。
N值较大时:信号平滑度较高,但灵敏度较低
由式(1)经过数学变化得公式; Vad = Dad Vref Dref
N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点:
在实际应用中,由于输入信号的输出电阻不同,如 果输出电阻过大,会引起实际测量的电压分压过小,因 而引起测量值较实际值偏小; 还有如果输入信号幅值 过大,以至于超过参考电压,也必须引入降压环节,使 输入电压低于参考电压,等等。
在用电池作为电源的设计中, 为了最大程度地降 低系统成本,采样分压电路采用如图2.
150
福建电脑
2011 年第 11 期
适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值, 信号在某一 数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的 实时控制不适用 比较浪费RAM 2.2 递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队 首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算, 就可获 得新的滤波结果 N值的选取:流量,N=12;压力:N=4;
1、数 学 变 换 减 小 运 算 误 差 , 减 小 温 度 漂 移 、 湿 度 、 环境等及电源电压的波动引起的误差
在实际应用中,由于环境温度、湿度等参数的变化 可能会引入一些误差, 电源电压的不稳定也会带来一 定的误差。 当然可以选择温度系数比较好、精度比较高 的电源模块提供稳定的电压。 但是由于高精度的电源
! " ! " 管理模块价格往往不菲,会大大增加系统的成本。 在本
设 计 中 ,采 用 市 场 上 面 比 较 常 见 的 LDO 作 为 电 源 电 压 。
! " ! " 对ADC采样数值计算公式进行变换处理, 在不增加系
统成本的情况下,减小了电压波动引起的误差,提高了 采样精度。
由 分 压 电 路 图 ( 见 图 2) 可 知 , 使 用 内 置 ADC 的 MCU 时候:
参考文献: [1]蓝 厚 荣.谈 谈 如 何 提 高 单 片 机 的 模 数 转 换 精 度[J].单 片 机 与 嵌 入式系统应用.2009, (6) [2]张 栋.TMS320F2812芯 片ADC模 数 转 换 精 度 的 分 析[J].电 子 技 术 应 用 .2010年 第 09期 [3]邱 超 .嵌 入 式 测 控 系 统 的 抗 干 扰 设 计 [J].福 建 电 脑 .2007年 03期
到的ADC数值相差最大为60。 硬件设置不变, 经过优
化,
选择Vad'=
Dad-Dref Dref
*Vref+Vref 计 算 ADC 采 样 转 换 数 值
在线实时调试时候得到的ADC数值相差最大为40。
2、多种滤波方法减小误差
如果不做优化处理,则由式(1)运算的误差:%
在采样过程中,导致采样电压波动的因素有很多。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (上接第 140 页)
2.2 无线通信模块数据传输程序
被唤醒,调用相应函数对事件进行处理。 数据的传输使 用 直 接 存 取(DMA)控 制 器 进 行 操 作 ,以 此 减 轻 STM32 核传送数据时的负担, 实现 CC2530 在高效利用电源 条件下得高性能。
Rx,Rf取值越大,采样电路的功率损耗就越低。 现在 大 多 MCU 内 置 ADC 输 入 电 压 阻 抗 最 大 不 能 超 过 10k 欧 姆。 而在用电池作为电源的设计中,Rx,Rf串联的阻抗 为几M欧姆时候,才能满足系统低功耗要求。 怎样才能 解决低功耗与阻抗不匹配的问题?
本 文 采 用 Rx=5.1M 欧 姆 ,Rf=560k 欧 姆 ,Ci=0.1pf 高 阻 抗采样分压电路来降低功耗, 满足系统对功率损耗的 要求。 对于由于阻抗不匹配造成的采样精度受温度,电 压 等 影 响 大 的 问 题 , 则 在 ADC 采 样 数 值 计 算 , 软 件 滤 波 等进行改善。 既满足了系统设计的低功耗要求,也达到 了系统设计中对ADC精度的要求。
术平均滤波法和递推平均滤波法 (又称滑动平均滤波 法)想结合的方法兼顾项目设计中的速度问题,实现误 差的最小化。 其中算术平均滤波法中N=4;递推平均滤 波法 (又称滑动平均滤波法)N=8. 经过软件滤波处理 后,12位ADC采样转换后的数据变化相差最大小于20, 满足了项目的要求。
3、标准校正减小偏移误差 经 过 前 2 步 骤 ,ADC 采 样 转 换 的 输 出 数 据 的 变 化 范 围大大缩小,变化数值相差最大小于20,基本满足项目 的要求。 但是ADC采样输出数值经过软件滤波后,和实 际数值有一定的偏移。 因此还需要加以校准,减小偏移 误差。 在本设计中,外部有5个模拟量需要采样。 在校准 的时候选择5个通道做为参考输入通道,同时提供已知 的直流参考电压作为输入(5个电压不相同)。 四、 结论 采 用 本 文 所 述 方 法 , 经 过 实 验 , 满 足 了 项 目 对 ADC 的采样精度,同时也降低了系统的功率损耗。 本文对类 似的项目设计有一定的参考意义和实际意义。
源;·在等待或STOP3 模式下实现了低噪音运行; ·异步时钟源实现了低噪 音 运 行 ;·可 选 的 异 步 硬
! " EVad'=E
Dad-Dref Dref
*Vref%%%
公式(3)
件转换触发;·与小于、 大于或等于可编程值自动比较 的中断;
! " 其中E Dad-Dref 表示 Dad-Dref 在公式(3)计算中因
E
=E
−D
? ?
D
? ?*V ?
式(2);% 可能是由于外界的随机信号干扰引起, 也可能是由于 电路中产生的谐波信号引起的周期性干扰信号。 用软
! " 其 中E Dad 表 示 Dad 在 公 式 (1)计 算 中 因 入 的 误 件滤波方法则可以有效减小此类误差。
Dref
Dref
2.1算术平均滤波法
图 2%图 分 压 电 路
图 1 逐次比较型 A/D 的输入端等效电路
其 中 ,RIN为 输 入 模 拟 信 号 内 阻 ,Vs 为 输 入 模 拟 电 压 信号,RSH为模拟多路开关与采样开关的等效电阻 ,VSH 为采样电容的充电电压。 采样过程是采样电容充电,跟 踪输入模拟信号电压的过程。 由等效电路可以看出,输 入模拟信号内阻越大, 则采样电容充电时间越长,因 此,对于采样频率要求越高的场合,要求模拟输入信号 内阻必须越小, 在应用时必须首先估算在规定的采样
2011 年第 11 期
福建电脑
149
二、HCS08内置ADC结构 HCS08内置ADC为逐次逼近 式 模 数 转 换 器 。 ADC
模块的特性包括: ·具有12 位分辨率的线性逐次逼近算法;·高达28
个模拟输入;·12、10 或或8 位右对齐输出格式; ·单 次 转 换 或 连 续 转 换 ( 单 转 换 后 自 动 返 回 空 闲 状
程序流程如图 6 所示。 本文研制的节点能够正常控制串口摄像头进行图
像采集,并且能够将采集的图像数据经无线进行传输, 实现对环境的有效监测。
图 6 无线通信模块数据传输程序流程图
无线通信模块数据传输程序工作在 ZigBee 协议栈 应用层, 用于转发控制指令及传输串口摄像头模块采 集的数据。 程序工作流程如下:节点硬件和 Zigbee 协 议栈初始化完成以后, 终端节点自动寻找并加入 ZigBee 网络。 然后节点进入休眠状态以节省能耗。 当指令 到达或者微处理器向无线通信模块递交数据时, 节点
态);·采样时间和转换速度/ 功率可配置; ·转换完成标志和中断;·最多可选择4 个输入时钟
上式可以变为: Vad-Vref = Dad-Dref ;
Vref
Dref
则 :Vad-Vref=
Dad-Dref Dref
பைடு நூலகம்
*Vref;
故:Vad'=
Dad-Dref Dref
*Vref+Vref
Vref为一常数,由上式可以推出
本文以 Freescale 的 HCS08 系列 MCU MC9S08QB 8 为研究对象, 研究结论对其他内置 ADC 的 MCU 设 计开发有一定的参考意义。 一、模拟输入阻抗对 ADC 采样结果的影响
所谓嵌入式模数转换器是指将模拟多路开关、采 样保持、A/D 转换、微控制器集成在一个芯片上,经常 采用逐次比较型进行 A/D 转换, 模拟输入信号一般为 非负单极性,且输入信号的电压范围为 0~AVREF。
E Dad-Dref <E Dad ;
Dref
Dref
比较EVad'=E
Dad-Dref Dref
*Vref和EVad=E
Dad Dref
*Vref,
则%EVad'<EVad
在本设计应用中,
采 用 Vad=
Dad Dref
*Vref计
算 ADC 转 换
数 据 ,ADC 设 置 为 12 位 采 样 模 式 , 在 线 实 时 调 试 时 候 得
低 参 考 VREFL。 在 本 设 计 中 为 VREFH = VDDAD,
VREFL=VSSAD。 两通道的是连续采样的,即两通道的
采样间隔时间很短, 可以以为两通道采样时候的参考
电压是完成一样的。 如果电源电压有波动,则同时会两
通道采样数值有影响,且影响是同向的。 在计算公式,
D ad -D ref 带 来 的 误 差 要 比 D ad 带 来 的 误 差 小 很 多 , 则
Dref
Dref
ADC模块中有一参考电压通道, 温度传感器。 还包 入的误差。
含内部能隙参考源通道。 三、ADC精度的提高
Dad 采样通道对应的数字电压值,Dref参考电压通道
系统中的误差主要来自两个方面:温度、湿度、环 境等及电源电压的波动引起的误差, 采样电压的波动 (可能是由于高频信号叠加,或者其他随机干扰信号)。
液面,N=4~12;温度,N=1~4 B、优点:
对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 结合实际情况,根据滤波算法的特点,本文采用算
【关键词】: ADC;误差;精度
前言: 在数据采集系统中, 模数转换器是其中至关重要
的环节, 模数转换器的精度以及系统的成本直接影响 到系统的实用性,因此,如何提高模数转换器的精度和 降低系统的成本是衡量系统是否具有实际应用价值的 标 准 [1]。
一般来说,想提高模数转换器的精度,势必会引起 成本的增加, 这就要求我们按照具体的精度要求合理 的设计模数转换器, 来达到具体的要求和降低系统的 成本[2]。 在精度要求不是很高的场合,我们经常利用嵌 入微控制器片内的 A/D 转换器来实现模数转换, 以此 来降低系统的成本。
Vad为采样通道的接入电压;Dad 采样通道对应的数 字 电 压 值 ;Vref 为 参 考 电 压 ;Dref 参 考 电 压 通 道 对 应 的 数
ÃÁÂÄÅÆ字值。在实际应用中Vref为一常数。
对应的数字值。 两者在采样转换过程中的参考电压是
同一数值, 均是ADC模块的参考电压高参考VREFH,
148
福建电脑
2011 年第 11 期
MCU 内置 ADC 的转换精度提高方法
王海燕 ( 常州机电职业技术学院 江苏 常州 213164 )
【摘 要】: 分析了内置 ADC 使用中输入阻抗不匹配所造成的 ADC 采样数据不稳定, 精度满足不了 设计要求等问题以及系统的误差产生的原因;结合实际应用改进了数学模型和相关算法,细给出了解决方 案,并且经过试验验证了本方案的可行性、有效性。
逐次比较型 A/D 的输入端等效电路如图 1 所示:
频率下,对模拟输入信号内阻的要求。 如果信号源内阻达不到要求, 则需使用一个输出
阻抗很小的缓冲器,例如可以使用电压跟随器,使信号 源 的 输 出 阻 抗 达 到 A/D 转 换 器 所 要 求 的 输 入 阻 抗 的 范 围之内。 阻抗不匹配造成最大的问题就是采样精度受 温度,电压等影响大。 [3]
相关文档
最新文档