在这个答案中,我读到微控制器通常没有DAC,而有ADC。这是为什么?
编辑
我很欣赏像在R-2R DAC中那样集成电阻器的房地产价格是昂贵的(感谢Mike,您的回答),但是我认为可以将开关电流DAC制成得非常小,因为它们只需要几个晶体管。
在这个答案中,我读到微控制器通常没有DAC,而有ADC。这是为什么?
编辑
我很欣赏像在R-2R DAC中那样集成电阻器的房地产价格是昂贵的(感谢Mike,您的回答),但是我认为可以将开关电流DAC制成得非常小,因为它们只需要几个晶体管。
Answers:
首先,某些微控制器确实具有D / A转换器。但是,它们远没有A / D转换器常见。
除了技术问题外,主要原因是市场需求。想一想。什么样的应用程序需要真正的D / A?除非要进行信号处理,否则希望微控制器产生相当高速的模拟信号是非常罕见的。但是,音频的主要市场是音频,与使用数字微控制器的相同过程所需要的分辨率相比,它需要更高的分辨率。因此,无论如何,音频将使用外部A / D和D / As。旨在用于此类应用的DSP具有内置的通信硬件,可与此类外部设备(如I2S)进行通信。
否则,对于普通控制应用程序,策略是在过程的早期就转换为数字,然后将其保持数字状态。这为A / D辩护,但是D / A没有用,因为您不想回到模拟状态。
微控制器通常控制的事物由PWM(PulseWidth Modulation)控制。开关电源和D类音频固有地对脉冲起作用。电机控制,螺线管控制等全部通过脉冲完成,以提高效率。您希望通过元件完全导通或完全截止,因为理想的开关不会消耗任何功率。在大型系统中或输入功率稀少或昂贵的情况下(例如电池运行),开关系统的效率很重要。在许多中等情况下,使用的总功率不是问题,但要消除热量浪费的功率。与10 W线性电路相比,耗散1 W而不是10 W的开关电路在电子零件上的成本可能要高一些,但总体上便宜得多,因为您不需要具有相关尺寸和重量的散热器,
请注意,在微控制器中非常常见的PWM输出可用于在需要模拟信号的异常情况下产生模拟信号。只要您有足够的分辨率*速度乘积,对PWM输出进行低通滤波是从微控制器产生模拟信号的最简单,最好的方法。滤波后的PWM输出具有很好的单调性和高度线性,并且分辨率与速度之间的权衡非常有用。
您有什么想让Micro拥有D / A转换器的具体想法吗?可能可以通过低通滤波PWM解决此问题,或者仍然需要外部D / A以获得更高的分辨率*速度。滤波后的PWM与外部之间的差距非常小,实际需要这种信号的应用类型也很窄。
DAC在硅片领域相对昂贵。与输入相比,需要模拟输出的应用要少得多,而使用PWM和少量外部滤波可以更便宜地实现大部分应用所需的DAC功能。
还有两个尚未提及的问题:
在很多情况下,一个部件需要能够测量多个引脚上的电压,但不能同时测量。可以使用单个ADC以及每个引脚一个通过门来完成此任务。相反,大多数需要多个DAC输出的部件将同时需要它们。
将ADC与外界连接的电路必须只能传递足够的电流,以对ADC输入电路上的任何蓄意或寄生电容进行充电或放电。不仅电流很小,而且基本上与应用程序无关。与“最坏情况”的当前处理要求所需要处理的额外面积相比,在有利的应用环境下可以工作的某些东西所需要的面积可以忽略不计。相比之下,不同的DAC应用将具有不同的电流源或吸收电流要求,并且满足这些要求所需的芯片面积将有很大的差异。在几个完全符合应用程序要求的DAC上花费20%的芯片面积是明智的,
顺便说一句,我未曾使用过的一种技术是将DAC与PWM结合使用。使用R / 2R DAC时,很容易添加一个重量与LSB相同的额外输入(例如,一个3 + 1输入DAC的权重为1 / 2、1 / 4、1 / 8和1/8)。采用8位DAC并向其添加PWM信号可以产生12位结果,而噪声是12位PWM的1/128,但与使用线性度相当的12位DAC相比,成本更低。
正如Olin所说,某些MCU确实具有DAC。看一下赛普拉斯的PSoC3和PSoC5。它们包含多达两个DAC。这些对于在放大之前需要修整电压的模拟感测应用非常有用。
例如,我们用一个来测量压力传感器的输出。每个压力传感器芯片都有一个随机的电压偏移量。当MCU复位时,它将DAC电压设置为刚好低于传感器的输出。然后放大这些电压之间的差异。
能够将ADC,DAC,运算放大器和MCU都集成在一个芯片中真是太好了。