你(们)好。
有时、当我们引导系统时、与 DRV2605L 的 I2C 通信会丢失。 在本例中、当我们尝试访问器件寄存器时、我们没有得到任何响应。 如果它处于待机模式而没有得到任何响应、则值0x00也会发送到寄存器0x01。 为什么会发生这种情况?
解决此问题的唯一方法是对器件进行下电上电。
我们还尝试启用和禁用 EN 引脚、但其操作与数据表中的说明不匹配。 当我们禁用 EN 引脚时、IC 停止工作"控制和回放引擎"、但 I2C 通信继续工作。
在数据表中、在8.4.1.3采用 EN 控制的工作模式下、显示"EN 引脚必须为高电平才能写入 I2C 器件寄存器。 但是、如果 EN 引脚为低电平、DRV2605L 器件仍可在 I2C 事务期间确认(ACK)、但无法进行读取或写入"、在我们的测试中、I2C 通信仍然正常、同时禁用"控制和回放引擎"块。
我们按照初始化过程9.3-1进行操作、这些是器件寄存器的值:
REG00:0xE0
REG01:0x0
REG02:0x0
REG03:0x6
REG04:0xC
REG05:0x0
REG06:0x0
REG07:0x0
REG08:0x0
REG09:0x0
REG0A:0x0
REG0B:0x0
REG0C:0x0
REG0D:0x0
REG0E:0x0
REG0F:0x0
REG10:0x0
REG11:0x5
REG12:0x19
REG13:0x64
REG14:0x19
REG15:0xFF
REG16:0x3E
REG17:0x8C
REG18:0xC
REG19:0x6C
REG1A:0x36
REG1B:0x93
REG1C:0xf5
REG1D:0x1
REG1E:0x20
REG1F:0x80
REG20:0x33
REG21:0x96
REG22:0xDE
下面是 DRV2605L 原理图的屏幕截图:

谢谢!
Ferran





