跳转到内容

MCP3204 和 MCP3208 12 位 A/D 转换器

Microchip Technology Inc. MCP3204 和 MCP3208 器件是带有片上采样和保持电路的逐次逼近型 12 位模数 (A/D) 转换器。此组件适用于两种设备类型。 将两种设备都配置为 MCP3204,并根据使用的型号遵守最大通道数。

MCP3204 组件允许您在 ESPHome 中使用 MCP3204 或 MCP3208 12 位 A/D 转换器 (数据手册)。 MCP3204 是 4 通道设备,MCP3208 是 8 通道设备。 它使用 SPI 总线 进行通信。

配置完成后,您可以将 4 或 8 个引脚中的任何一个(取决于设备型号)用作项目的传感器。

每个引脚将根据 reference_voltage(默认为 3.3V)计算返回电压。 它通过将引脚上的 reference_voltage * value(基本上是 VREF 的百分比)相乘来计算电压。

大多数配置会将 reference_voltage 设置为 VREF 引脚的值。

# 示例配置条目
mcp3204:
cs_pin: GPIOXX
reference_voltage: 3.3V
  • id (必需, ID): 用于此 MCP3204 组件的 ID。
  • cs_pin (*必需, 引脚方案): 要使用的 SPI 片选引脚。
  • reference_voltage (可选, 浮点数): 参考电压。默认为 3.3V

mcp3204 传感器允许您在 ESPHome 中使用 MCP3204 或 MCP3208 12 位 A/D 转换器传感器。 首先,为您的 MCP3204/8 传感器设置一个 MCP3204 集线器,然后使用此传感器平台创建将向 Home Assistant 报告电压的单个传感器。

# 传感器配置示例。
# 这是一个连接到 MCP3204 引脚 0 的小型 1.5v 太阳能电池板电源轨
sensor:
- platform: mcp3204 # 连接到 MCP3204 的引脚 0。
id: solar_voltage
number: 0 # MCP3204 引脚号
# 如果使用 MCP3208,可以指定大于 4 的引脚号
- platform: mcp3204 # 连接到 MCP3208 的引脚 7。
id: supply_voltage
number: 7 # MCP3208 引脚号
# 测量 CH0 (IN+) 和 CH1 (IN-) 之间的差值
- platform: mcp3204 # 引脚 0-1 上的差分对。
id: thermocouple_voltage
number: 0
diff_mode: true
  • mcp3204_id (*必需, ID): 父 MCP3204 组件的 ID。
  • number (*必需, 整数): 要在 MCP3204/MCP3208 上测量的引脚
  • update_interval (可选, 时间): 检查传感器的时间间隔。 默认为 60s
  • diff_mode (可选, 布尔值): 启用差分模式测量。默认为 false
  • 所有其他选项来自 传感器

MCP3204/3208 支持两种输入配置:

每个通道独立测量相对于地的电压。MCP3204 提供 4 个通道, MCP3208 提供 8 个通道。当未指定 diff_mode 或设置为 false 时,这是默认工作模式。

diff_mode: true 时,通道对测量两个输入(IN+ 和 IN-)之间的电压差。使用 number 参数指定正输入通道号。下一个顺序通道自动成为负输入(IN-)。

可用的差分对:

  • MCP3204: 2 对(CH0/CH1、CH2/CH3)
  • MCP3208: 4 对(CH0/CH1、CH2/CH3、CH4/CH5、CH6/CH7)