DS4830光微控制器的模数转换器(ADC)失调会随着温度和增益选择而变化。但是,DS4830允许用户测量ADC内部失调。测得的ADC失调被添加到ADC失调寄存器中,以消除失调误差。本应用笔记演示DS4830在应用中的ADC内部失调校准。
介绍
模数转换器(ADC)将输入电压转换为相应的数字代码。完美的ADC代表了整个代码空间中的这种行为。图1显示了采用2V基准电压源的3位ADC的传递函数。
图1.1/2 LSB补偿的理想3位ADC。
但是,很难设计出满足所有架构中完美ADC特性的ADC。由于各种设计限制或约束,ADC输出会产生各种误差,例如积分非线性(INL)、差分非线性(DNL)、增益和失调。
失调误差是ADC中最常见的误差。用于零电压输入(ADC输入接地)的ADC数字代码输出称为ADC失调。图2显示了带失调的3位ADC的传递函数。
图2.具有失调功能的1/2 LSB补偿3位ADC。
DS4830 ADC内部失调
DS4830光学微控制器具有13位ADC和ADC失调寄存器(ADVOFF),用于校准ADC内部失调。对于每个DS4830,在室温下,ADC增益ADCG1 (1.216V满量程)的失调经过工厂校准。但是,DS4830 ADC内部失调会随着温度和增益选择而变化。
DS4830可以测量任何可用ADC增益设置的ADC内部失调。然后,该测量可用于校准ADVOFF寄存器。为了测量ADC内部失调,ADC控制器将内部接地连接到ADC输入,并在ADC上开始转换。ADC 控制器在位置 25 处有一个专用通道选择,指示 ADC 控制器测量 ADC 内部偏移。ADC控制器没有专用的数据缓冲器来存储ADC内部失调转换结果。要访问内部失调转换结果,必须使用ADC控制器中的位置覆盖选项。
ADC内部失调的位置覆盖选项
默认情况下,ADC转换结果存储在与通道号对应的ADC缓冲器位置。ADC 控制器提供“位置覆盖”选项。此选项允许将ADC转换结果放置在任何数据缓冲区位置(0-24个数据缓冲区位置)。ADC控制寄存器(ADCN)具有LOC_OVR位的位置覆盖。将此位设置为1将使用户能够选择存储ADC转换结果的备用位置。当 ADC 状态寄存器 (ADST) 中的 ADC 转换配置寄存器选择位 (ADCFG) 设置为 1 时,备用位置由 ADDATA[12:8] 位 (ALT_LOC[4:0]) 定义。
用于内部失调测量的ADC配置步骤
以下步骤解释了DS4830的ADC数据和配置寄存器(ADDATA)配置,用于ADC内部失调测量。
以下位设置为ADCN和ADST寄存器中的相应值。
位置覆盖位 (ADCN.LOC_OVR) 到 1
ADC 配置选择位 (ADST.ADCFG) 到 1
ADC 寄存器索引位 (ADST.ADIDX[4:0]) 到 0
写入 ADDATA 寄存器 (ADDATA)。ADDATA[4:0] 位中的 ADC 通道选择位 ADCH[4:0] 应为 25。此外,在 ADDATA 寄存器中的备用位置位 ALT_LOC[4:0] 写入(0 到 24 之间的任何值)。ADC内部失调转换结果放置在配置的备用位置位所指向的数据缓冲位置。例如
ADDATA = 0x0039;这将配置ADC进行内部失调测量、差分模式、备用位置0、增益1和ADC右对齐。
ADDATA = 0x4139;这将ADC配置为内部失调测量、差分模式、备用位置1、增益3和ADC右对齐。
ADDATA = 0x6439;这将ADC配置为内部失调测量、差分模式、备用位置4、增益4和ADC右对齐。
设置 ADC 配置选择(ADST.ADCFG) 至 0 和 ADC 寄存器索引位 (ADST.ADIDX[4:0]) 为 0。
ADC 内部失调测量和校准
将ADC配置为内部失调测量后,ADCN寄存器中的ADC转换起始位(ADCONV)设置为1以开始ADC转换。ADC 控制器将内部接地连接到 ADC 输入,以测量 ADC 内部失调,并在 ADC 上开始转换。转换结果是测得的ADC内部失调。这可以从 ALT_LOC[4:0] 位指示的数据缓冲区位置读取,该位置在 ADC 配置期间设置。
要校准ADC内部失调,请将测得ADC内部失调的负值(2的补码)添加到ADVOFF寄存器。基于测得的ADC内部失调的ADVOFF值示例如表1所示。这些 ADVOFF 值假定工厂校准的 ADVOFF 值为 0。在正常的ADC操作期间,ADVOFF中的值先添加到转换结果中,然后再将最终结果添加到数据缓冲区中。
测量的 ADC 内部办公室 |
ADVOFF寄存器(十六进制) |
|
十进制 | (十六进制) | |
-2 |
FFFEh |
0002小时 |
-1 |
FFFFh |
0001小时 |
0 |
0000小时 |
0000小时 |
1 |
0001小时 |
FFFFh |
2 |
0002小时 |
FFFEh |
注意:在上电复位(POR)期间,校准值将被出厂默认值覆盖。
示例代码
main.c 中的代码演示了 ADC 内部失调校准步骤。
流程图
审核编辑:郭婷
-
微控制器
+关注
关注
48文章
7423浏览量
150778 -
寄存器
+关注
关注
31文章
5282浏览量
119762 -
adc
+关注
关注
97文章
6382浏览量
543658
发布评论请先 登录
相关推荐
评论