你好,
我目前正在为定制的基于imx6的板开发BSP。
我正在尝试启用DA9063看门狗功能。
超时工作正常,但当它需要重置时,iMX就会停止。所有PMIC电压似乎保持不变,iMX不会重新启动,直到我手动在寄存器CONTROL_F (0x13)的SHUTDOWN位(位1)中写入1。
同样,当iMX存在时,通过在SHUTDOWN位中写入1,可以重现完全相同的行为。然后我必须在SHUTDOWN位中重写1,否则iMX将不会重置。
我注意到POR输出信号在看门狗超时后被断言为低(或在CONTROL_F中第一次写入),然后在CONTROL_F中写入SHUTDOWN后返回高(这可以解释为什么iMX没有重置)。
你知道是什么导致了这种行为吗?我该如何修复它?
非常感谢
PinkPR
设备:
你好PinkPR,
谢谢你的问题。你能把你的。ini文件和图解快照发给我吗?
亲切的问候,
艾略特德克斯特
嗨,艾略特,
我没有任何。ini文件。DA9063通过Linux DA9063驱动进行配置。无论如何,一旦启动,以及看门狗还没有运行时,很容易生成寄存器状态的快照。
还有,恐怕我无权公开我们的部分原理图。如果有别的办法,告诉我。
PinkPR
你好PinkPR,
你知道DA9063 PMIC是否被编程了吗?
你能给我读一下身份证上的标记吗?
亲切的问候,
艾略特德克斯特
标记显示:DA9063 3F 1701ECAB。
默认电压与公共数据表不同,因此它可能是预编程版本。
你好PinkPR,
让我看一下3F .ini文件。
亲切的问候,
艾略特德克斯特
你好PinkPR,
您是使用I2C写入来触发看门狗注册,还是使用KEEP_ACT函数?
一旦触发复位,PMIC处于什么状态?
你能稍微解释一下你说的"超时工作没问题",你是说它进入重置然后卡住了吗?
亲切的问候,
艾略特德克斯特
嗨,艾略特,
我正在使用I2C来刷新看门狗定时器。
是的,就是这样:当看门狗超时时,PMIC进入复位模式。这时iMX就卡住了。板上的一些设备然后断电,看起来PMIC得到所有寄存器复位。
但是POR_B输出仍然被断言是低的,因此iMX不会完全复位。
你好PinkPR,
你看到所有的调节器在PMIC关闭,你看到nRESET信号变低了吗?
亲切的问候,
艾略特德克斯特
嗨,艾略特,
稳压器不关闭,他们是重置到他们的电源电压。nRESET低,不上升。
你好,
所以Buck调节器在Powerdown中保持活跃?或者它们在断电时重新启用?
亲切的问候,
艾略特德克斯特
你好PinkPR,
我明白问题所在了。BUCKCORE1、BUCKCORE2、BUCKIO、BUCKPRO、LDO11、LDO9上的x_CONF位断言。这些调节器将在断电模式下保持打开状态。
您需要禁用它们。
亲切的问候
艾略特德克斯特
嗨,艾略特,
谢谢你抽出时间,效果很好!
你能解释一下这些领域起什么作用吗?我不能在数据表中看到它的任何引用,除了在寄存器定义中。
你好PinkPR,
我附上了DA9061/62开发人员指南的一部分。本节包含一个表,其中包含监管机构(Bucks & ldo)的不同可能配置。尽管此表描述了DA9061/62设备的设置,但对于DA9063也是如此。
这种类型的操作可用于挂起以恢复操作。
亲切的问候,
艾略特德克斯特