- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
一种提高TMS320F2812 ADC精度的方法
TMS320F2812是德州仪器公司(TI)推出的主频最高可达150 MHz的32位高性能数字信号处理器(DSP),内部集成了ADC转换模块。ADC模块是一个12位、具有流水线结构的模数转换器,内置双采样保持器(S/H),可多路选择16通道输入,快速转换时间运行在25 MHz、ADC时钟或12.5 Msps,16个转换结果寄存器可工作于连续自动排序模式或启动/停止模式。
在现代电子系统中,作为模拟系统与数字系统接口的关键部件,模数转换器(ADC)已经成为一个相当重要的电路单元,用于控制回路中的数据采集。在实际使用中,发现该ADC的转换结果误差较大,如果直接将此转换结果用于控制回路,必然会降低控制精度。为了克服这个缺点,提高其转换精度,笔者在进行了大量实验后,提出一种用于提高TMS320F2812ADC精度的方法,使得ADC精度得到有效提高。
1 ADC模块误差的定义及影响分析
1.1 误差定义
常用的A/D转换器主要存在:失调误差、增益误差和线性误差。这里主要讨论失调误差和增益误差。理想情况下,ADC模块转换方程为y=x×mi,式中x=输入计数值 =输入电压×4095/3;y=输出计数值。在实际中,A/D转换模块的各种误差是不可避免的,这里定义具有增益误差和失调误差的ADC模块的转换方程为y=x×ma±b,式中ma为实际增益,b为失调误差。通过对F2812的ADC信号采集进行多次测量后,发现ADC增益误差一般在5%以内,即0.95
图1理想ADC转换与实际ADC转换
1.2 影响分析
在计算机测控系统中,对象数据的采集一般包含两种基本物理量:模拟量和数字量。对于数字量计算机可以直接读取,而对于模拟量只有通过转换成数字量才能被计算机所接受,因此要实现对模拟量准确的采集及处理,模数转换的精度和准确率必须满足一定的要求。由于F2812的ADC具有一定增益误差的偏移误差,所以很容易造成系统的误操作。下面分析两种误差对线性电压输入及A/D转换结果的影响。
F2812用户手册提供的ADC模块输入模拟电压为0~3 V,而实际使用中由于存在增益误差和偏移误差,其线性输入被减小,分析如表1所列。
下面以y=x×1.05+80为例介绍各项值的计算。当输入为0时,输出为80,由于ADC的最大输出值为4095,则由式y=x×1.05+80求得输入最大电压值为2.8013。 因此,交流输入电压范围为1.4007±1.4007,此时有效位数N=ln4015/ln2=11.971,mV/计数位=2.8013/4015=0
上一篇:基于单片机控制的以太网交换机设计与实现
下一篇:楼内程控交换机故障分析与处理