AVR DA系列单片机上配备了12位差分ADC,对于以前的AVR tiny和 AVR mega系列这 是一个显著的提升。AVR DA上的ADC在12位分辨率下,能达到130K赫兹采样率, 能满足对大多数传感器模拟输出的采集需求。最多支持22个通道的分时采集。支持轨到轨输入电压范围;当选择VDD做电压参考时,从GND到VDD测量没有盲区。
ADC的工作时钟范围为125KHz到2MHz。这个时钟由系统主时钟分频得到,用户可通过选择不同的主时钟和不同的分频值,来改变ADC工作时钟。在上面规定的范围内,工作时钟越快,则ADC采集转换速度越快。
普通的差分ADC测量单端信号时,分辨率会减少1位,因为实际只能使用到全部结果空间[-2048, +2047]的一半,即[0, 2047] 或[-2048,0]。但使用AVR DA的ADC进行测量则不会有这个问题,因为它不仅能工作在差分模式,也可以配置成单端模式。在差分模式下,ADC转换结果是一个可以看做是一个12位有符号数,范围是 [-2048, +2047];而在单端模式下,转换结果是12位无符号数,范围是[0, +4095]。
单端模式结果空间:
差分模式结果空间:
AVR DA的ADC带有累加电路,多次转换结果可以通过硬件电路累计在一起。ADC结果寄存器长度为16位,ADC一次采样精度为12位,所以当累加次数小于16次时,转换结果都可以用ADC结果寄存器来直接表达。另外ADC上也带有一个窗口比较器,可以通过软件设置高/低两个比较门限,形成一个比较窗口;可以配置成,当ADC转换结果落在窗口内,或窗口外时,产生中断。
ADC可以接收其他外设发出的事件信号,来启动转换。这是一种典型的内核独立外设(CIP)的工作方式。这种方式可以在CPU处于睡眠状态下,由外设自主完成。通常能用来启动ADC开始转换的事件包括:RTC时基事件信号、IO端口信号、CCL逻辑区运算结果、PTC触摸事件信号、ZCD过零事件信号、AC比较器输出反转事件信号、TCB外部信号捕获事件、TCA/TCD的PWM输出事件等。
关于差分和单端ADC的比较和各自的应用场景,请参考下面文档:
关于AVR DA的12位差分ADC的使用技巧和实例,请参见下面文档:
|