我最近听说了一位 ADC 的概念,并且看到它在一种数模转换器的上下文中实现(很奇怪),我想知道,这有什么意义?如果需要更高的分辨率,为什么不简单地使用更高分辨率的 ADC?
一位 ADC 有什么用处?
为了给出一个基本示例,说明如何使用 1 位 ADC 从波形中获取有用信息,请查看此电路。它使用三角波将信息转换为脉宽调制输出。这是其他 1 位 ADC 技术工作方式的类似但简化版本,通过使用(通常是反馈)参考信号来比较输入。
电路
模拟
放大的时间刻度视图:
从上面的输入波形我们可以看出,三角波用于比较其周期内不同点的波形。只要三角波的频率比输入高得多(频率越高越准确),这就会导致比较器根据波形的电压电平输出高/低的平均值。
为了了解我们如何从 PWM 数据中再现原始波形,比较器输出被馈入低通滤波器,并再次弹出正弦波。
进一步阅读:
一位模数转换器 (A/D) 只是一个阈值在中间范围内的比较器。通常你不会称它为 1 位 A/D,尽管这样想是合理的。
有多种方法可以利用比较器最终获得更高分辨率的数字值。delta-sigma A/D 就是一个例子。这会持续集成比较器输出并将其与模拟输入进行比较。在多个位时间内,模拟值由整体中 1 位的数量表示。分辨率是与时间的权衡。如今,比特率可以在数 MHz 范围内。例如,在 10 MHz 比特率下,获得 20 位结果(大约 1 M 计数)将需要 1/10 秒。
另一个例子是“跟踪”A/D。这包含一个 D/A,比较器将 D/A 结果与模拟输入进行比较。如果比较器结果为低,则 D/A 值递增,否则递减。
术语“1 位 ADC”和“比较器”之间尚未提及的一个区别是,在许多使用比较器的地方,希望具有大于系统基线噪声水平的滞后量,但在应用中使用 1 位 ADC,则不需要这种滞后。
在构建多位 DAC 或 ADC 时,通常很难确保每个位的效果恰好是下一个较低位的两倍。如果某个位的影响大于或小于此值,则以“0111”结尾的代码和下一个更高的代码(以“1000”结尾)之间表示的电压差异将是不正确的。如果例如1mV输入的变化有时会导致报告的 ADC 值变化 2,有时会导致其变化 6,这可能导致基于差分反馈的控制系统对某些变化反应过度,而对其他变化反应不足。
使用 1 位 ADC 和一些模拟电子设备,可以设计一个电路,使信号为高电平的时间百分比取决于输入电压和参考电压之间的比率。如果测量信号为高电平的时间百分比,则可以推断输入电压。在没有滞后或相关影响的情况下,这种测量可能非常准确。然而,滞后可能导致难以校正的非线性。
一位 ADC 的另一个名称是比较器。我可以想象 1 位 ADC 对于需要在信号高于/低于阈值时打开/关闭阀门、开关、警报的应用来说可能就足够了。