1. TCA9539 16BIT IO EXPAND 在默认状态下I/O应该是输入,VCC =3.3V, REST/INIT/SDA/SCL 信号4.7k ohm上拉到3.3v, 现在我给P0 任一个端口拉到3.3v, 按数据表规定,INIT 信号应该有变化才对(high –>low), 现在没有变化是否可以认为这个芯片有问题?还是哪里有不对的?
2. A0 =GND, A1=GND, 所以芯片的地址应该为0x74(按数据表规定),在发完start信号以后,发芯片地址0x74(0b 01110100),芯片应该回复ACK信号,但是一直没有。
SCL 频率 200KHZ, 用示波器可以看到START, SCL, SDA数据是正确的,就是没有ACK 信号?是哪边出问题?
第二个问题已经解决,第一个谁能帮给个正确的操作, 谢谢。
Kailyn Chen:
1. 发生中断,INT由高到低变化的条件是P port改变输入输出状态时,比如上电开始默认Pport 为输入接口,如果当某一个port由输入改为输出port时,中断发生。
改变的条件是通过配置寄存器register 6&7来修改。
2. 第二个问题已经解决,是否是I2C地址没写对导致?
TI MAN:
回复 Kailyn Chen:
第二个问题,地址不可以按数据表的直接填写。
第一个问题,I/O 端口方向改变也会导致INT拉低是吗?如果是一开始默认的输入状态,IO 端口输入电平改变会导致INIT变化么?
谢谢。
TI MAN:
回复 Kailyn Chen:
非常感谢 ~