跳转到内容

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 引脚。

# Example configuration entry
mcp3204:
cs_pin: GPIOXX
reference_voltage: 3.3V
  • id(必选,ID): 此 MCP3204 组件要使用的 ID。
  • cs_pin(必选,Pin Schema): 要使用的 SPI 片选引脚。
  • reference_voltage (可选,float): 参考电压。默认为 3.3V。

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

# 传感器配置示例。
# 这是一个小型 1.5v 太阳能板电源轨,连接到
# MCP3204 的第 0 引脚
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(必选,int): 在 MCP3204/MCP3208 上测量的引脚。
  • update_interval (可选,Time): 检查传感器的间隔。 默认为 60s。
  • diff_mode (可选,boolean): 启用差分模式测量。默认为 false。
  • 来自 Sensor 的其他所有选项。

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)