主为xilinx的zynq-7000的I2C,挂了两个TCA9555 一个从地址0x20,另一个从地址0x21,频率100k,
补充硬件:VCC 3.3V,SCL,SDA,INT上拉电阻为4.7K,A0直接接3.3V,A1,A2接地。
这里只给0x21写数据
先初始化:
write (Config_Reg0)0x06 0x00
write (Output_Reg0)0x02 0xFF
write (Polarity_reg0)0x04 0x00
再
write (Output_Reg0)0x02 0xAA
但是引脚电压依旧为高,没有改变
时序图如图
第一个是SCL,第二个SDA,第三个INT
频率改到400k接收不到ACK信号
Tony yang1:
主为xilinx的zynq-7000的I2C,挂了两个TCA9555 一个从地址0x20,另一个从地址0x21,频率100k,
补充硬件:VCC 3.3V,SCL,SDA,INT上拉电阻为4.7K,A0直接接3.3V,A1,A2接地。
这里只给0x21写数据
先初始化:
write (Config_Reg0)0x06 0x00
write (Output_Reg0)0x02 0xFF
write (Polarity_reg0)0x04 0x00
再
write (Output_Reg0)0x02 0xAA
但是引脚电压依旧为高,没有改变
时序图如图
第一个是SCL,第二个SDA,第三个INT
频率改到400k接收不到ACK信号
请TI专家回答一下,坐等。。。。。。
Kailyn Chen:
将从机地址0X21<<1为0X42试试,从机地址不正确也是导致不产生ACK的原因。
Tony yang1:
回复 Kailyn Chen:
0x42试了一下,接收不到信号了。显然不是从机地址的问题。您再分析一下了