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.

[参考译文] BQ4050:写入数据闪存

Guru**** 2551110 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/743900/bq4050-writing-data-flash-memory

器件型号:BQ4050

您好!

我在写入数据闪存存储器时遇到问题。 我看到 TRM 指示使用 ManufacturerBlockAccess()(0x44)命令,然后写入要访问的内存块(内存起始地址:0x4000-0x5FFF?) 后跟新值。 是这样吗? 我还没有成功。 我还看到了另一个主题、其中建议您必须计算和写入新的校验和、如 BQ30系列电量监测计(e2e.ti.com/.../739212)。 您能给我一个清晰的示例、说明如何写入和读取数据闪存吗? 我希望看到完整的交易、以便我能够完全了解所需的内容。

谢谢、
Aaron

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

    TRM 正确。 由于此器件为 SMBus、因此无需校验和、在这一代的 SMB 器件上、我们没有校验和。 您只需要地址并正确格式化数据即可写入 df 中的任何寄存器。 您还必须处于完全访问模式。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢你的答复。 我不确定我必须使用哪种安全模式、因此这很有用。 我想我几乎已经明白了。

    您能不能澄清一下、在 TRM 的第69页、它演示了如何从 ManufacturerData()读取 HardwareVersion()、但它写入命令0x00、然后从命令0x06读取。 这是一个拼写错误、还是我缺少了什么?

    示例:通过 ManufacturerBlockAccess()读取 HardwareVersion()(0x0003)

    1.将 HardwareVersion()发送到 ManufacturerBlockAccess()。

    (a) SMBus 块写入。 命令= 0x00。 发送的数据= 00 03

    2.从 ManufacturerData()读取结果。

    (a) SMBus 块读取。 命令= 0x06。 读取的数据= 00 01

    (b)即0x0100、HardwareVersion() 100。

    ManufacturerAccess()和 ManufacturerBlockAccess()可互换。 可以读取结果

    来自 ManufacturerData()或 ManufacturerBlockAccess(),而不管 MAC 命令是如何发送的。

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

    是的、这是一个拼写错误。 应为0x23,即 ManufacturerData()。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我现在已成功读取和写入数据闪存、但我的新值(设计容量、设计电压等)似乎没有粘滞。 当我读取满电量时、仍然会得到默认值4400、而不是我写入的2700mAh 或1944Wh。 除了完全访问时执行块写入(SEC1 = 0、SEC0 = 1)之外、更改数据闪存还需要做什么? 更改是否保持器件复位?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、如果您处于完全访问权限、则写入应保持。 没有校验和或任何会阻止写入的内容。 发送 RESET 命令时、数据将在 RAM 中刷新。 但是、如果您在重置前进行了密封、则发送另一个重置将再次密封测量仪表。