ZHCAE87 July   2024 TCA6416A , TCA9555

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
  5. 2如何将推挽式 IO 配置为开漏模式
  6. 3专用开漏 IO 扩展器与这种方法之间有何区别?
  7. 4总结
  8. 5参考资料

如何将推挽式 IO 配置为开漏模式

在正常的推挽式设置中,用户可以首先将配置寄存器设置为输出,然后写入输出寄存器,从而将寄存器设置为输出高电平或输出低电平。设置开漏配置实际上非常相似。

以下示例介绍了如何使用 TCA9539(16 位 IO 扩展器)进行设置。表 2-1 中提供了 TCA9539 的命令字节表以供参考。从这一点开始的示例可以假设 TCA9539 的器件地址引脚连接到 Vcc,因此可以具有一个 I2C 7 位目标地址 0x77h。可以将一个外部上拉电阻器连接到 P07 和 P17,以使信号能够上升到 Vcc,否则从示波器的角度可能看不到切换。

步骤 2 和步骤 3 的示例显示了位 P07 和 P17 交替为开漏输出低阻抗和高阻抗,而其他引脚(Px6 至 Px0)相对于第 7 位交替(如果 Px7 为高阻抗,则 Px6 至 Px0 可以为开漏输出低电平;如果 Px7 为开漏输出低电平,则 Px6 至 Px0 可以是高阻抗)。

表 2-1 命令字节
命令字节 寄存器 上电默认值 说明
0x00h 输入端口 0 XXXX XXXX 本应用手册中未使用
0x01h 输入端口 1 XXXX XXXX 本应用手册中未使用
0x02h 输出端口 0 1111 1111 默认为 1,0 = 输出低电平
0x03h 输出端口 1 1111 1111 默认为 1,0 = 输出低电平
0x04h 极性反转端口 0 0000 0000 本应用手册中未使用
0x05h 极性反转端口 1 0000 0000 本应用手册中未使用
0x06h 配置端口 0 1111 1111 默认为输入,0 = 输出
0x07h 配置端口 1 1111 1111 默认为输入,0 = 输出
  1. 写入输出寄存器以要用作开漏的引脚设置为逻辑低电平;实际上,在配置寄存器设置为输出之前,这并不会使对应引脚输出低电平。
    • 此步骤可以视为将器件初始化为开漏模式。
     初始化输出端口示例图 2-1 初始化输出端口示例
  2. 写入配置寄存器,以使 p 端口引脚变为低电平或高阻态。
    • 在该示例中,P07 保持高阻抗输入,而 P06 至 P00 输出低电平,并且 P17 输出低电平,而 P16 至 P10 保持高阻抗。
     设置配置寄存器示例图 2-2 设置配置寄存器示例
  3. 写入配置寄存器,以使 p 端口引脚更改为低电平或高阻态。
    • 在该示例中,P07 更改为输出低电平,而 P06 至 P00 更改为高阻抗输入,并且 P17 设置为高阻抗输入,而 P16 至 P10 为输出低电平。
     翻转配置寄存器示例图 2-3 翻转配置寄存器示例