老古开发网首页
导航:老古开发网首页文章索引索引第2684页文章分类技术文章第27页→[MAXQ3120中模数转换器在轮询模式下的使用]
| -文章搜索 - 最新文章 - |

第54868篇:MAXQ3120中模数转换器在轮询模式下的使用

发布时间:2006年12月12日 点击次数:69
来源:Maxim公司   作者:
 

    在设置中断优先级比较麻烦或者中断固有的不可预测性不好处理的应用中,模数转换器(ADC)工作在轮询模式下要比工作在中断驱动模式下更适合。本应用笔记详细论述了MAXQ3120微控制器的16位Σ-Δ ADC工作在轮询模式下时需要注意的一些事项。用汇编语言源代码演示了轮询模式的实现方法。

    概述

    MAXQ3120是第一款集成了双通道、16位Σ-Δ模数转换器(ADC) (图1)的MAXQ微控制器。该ADC使这款微控制器尤其适用于单相电表,同时也适用于任何需要高精度模数转换的应用场合。对于设置中断优先级比较麻烦或者中断固有的不可预测性不好处理的应用,ADC最好工作在轮询模式下而不是中断驱动模式下。

   

                             图1. ADC功能框图
 
    该应用笔记阐述了MAXQ3120的ADC工作在轮询模式下时的使用情况,并讨论了编程注意事项。给出了ADC的一个特定代码实例。对MAXQ3120乘法-累加器(MAC)的用法和LCD驱动器性能也进行了说明。在这个实例中,MAC完成ADC输出的简单求和(和随后的求平均值运算),并由LCD显示平均转换结果。
 
    本文所给出的代码实例是针对MAXQ3120编写并经过测试的,但也可以在包含相似资源的其他相关MAXQ器件上运行。该例程代码的整个开发环境采用MAX-IDE 1.0版本和MAXQ3120评估板硬件版本B。

    编程注意事项

    当MAXQ3120的ADC工作在轮询模式下时,软件设计应考虑转换器的以下几个特性:第一,设计者必须了解ADC控制寄存器(ADCN)中各个位的意义和用法。表1列出了该寄存器的各个位,每一位的功能说明如表2所示。当一个ADC输出值准备就绪时,硬件将ASR1或ASR0位置1。此时软件可以从ADC的输出寄存器(AD1或AD0)中读取一个带符号的16位数值。如果在读输出寄存器之前完成了多次转换,那么新的转换结果不写入输出寄存器。采样丢失位ASL1或ASL0置位,并舍弃这些转换结果。在附带的软件(参见下面的实例代码部分)中,每次读输出寄存器之前都要测试ASR0位的状态。在本文这种情况下,输出是否溢出并不重要。因此忽略了采样丢失位的状态。同时,增益设置为1,由内部带隙提供基准电压,在该实例中仅使能了一个模数转换通道(0)。

   

   
 
    软件中另一个需考虑的问题是ADC中各种不同模块的建立时间。调制器、sinc3滤波器和基准带隙缓冲器都存在建立时间。通过在程序的开始阶段启动ADC,并允许其连续运行,可以使这些建立时间只出现一次。软件实例中包含一个大约1s的软件循环延时(基于8MHz时钟),可以减慢程序循环以及随后的显示刷新操作。ADC启动之后也加入了这一延时,从而给各模块提供了建立时间。当然这一延时比所需要的建立时间长的多(具体规格参见MAXQ3120数据资料),采用这种代码延时只是为了实现更加简单。

    MAXQ3120包含一个可以在一个时钟内实现16位 x 16位字MAC功能的硬件模块。该性能可与许多数字信号处理器相媲美,使得MAXQ3120能够快速执行数学计算。本应用不需要快速数学计算功能,但MAC帮助计算ADC输出的平均值,以平滑输出结果并使显示的数值变化更缓慢一些。为了得到这个平均值,一个乘数取为1,将16个16位转换结果传送给MAC。这16个数据字的总和存放在累加器中。在完成求和运算后,该结果除以16 (移位和相加)来计算平均值。这个平均值送到LCD上进行显示。有关MAC性能的详细说明参见MAXQ微控制器用户指南。

    实例代码

    和本应用笔记配套的软件包含在ADC_Polled.zip文件中,可以进行下载。该文件包括:源代码文件ADC_Polled.asm,My3120kit_lcd.asm,maxq_math.asm;包含文件maxq3120x.inc;以及MAX-IDE工程文件ADC_Polled.prj。将这些文件解压到一个公用目录下,对该软件进行汇编并在MAXQ3120评估板上执行。

    给MAXQ3120的ADC输入施加一个变化的电压,然后观察LCD上的显示结果,该应用非常有用并能提供更多的信息。用一个定值电阻和一个电位器可产生范围合适的可变电压。该电路的元件连接原理图见图2。MAXQ3120评估板在DB-9串行连接器附近提供了一小块原型区域。原型区域边沿还具有连接AVCC和AGND走线的过孔。加入这一简单电路后,可在模拟通道0输入端(AN0+)施加0至0.823V电压(最大值接近1V)。如原理图所示,AN0-输入接AGND,以提供一个参考电平。

   

    图2. 产生ADC输入的分压器电路原理图

    结束语

    MAXQ3120微控制器包括一个双通道、16位Σ-Δ ADC,可用于所有需要高精度模数转换的系统中。该应用笔记讲述了工作在轮询模式下时需要考虑的一些ADC特性。实例代码演示了如何在轮询模式下使用ADC。实例代码还演示了包括MAC硬件和直接LCD驱动性能在内的其他MAXQ3120特性。MAXQ3120评估板作为该软件的平台。通过加入由两个常见元件组成的电路,用户可将一个可变电压加到ADC输入端,并观察评估板上LCD的显示结果。


欢迎进入老古论坛进行讨论
[技术文章] 相关文章:
自动电平控制(ALC)在扬声器中的应用
简介:
概述 对于一个操作系统的告警音或类似的音频信号,典型的动态范围即非常有限,用户在调高音量的时候不会考虑动态峰值引起的失真。另一方面,对于动态范围比较宽的DVD音频信号,笔记本电脑扬声器的局限性更加明显。对话和音响效果的音量差异非常大,从而迫使用户提高对话情况下的音量,而在强背景音的情况下调低音量,以避免削波失真。 在不调整音量的情况下,用户要么将音量设置过高,使动态峰值失真;要么将音量设置过低,从而影响对话质......

高精度微功耗数据采集系统设计与应用
PL3200在CDMA扩频电力线载波通信系统中的应用
MPEG-4视频编码技术及在多媒体通信中的应用
HT46R14在冷阴极萤光灯变换器中的应用
 
下一个:[技术文章]使用新技巧 设计PCB时抗静电放电的方法
简介:
在pcb板的设计当中,可以通过分层、恰当的布局布线和安装实现PCB的抗ESD设计。通过调整PCB布局布线,能够很好地防范ESD。*尽可能使用多层PCB,相对于双面PCB而言,地平面和电源平面,以及排列紧密的信号线-地线间距能够减小共模阻抗和感性耦合,使之达到双面PCB的1/10到1/100。对于顶层和底层表面都有元器件、具有很短连接线。 来自人体、环境甚至电子设备内部的静电对于精密的半导体芯片会造成各种......

上一个:[技术文章]X9241数字电位器的原理及在DSP中的应用

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:否 执行时间:63毫秒