跳转到内容

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

SN74HC165 组件允许你将 SN74HC165 移位寄存器用作 I/O 扩展器(仅输入;如需输出请使用 SN74HC595) (数据手册)。它使用 3 根导线(可选 4 根)进行通信。

配置完成后,你可以将 8 个引脚中的任何一个用于项目。最多可以将 256 个移位寄存器串联,以提供更多引脚,而不会占用控制器上更多的 GPIO 引脚。它们的连接方式是将较靠近的移位寄存器的 Q 引脚连接到下一个移位寄存器的 QH 引脚。

# 示例配置条目
sn74hc165:
- id: sn74hc165_hub
clock_pin: GPIOXX
data_pin: GPIOXX
load_pin: GPIOXX
clock_inhibit_pin: GPIOXX
sr_count: 2
  • id (必选, ID): 用于此 SN74HC165 组件的 id。
  • data_pin (必选, Pin Schema): 连接到 SN74HC165 串行输出(QH)输入引脚的引脚。
  • clock_pin (必选, Pin Schema): 连接到 SN74HC165 时钟(CLK)引脚的引脚。
  • load_pin (必选, Pin Schema): 连接到 SN74HC165 Load 输入(SH/LD)引脚的引脚。
  • clock_inhibit_pin (可选, Pin Schema): 连接到 SN74HC165 时钟禁止(CLK INH)引脚的引脚。该引脚可选,因为它可以直接接地。
  • sr_count (可选, int): 串联移位寄存器的数量,最多 256 个。默认为 1。
# 单独的输入
binary_sensor:
- platform: gpio
name: "SN74HC165 Pin #0"
pin:
sn74hc165: sn74hc165_hub
# 使用引脚编号 0
number: 0
inverted: false
  • sn74hc165 (必选, ID): 引脚所属的 SN74HC165 组件的 id。
  • number (必选, int): 引脚编号。
  • inverted (可选, boolean): 是否应将接收到的值视为反相。默认为 false。

NOTE

引脚编号 0 是 SN74HC165 上离微控制器最远的引脚 A。