工具与软件:
大家好、我使用板上的12个 LP5810来驱动12个 LED、每个 LED 由单个 LP5810驱动、所有输出连接在一起。
设置正常、但 LP5810随机崩溃。
有些单元永远不会发生故障、但有些单元发生故障的频率更高。 LED 以大约1Hz 50mA 的频率闪烁。
奇怪的是、我找不到可以告诉我问题的寄存器。 当驱动器齿槽时、寄存器值如下:
lp5810:ChipEn = 0x01
lp5810:DevConfig0 = 0x00
lp5810:led_EN1 = 0x00
lp5810:ManualDC0 = 0xFF
lp5810:ManualDC1 = 0xFF
lp5810:ManualDC2 = 0x00
lp5810:ManualDC3 = 0x00
lp5810:ManualPWM0 = 0xFF
lp5810:ManualPWM1 = 0x48
lp5810:ManualPWM2 = 0x00
lp5810:ManualPWM3 = 0x00
lp5810:TSD_ConfigStatus = 0x00
lp5810:LOD_STATUS0 = 0x00
lp5810:lsd_status0 = 0x00
所以我没有 TSB、LSO 或 LOD 错误。
LED 指示灯熄灭、但寄存器显示不正确!
我发现将其恢复的唯一方法是软件复位。
发送清除故障命令的事件不会改变任何事情。 重写使能开/关不会改变结果。
当 I2C 总线上的其他器件具有更多的流量时、情况似乎发生得更多。
已配置:
LP5810_DevConfig12、位于0x00
12kHz 下的 LP5810_DevConfig1
在 LP5810经常崩溃的 I2C 总线上、有 RTC 和 TCA6408ARSVR
