跳转到内容

SN74HC595 I/O 扩展器(移位寄存器)

SN74HC595 组件允许您在 ESPHome 中将 SN74HC595 移位寄存器用作 I/O 扩展器(数据手册SparkFun)。它使用 3 根线(可选 4 根)进行通信。也可以将其添加到 SPI 总线,以便与其他组件共享引脚。

配置完成后,您可以将 8 个引脚中的任何一个用于您的项目。最多可以将 256 个移位寄存器菊花链连接以提供更多引脚,而无需在控制器上使用更多 GPIO 引脚。

OE 引脚的使用是可选的。如果使用,该引脚应在外部上拉。

SN74HC595 I/O 扩展器(移位寄存器)。

该组件可以使用 GPIO 引脚SPI 总线 进行配置。

# 示例配置项
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
# 示例配置项
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