你(们)好,先生
我尝试通过 I2C 调节 VDCDC1电压电平。
TPS65217D 中 VDCDC1的默认值为1.35V。
我想通过 I2C 将其更改为1.2V、但它不起作用。
I2C 读取正常、因为我可以看到 来自 TPS65217D 的 I2C 读取数据在地址0x1中为0x3D。
但是、即使我遵循了2级受保护寄存器写入过程、 VDCDC1也不会改变。
我可以看到 、当我向 TPS65217D 发送命令时、TPS65217D 的 ACK 被拉低。
下面是我的程序、请帮助我指明哪个步骤是错误的。
第1步: 启动 I2C
步骤2:设置 ID=0x24=>Get ACK 从 TPS65217D 中拉低
步骤3:设置0xB=0xE ^ 0x7D=0x73=>Get ACK 从 TPS65217D 拉低
步骤4:停止 I2C
步骤5: 启动 I2C
步骤6:设置 ID=0x24=>Get ACK 从 TPS65217D 中拉低
步骤7:设置0xE=0xC (更改 VDCDC1 =1.2V)=>Get ACK 被从 TPS65217D 拉低
步骤8:停止 I2C
步骤9: 启动 I2C
步骤10:设置 ID=0x24=>Get ACK 从 TPS65217D 中拉低
步骤11:设置0xB=0xE ^ 0x7D=0x73=>Get ACK 从 TPS65217D 拉低
步骤12:停止 I2C
步骤13: 启动 I2C
Step14:设置 ID=0x24=>Get ACK 从 TPS65217D 中拉低
Step15:设置0xE=0xC (更改 VDCDC1 =1.2V)=>Get ACK 被从 TPS65217D 拉低
步骤16:停止 I2C