This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BQ76952:BQ76952演示错误和警报状态问题

Guru**** 2466550 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1137683/bq76952-bq76952-demo-bug-and-alarm-status-issue

器件型号:BQ76952

你(们)好

客户反馈、从演示中、 alarm_ st_ A,alarm_ st_ B,alarm_ st_ C 这些寄存器为8位单字节。

该程序使用16位双字节进行读取、并通过位分析分配故障标志位。 这是错误的。

附加了演示图

测试显示警报状态寄存器中的值为0x8000、但警报_ sta_B,警报_ sta_C 没有值。

ALARM_st_ A 为0x2000 、如图所示:   

1、 为什么报警状态报告为0x8000、但 ALARM_Sta_B,ALARM_Sta_C 没有值?

2、 读取 alarm_ sta_a、读出两个字节、高8位是多少?

正在等待您的回复。

谢谢

星号

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Star:

    感谢您指出这一点-此函数的示例代码中可能存在错误。 如果您从该寄存器中读取两个字节、它也将读取以下寄存器。 因此、在这种情况下、如果读取0x03安全状态 A、则安全警报 B 也被读取(高字节)。  

    不过、您提到的变量名称(alarm_ sta_ a,alarm_ sta_ B,alarm_ sta_ C)不在代码示例中、因此我不确定这些变量是如何被读取的。

    此致、

    Matt