ADC通道转换对I/O引脚的影响

作者: Anthony Stram Microchip Technology Inc.
简介
单片机的模拟功能可与数字电路部分和运行固件部分进行复杂交互。如果模拟电路特性不能得到很好的理解, 那么实际应用中就会出现错误单片机的交互。这份技术 摘要将阐明在ADC通道进行转换时,最常出现的输入/ 输出问题。

技术背景

数字逻辑可以用来控制模拟通道多路开关(MUX)。作为 一款使用数字逻辑在模拟(ADC)通道间进行切换的产 品,各器件引脚的信号都可以随时连接。当ADC输入通 道切换的时候,两个本不相关的I/O引脚之间可能会建 立连接。这个I/O连接会持续一段时间,直到它将信号 传送通过MUX以触发ADC通道改变。此连接最多可持续 40 ns,比I/O引脚逻辑的最小上升下降时间要长,导致 在已连接的引脚上触发脉冲干扰。每个引脚的上升下降 时间在15 ns到30 ns之间,这段持续时间已经足够对 器件引脚产生影响。并且由于引脚恢复到先前的状态需 要一定的时间,该脉冲干扰的时间可能会长于40 ns。

举个例子来说,如果在ADC输入引脚AN2和AN5之间发 生了切换,那么在切换过程中,RB4和RC0之间可能会 建立连接。若将RB4设为一个在逻辑高电平与逻辑低电 平之间的输入信号,那将导致设为输出端的RC0产生一 个脉冲干扰。若两个相连引脚置于相同的逻辑电平,那 么脉冲干扰会降至最小低于10 mV。在极端情况下,两 个引脚置于完全不同的逻辑电平,那么脉冲干扰会高达 160 mV。

转换ADC通道的过程本身也会产生另一类脉冲干扰。若 ADC通道同时也是器件上的有源比较器或者运算放大器 的输入端,那么这类干扰脉冲会在外部显现。三个不同 起因的脉冲干扰也许会发生。转换ADC通道会改变ADC 采样电容器和保持电容器上的电压,而电容器上的电位 差会导致脉冲干扰的产生。脉冲干扰可以是正向的或是 负向的,取决于电容器上的外部电压水平。当第一个脉 冲干扰恢复之后,第二个脉冲干扰又随之产生。产生第 二个脉冲干扰的原因是电容器从引脚上断开。而第三个 脉冲干扰是在转换过程结束,将电容器重新接到引脚上 的时候产生。

解决办法

数字输入

当I/O引脚被用作数字输入端时,有几种方法可以避免 出现上述ADC通道转换问题。假如输入端正在被轮询, 可以选择不要在这个轮询循环中转换ADC通道。如果输 入端未被轮询,那么不能在发起一个ADC通道转换之后 立即检测输入端的状态。需要在通道转换之后插入一个 NOP (no operation) 指令,然后检测输入端的状态 变化。如果仅仅是处理状态变化的话,更好的方法是用 软件编程抑制输入端抖动。即多次检测输入端,数出特 定状态记录的次数。当状态变化记录达到一定次数后, 修改状态变量。这样的话,所有的ADC通道切换产生的 脉冲干扰都会从可能的状态变化中滤除。

数字输出

在ADC通道转换过程中,将数字引脚用做输出端的话, 会导致在外部电路中出现毛刺脉冲干扰。当输出引脚被 驱动到高电平或者低电平时,总会出现一个与驱动状态 反方向的脉冲干扰。举例来说,如果输出端拉到高电 平,在引脚端会出现一个在高电平下高达200 mV的负 脉冲干扰。此脉冲干扰会持续15 ns到40 ns,具体取决 于转换逻辑的稳定时间。

减弱或消除此现象的主要方法是降低脉冲干扰的能量, 使得外部电路不受此干扰信号的影响,或彻底滤除此干 扰。首先,可以尝试在输出端加一只电阻来限制脉冲毛 刺中的电流,使其无法影响到外部电路。带有施密特触 发器的外部电路由于自身固有的迟滞特性,可以不受脉 冲干扰的影响。另一种选择是将脉冲干扰滤除。

在输出引脚端加一只RC低通滤波器就可以减少以至消除 可到达外部电路的脉冲干扰,滤波器的R和C分量值的 选取需要考虑到几个因素。RC时间常数应当比脉冲干扰 的持续时间长(t > 40 ns),以滤除脉冲干扰。

建议注意RC低通滤波器的频率响应,不要让它干扰到外 部电路。截止频率至少应当高于十倍的应用在引脚上输 出的最高频信号。

作为近似的估计,选取脉冲干扰的上升下降时间为15 ns 到40 ns(tr)可以得到一个范围在8到24 MHz之间的特 定频率带宽(BW)。这是基于带宽与上升时间关系公式 对脉冲干扰的最高频率分量的粗略估值。

模拟输入

第一第二个脉冲干扰可以通过使用数模转换器(DAC) 预先给采样电容器和保持电容器充电来减轻或消除。将数模转换器(DAC)设定到一个接近于ADC将要采样到的预期电压以减轻脉冲干扰。采样电容器和保持电容器 的充电过程需在转换外部ADC通道之前完成。如果电压 的近似值已知,可用DAC给电容器预充电至一个相似的电位。

在模数转换过程中进行ADC通道切换可以消除第三个脉 冲干扰。首先选择转换通道并开始转换,然后将ADC切 换到下一个待转换的通道,最后模数转换完成。这一过 程对下一个通道重复。

结论

在进行ADC通道切换的时候要特别注意无意中由转换逻辑引起的I/O引脚连接。采用以上建议能够减轻绝大多 数通道转换的不良影响。现如今的MCU内部都会在很紧凑的空间里集成数字和模拟元件,这会导致一些原先不 曾见过的问题,但是只要遵循一些很简单的方法就能实 现稳健的应用。

请注意以下有关 Microchip 器件代码保护功能的要点:

•Microchip 的产品均达到 Microchip 数据手册中所述的技术指标。
•Microchip 确信:在正常使用的情况下, Microchip 系列产品是当今市场上同类产品中最安全的产品之一。
•目前,仍存在着恶意、甚至是非法破坏代码保护功能的行为。就我们所知,所有这些行为都不是以 Microchip 数据手册中规定的操作规范来使用 Microchip 产品的。这样做的人极可能侵犯了知识产权。
•Microchip 愿与那些注重代码完整性的客户合作。
•Microchip 或任何其他半导体厂商均无法保证其代码的安全性。代码保护并不意味着我们保证产品是 “ 牢不可破 ” 的。

代码保护功能处于持续发展中。Microchip承诺将不断改进产品的代码保护功能。任何试图破坏Microchip代码保护功能的行为均可视 为违反了《数字器件千年版权法案(Digital Millennium Copyright Act)》。如果这种行为导致他人在未经授权的情况下,能访问您 的软件或其他受版权保护的成果,您有权依据该法案提起诉讼,从而制止这种行为。

公司信息: