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-gpios
和 spi-rx-bus-width
属性。
通道配置¶
由于该芯片支持多种配置每个通道的方法,因此必须根据实际连接到输入的线路在设备树中进行描述。
有三种典型的配置
INx
引脚用作正输入,REFGND
、COM
或下一个 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
,则使用内部缓冲参考电压。
增益/偏移校准¶
通过 calibscale
和 calibbias
属性分别使用通道增益和偏移寄存器支持系统校准。
未实现的功能¶
其他接线模式
阈值事件
过采样
GPIO 支持
CRC 支持
设备缓冲区¶
此驱动程序支持硬件触发的缓冲区。这使用芯片的“高级排序器”功能来触发一系列转换。
另请参阅 工业 IIO 设备缓冲区 获取更多常规信息。