SN74HC595 I/O 扩展器(移位寄存器)
SN74HC595 组件允许您在 ESPHome 中将 SN74HC595 移位寄存器用作 I/O 扩展器(数据手册,SparkFun)。它使用 3 根线(可选 4 根)进行通信。也可以将其添加到 SPI 总线,以便与其他组件共享引脚。
配置完成后,您可以将 8 个引脚中的任何一个用于您的项目。最多可以将 256 个移位寄存器菊花链连接以提供更多引脚,而无需在控制器上使用更多 GPIO 引脚。
OE 引脚的使用是可选的。如果使用,该引脚应在外部上拉。
该组件可以使用 GPIO 引脚 或 SPI 总线 进行配置。
通过 GPIO
Section titled “通过 GPIO”# 示例配置项sn74hc595: - id: 'sn74hc595_hub' data_pin: GPIOXX clock_pin: GPIOXX latch_pin: GPIOXX oe_pin: GPIOXX sr_count: 2
# 单独的输出switch: - platform: gpio name: "SN74HC595 引脚 #0" pin: sn74hc595: sn74hc595_hub # 使用引脚编号 0 number: 0 inverted: false- id (必需, ID): 用于此 SN74HC595 组件的 ID。
- data_pin (必需, 引脚模式): 连接到 SN74HC595 SER (SD) 输入的引脚。
- clock_pin (必需, 引脚模式): 连接到 SN74HC595 SRCLK (SH_CP) 引脚的引脚
- latch_pin (必需, 引脚模式): 连接到 SN74HC595 RCLK (ST_CP) 引脚的引脚
- oe_pin (可选, 引脚模式): 连接到 SN74HC595 OE 引脚的引脚
- sr_count (可选, 整数): 菊花链连接的移位寄存器数量,最多 256 个。默认为
1。
通过 SPI
Section titled “通过 SPI”# 示例配置项sn74hc595: - id: 'sn74hc595_hub' type: spi latch_pin: GPIOXX oe_pin: GPIOXX sr_count: 2- id (必需, ID): 用于此 SN74HC595 组件的 ID。
- spi_id (*必需, SPI 总线模式): 要使用的 SPI 总线。如果只有一个 SPI 总线,这将自动设置为该 SPI 总线的 ID。
- type (*必需, 字符串): 必须为
spi。 - latch_pin (*必需, 引脚模式): 连接到 SN74HC595 RCLK (ST_CP) 引脚的引脚
- oe_pin (可选, 引脚模式): 连接到 SN74HC595 OE 引脚的引脚
- sr_count (可选, 整数): 菊花链连接的移位寄存器数量,最多 256 个。默认为
1。
# 单独的输出switch: - platform: gpio name: "SN74HC595 引脚 #0" pin: sn74hc595: sn74hc595_hub # 使用引脚编号 0 number: 0 inverted: false- sn74hc595 (必需, ID): 引脚所属 SN74HC595 组件的 ID。
- number (*必需, 整数): 引脚编号。
- inverted (可选, 布尔值): 是否将所有写入的值视为反转。默认为
false。