AD4695 驱动程序

用于 Analog Devices Inc. AD4695 和类似设备的 ADC 驱动程序。模块名称为 ad4695

支持的设备

此驱动程序支持以下芯片

支持的功能

SPI 接线模式

该驱动程序目前支持以下 SPI 接线配置

4 线模式

在此模式下,CNV 和 CS 连接在一起,并且只有一条 SDO 线。

+-------------+         +-------------+
|          CS |<-+------| CS          |
|         CNV |<-+      |             |
|     ADC     |         |     HOST    |
|             |         |             |
|         SDI |<--------| SDO         |
|         SDO |-------->| SDI         |
|        SCLK |<--------| SCLK        |
+-------------+         +-------------+

要使用此模式,请在设备树中省略 cnv-gpiosspi-rx-bus-width 属性。

通道配置

由于该芯片支持多种配置每个通道的方法,因此必须根据实际连接到输入的线路在设备树中进行描述。

有三种典型的配置

INx 引脚用作正输入,REFGNDCOM 或下一个 INx 引脚用作负输入。

与 REFGND 配对

每个 INx 引脚都可以与 REFGND 引脚结合使用,作为伪差分输入。设备树将如下所示

channel@0 {
    reg = <0>; /* IN0 */
};

如果不需要其他通道属性(例如,adi,no-high-z),则可以完全省略通道节点。

这将在 IIO 总线上显示为 voltage0 通道。处理后的值(原始值 × 比例)将是 IN0 引脚相对于 REFGND 上的电压。(与 REFGND 配对时,偏移量始终为 0。)

与 COM 配对

每个 INx 引脚都可以与 COM 引脚结合使用,作为伪差分输入。设备树将如下所示

com-supply = <&vref_div_2>;

channel@1 {
    reg = <1>; /* IN1 */
    common-mode-channel = <AD4695_COMMON_MODE_COM>;
    bipolar;
};

这将在 IIO 总线上显示为 voltage1 通道。处理后的值((原始值 + 偏移量)× 比例)将是 IN1 引脚相对于 REFGND 上测得的电压。(偏移量由 com-supply 电压确定。)

该宏来自

#include <dt-bindings/iio/adi,ad4695.h>

配对两个 INx 引脚

一个偶数编号的 INx 引脚和接下来的一个奇数编号的 INx 引脚可以用作伪差分输入。使用 IN2 作为正输入和 IN3 作为负输入的设备树将如下所示

in3-supply = <&vref_div_2>;

channel@2 {
    reg = <2>; /* IN2 */
    common-mode-channel = <3>; /* IN3 */
    bipolar;
};

这将在 IIO 总线上显示为 voltage2 通道。处理后的值((原始值 + 偏移量)× 比例)将是 IN1 引脚相对于 REFGND 上测得的电压。(偏移量由 in3-supply 电压确定。)

VCC 电源

该芯片支持通过 VCC 输入由外部 LDO 供电,或通过 LDO_IN 输入由内部 LDO 供电。驱动程序会查看设备树以确定正在使用哪种方式。如果存在 ldo-supply,则使用内部 LDO。如果存在 vcc-supply,则使用外部 LDO,并且禁用内部 LDO。

参考电压

该芯片支持通过 REF 输入使用外部参考电压,或通过 REFIN 输入使用内部缓冲参考电压。驱动程序会查看设备树以确定正在使用哪种方式。如果存在 ref-supply,则使用外部参考电压,并且禁用内部缓冲器。如果存在 refin-supply,则使用内部缓冲参考电压。

增益/偏移校准

通过 calibscalecalibbias 属性分别使用通道增益和偏移寄存器支持系统校准。

未实现的功能

  • 其他接线模式

  • 阈值事件

  • 过采样

  • GPIO 支持

  • CRC 支持

设备缓冲区

此驱动程序支持硬件触发的缓冲区。这使用芯片的“高级排序器”功能来触发一系列转换。

另请参阅 工业 IIO 设备缓冲区 获取更多常规信息。