跳转到内容

主控(PCA9546A)

介绍

本模块使用PCA9546A芯片作为核心,这是一款基于 I²C 总线的 4 通道双向转换开关,可通过 I²C 命令选择激活 1 路或多路下游 I²C 通道,实现 I²C 总线的扩展与隔离。

官方数据手册 https://www.nxp.com/docs/en/data-sheet/PCA9546A.pdf

特性

  • 4 路双向 I²C 转换通道
  • 通过 I²C 总线进行通道选择
  • 3 个地址引脚(A0、A1、A2),最多支持 8 个器件挂载到同一总线上
  • 工作电压:2.3V ~ 5.5V
  • 支持热插入
  • 上电默认:所有通道不选通
  • 支持同时选通多个通道

寄存器

控制寄存器

PCA9546A 只有一个控制寄存器,在 I²C 写入传输中,地址字节后的第一个字节即为控制寄存器,用于选择需要导通的通道。

Bit76543210
符号----CH3CH2CH1CH0
默认值00000000

字段说明:

  • CH0 (Bit 0): 通道 0 使能位,置 1 选通通道 0
  • CH1 (Bit 1): 通道 1 使能位,置 1 选通通道 1
  • CH2 (Bit 2): 通道 2 使能位,置 1 选通通道 2
  • CH3 (Bit 3): 通道 3 使能位,置 1 选通通道 3
  • Bit 4 ~ 7: 保留位,应写入 0

多个通道位可以同时置 1,实现多通道同时选通。

读取控制寄存器

读取时,主机在发送从机地址 + R/W=1 后,直接读取 1 个字节即可获取当前控制寄存器的状态,从而得知哪些通道当前处于选通状态。

地址

PCA9546A 的 7 位 I²C 从机地址结构如下:

Bit76543210
固定值1110A2A1A0R/W
  • 高 4 位固定为 1110
  • A0、A1、A2 由硬件引脚电平决定(0 或 1)
  • 可用地址范围:0x70 ~ 0x77(7 位地址)
A2A1A07位地址
0000x70
0010x71
0100x72
0110x73
1000x74
1010x75
1100x76
1110x77