Texas Instruments TCA9536 4位I/O扩展器用于I^2^C总线,可在1.65V至 5.5V的VCC 下运行。它可通过I^2^C接口为大多数微控制器系列提供通用远程I/O扩展。
数据手册:*附件:Texas Instruments TCA9536 4位IO扩展器数据手册.pdf
系统控制器可以通过写入I/O配置寄存器位将I/O启用为输入或输出。每一路输入或输出的数据都保存在相应的输入/输出寄存器中。输入端口寄存器的极性可由极性反转寄存器转换。有一个额外的特殊功能寄存器,可用于禁用内部上拉电阻器并将P3覆盖为INT输出。
TCA9536开漏中断输出(当在特殊功能寄存器中将P3配置为INT时)在任何输入与其对应的输入端口寄存器状态不同时被激活,用于向系统控制器指明输入状态已改变。
发生超时或其他不当操作时,系统处理器可通过使用I^2^C软复位命令(该命令将寄存器置于其默认状态)将TCA9536复位。
特性
- I^2^C至GPIO扩展器
- 工作电源电压范围为1.65V至5.5V
- 可耐受5V电压的I/O端口
- 可通过I^2^C通用呼叫实现的软件复位
- P端口上软件启用的集成上拉电阻器
- 可以将P3改为INT输出
- 1MHz快速+模式I^2^C总线
- 输入和输出配置注册
- 极性反转寄存器
- 内部上电复位
- 加电时所有通道均被配置为输入
- SCL和SDA输入端装有噪声滤波器
- 具有最大高电流驱动能力的锁存输出,适用于直接驱动LED
- ESD保护性能超过JESD 22规范要求
- 2000V人体放电模型 (A114-A)
- 1000V带电器件模型 (C101)
功能框图

TCA9536 4位I2C/SMBus I/O扩展器技术解析
一、器件概述
TCA9536是德州仪器(TI)推出的一款4位I2C和SMBus接口的I/O扩展器,工作电压范围为1.65V至5.5V。该器件通过I2C接口为大多数微控制器系列提供通用远程I/O扩展功能,非常适合需要额外GPIO但微控制器引脚资源有限的应用场景。
主要特性包括:
- 宽电压工作范围:1.65V至5.5V,兼容多种逻辑电平
- 5V容忍I/O端口:可直接连接5V器件而无需电平转换
- 软件复位功能:通过I2C通用调用实现软件复位
- 可编程上拉电阻:可通过软件控制集成上拉电阻的使能
- 中断功能:P3可配置为中断输出(INT)
- 高速通信:支持1MHz Fast-mode Plus I2C总线
- 高驱动能力:输出可直接驱动LED
二、关键功能解析
1. 架构与引脚配置
TCA9536采用8引脚封装,提供两种封装选项:
- X2SON (8):1.35mm × 0.80mm
- VSSOP (8):3.00mm × 3.00mm
引脚功能如下表所示:
| 引脚名称 | 类型 | 描述 |
|---|
| P0-P2 | I/O | 通用I/O端口,推挽结构,默认使能内部上拉电阻 |
| P3/INT | I/O | 可配置为通用I/O或开漏中断输出 |
| SCL | I/O | 串行时钟总线,需通过上拉电阻连接VCC |
| SDA | I/O | 串行数据总线,需通过上拉电阻连接VCC |
| VCC | - | 电源电压 |
| GND | - | 地 |
2. 寄存器配置
TCA9536通过I2C接口访问多个内部寄存器实现功能配置:
- 配置寄存器:设置每个I/O端口的输入/输出方向(1=输入,0=输出)
- 输入端口寄存器:反映输入引脚的状态
- 输出端口寄存器:控制输出引脚的状态
- 极性反转寄存器:可反转输入端口寄存器的极性
- 特殊功能寄存器:控制上拉电阻使能和P3/INT功能选择
上电时,所有I/O默认配置为输入,并启用内部上拉电阻(约100kΩ)。
3. 中断功能
P3引脚可配置为中断输出(INT),具有以下特点:
- 开漏结构,需外接上拉电阻(典型值10kΩ)
- 当任何输入引脚状态与其对应的输入端口寄存器状态不同时激活
- 中断有效时间(tiv)典型值为4μs
- 通过读取输入端口寄存器或写入匹配原始状态来复位中断
4. 电气特性
- 工作温度范围:-40°C至+125°C
- ESD保护:
- P0-P3, VCC引脚:±4000V HBM
- SDA, SCL引脚:±2000V HBM
- 所有引脚:±1000V CDM
- 电源电流:
- 工作模式(1MHz):最大425μA(5.5V)
- 待机模式:最大3.9μA(5.5V)
三、典型应用
1. 应用场景
TCA9536广泛应用于:
- 个人电子设备(可穿戴设备、手机、游戏机)
- 服务器和路由器
- 需要额外GPIO的任何微控制器系统
- LED驱动控制
- 按钮/开关状态监测
2. 设计注意事项
- 上拉电阻选择:
- SDA和SCL线必须通过上拉电阻连接至VCC
- 电阻值根据I2C线路电容确定,通常4.7kΩ适用于400kHz通信
- 电源设计:
- 建议在VCC引脚附近放置0.1μF去耦电容
- 电源布线应尽可能短以降低噪声
- PCB布局:
- 保持I2C走线尽可能短
- 避免与其他高频信号线平行走线
- 对于高频应用,考虑使用地平面隔离敏感信号
四、软件实现
1. 初始化流程
- 发送启动条件(START)
- 发送器件地址(0x41,R/W=0)
- 发送配置寄存器地址(0x03)
- 发送配置字节(设置I/O方向)
- 发送停止条件(STOP)
2. 读取输入状态
- 发送启动条件(START)
- 发送器件地址(0x41,R/W=0)
- 发送输入端口寄存器地址(0x00)
- 发送重复启动条件(Repeated START)
- 发送器件地址(0x41,R/W=1)
- 读取数据字节
- 发送停止条件(STOP)
3. 中断处理
当P3配置为INT且中断发生时:
- 微控制器检测到INT引脚变低
- 通过I2C读取输入端口寄存器状态
- 判断具体是哪个输入状态变化
- 采取相应处理措施
- 中断自动复位(通过读取操作)
五、性能优化建议
- 降低功耗:
- 不使用的I/O配置为输出
- 禁用不必要的上拉电阻(通过特殊功能寄存器)
- 降低I2C通信频率(当速度不是关键因素时)
- 提高抗干扰能力:
- 对长线连接的输入端口添加RC滤波
- 在噪声环境中,考虑使用较低I2C速度
- 确保良好接地
- 批量操作优化:
- 对多个寄存器的操作可使用连续写/读模式
- 减少I2C启动/停止条件的次数