TI E2E™ 英文论坛海量技术问答的中文版全新上线,可点击相关论坛查看,或在站内搜索 “参考译文” 获取。

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.

[参考译文] BQ27520-G4:比较时 DFFS 文件失败

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1071317/bq27520-g4-dffs-file-fails-on-compare

部件号:BQ27520-G4
“线程:BQSTUDIO”中讨论的其它部件

您好,

我正在尝试通过 I2C 对设备进行编程,当设备处于 FW 模式时,它似乎工作正常,但当它切换到 ROM 模式时,似乎出现了问题。

我的 DFFS 文件如下:

;--------------------------------------------------------
;Verify Existing Firmware Version
;--------------------------------------------------------
W: AA 00 01 00
C: AA 00 20 05
W: AA 00 02 00
C: AA 00 29 03
;--------------------------------------------------------
;Unseal device
;--------------------------------------------------------
W: AA 00 14 04
W: AA 00 72 36
W: AA 00 FF FF
W: AA 00 FF FF
X: 1000
;--------------------------------------------------------
;Go To ROM Mode
;--------------------------------------------------------
W: AA 00 00 0F
X: 1000
;--------------------------------------------------------
;Data Block
;--------------------------------------------------------
W: 16 00 03 00 00
W: 16 64 03 00
X: 20
C: 16 66 00
W: 16 00 02 00 00 00 EA FF 33 06 FA 33 8C FA 33 39 FE 33 41 FE 33 FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F FF FF 3F 29 03 3F 58 CB 33 C1 00 08 00 00 00 00 00 00 FF AA 0E FB A7 0E FF A6 0E FF A1 0E FF A0 0E FE A3 0E 6C A2 0E D2 FF 3A FF A1 0E 63 A0 0E FF A3 0E
W: 16 64 C9 34
X: 2
C: 16 66 00
W: 16 00 02 01 00 00 61 A2 0E BD A5 0E 13 A4 0E CA FF 3A FE A1 0E 6C A0 0E FE A3 0E 6C A2 0E CA FF 3A C2 FF 3A D6 FF 33 FF AF 0E 01 4F 03 3F 11 0C CD FF 30 D4 FF 35 2F 10 0C D4 FF 35 FF FF 23 01 AF 14 01 4F 03 3F 11 0C C5 FF 30 CC FF 35 2F 10 0C CC FF 35 FF FF 23 FF DF 0B C4 FF 33 A4 F6 39 FE AF 16 C1 AB 0E
W: 16 64 89 2E
X: 2
C: 16 66 00
W: 16 00 05
W: 16 64 05 00
X: 170
C: 16 66 00
C: 16 04 36 FC 4F 9F
W: 16 00 0C 00 00 00 83 DE
W: 16 64 6D 01
X: 400
C: 16 66 00
W: 16 00 0A 00 00 00 7F 74 1F 21 94 0A 9C 08 FA B8 00 4C 00 00 00 00 0B B8 10 68 0B A4 03 E8 00 20 03 E8 00 20 00 20
W: 16 64 9D 08
X: 2
C: 16 66 00
W: 16 00 0A 01 00 00 10 96 00 D4 86 4A C6 B4 C2 6E 2B 03 7C 01 48 FD A3 F6 75 12 58 2D B7 2C 4A 00 00 00 00 CF DC 17
W: 16 64 83 0C
X: 2
C: 16 66 00
W: 16 00 0A 02 00 00 F3 00 00 17 F3 00 00 3A 36 FD 91 00 25 30 01 00 EF 05 11 05 01 00 00 10 01 00 3C 00 50 3C 00 64
W: 16 64 A5 06
X: 2
C: 16 66 00
W: 16 00 0A 03 00 00 3C 00 20 01 00 03 E8 00 05 00 03 E8 00 00 00 FE D5 FB 95 00 02 02 BC 00 14 03 E8 10 62 10 68 01
W: 16 64 52 08
X: 2
C: 16 66 00
W: 16 00 0A 04 00 00 01 02 BC 01 2C 00 1E 00 C8 C8 14 10 00 3C 0E 10 00 0A 46 05 0F 07 0F 03 20 00 64 46 50 0A 0F F0
W: 16 64 C6 05
X: 2
C: 16 66 00
W: 16 00 0A 05 00 00 0F D0 01 90 00 64 19 DC 5C 60 00 7D 00 04 03 19 25 5A 0F 14 60 6E 0C 80 00 C8 28 01 F4 00 00 00
W: 16 64 12 08
X: 2
C: 16 66 00
W: 16 00 0A 06 00 00 00 00 00 00 00 00 00 43 80 04 00 00 01 14 00 2C 05 00 0A 13 88 00 C8 0A 23 61 03 E8 00 10 60 C9
W: 16 64 3C 05
X: 2
C: 16 66 00
W: 16 00 0A 07 00 00 D7 F6 F5 F8 F6 DE EA D7 E8 E9 EA F0 E2 E3 E5 E3 E6 E7 E9 E9 F0 EB ED E9 E7 E5 E3 DF EC EF E2 BC
W: 16 64 EF 1C
X: 2
C: 16 66 00
W: 16 00 0A 08 00 00 9F B1 B7 E9 DD A4 00 F3 CD 04 0E 0A 92 CB 24 D6 1D 74 DA 4D 92 D7 DD 50 D1 BE 13 EB FE F9 FC 0F
W: 16 64 93 12
X: 2
C: 16 66 00
W: 16 00 0A 09 00 00 FF F7 AD 09 C5 BC A0 D3 FD 6B DD 3E 3B DC 7D D1 C9 CB 53 AA BA AA 98 29 3F 9E 78 C2 10 B0 00 7B
W: 16 64 A3 12
X: 2
C: 16 66 00
W: 16 00 0A 0A 00 00 2D 5D D2 4F 1E D3 60 F0 FF 55 00 14 01 01 03 05 F8 03 FF 03 10 24 28 1E 2C 77 7F 00 00 FF D0 00
W: 16 64 DA 0A
X: 2
C: 16 66 00
W: 16 00 0A 0B 00 00 FA EF ED 2A F2 00 3D 03 12 EF EE FE 05 DA 00 00 FE E9 00 03 1D 33 B1 19 F7 00 43 2D FA 9E 88 11
W: 16 64 AF 0E
X: 2
C: 16 66 00
W: 16 00 0A 0C 00 00 6D 23 61 03 E8 00 10 60 C9 D7 F6 F5 F8 F6 DE EA D7 E8 E9 EA F0 E2 E3 E5 E3 E6 E7 E9 E9 F0 EB ED
W: 16 64 19 18
X: 2
C: 16 66 00
W: 16 00 0A 0D 00 00 E9 E7 E5 E3 DF EC EF E2 BC 9F B1 B7 E9 DD A4 00 F3 CD 04 0E 0A 92 CB 24 D6 1D 74 DA 4D 92 D7 DD
W: 16 64 A9 14
X: 2
C: 16 66 00
W: 16 00 0A 0E 00 00 50 D1 BE 13 EB FE F9 FC 0F FF F7 AD 09 C5 BC A0 D3 FD 6B DD 3E 3B DC 7D D1 C9 CB 53 AA BA AA 98
W: 16 64 0C 15
X: 2
C: 16 66 00
W: 16 00 0A 0F 00 00 29 3F 9E 78 C2 10 B0 00 7B 2D 5D D2 4F 1E D3 60 F0 FF 55 00 14 01 01 03 05 F8 03 FF 03 10 24 28
W: 16 64 4B 0B
X: 2
C: 16 66 00
W: 16 00 0A 10 00 00 1E 2C 77 7F 00 00 FF D0 00 FA EF ED 2A F2 00 3D 03 12 EF EE FE 05 DA 00 00 FE E9 00 03 1D 33 B1
W: 16 64 12 0E
X: 2
C: 16 66 00
W: 16 00 0A 11 00 00 19 F7 00 43 2D FA 9E 88 11 6D 00 00 01 C2 00 32 00 C8 10 68 00 32 FF CE 02 26 00 00 01 18 00 19
W: 16 64 C7 08
X: 2
C: 16 66 00
W: 16 00 0A 12 00 00 00 64 28 63 5F FF 62 00 32 09 73 04 2E 00 6E 14 01 04 00 00 4A 2C 5E 00 09 04 00 00 14 0A F0 0B
W: 16 64 2C 06
X: 2
C: 16 66 00
W: 16 00 0A 13 00 00 B8 00 0A 05 00 32 01 C2 14 14 00 08 09 F6 00 C8 00 4B 00 82 00 3C 3C 01 80 80 01 90 36 72 04 14
W: 16 64 67 07
X: 2
C: 16 66 00
W: 16 00 0A 14 00 00 FF FF FF FF 02 26 02 01 F4 02 58 02 02 26 00 00 00 A7 14 65 89 01 F4 00 00 64 01 B0 F6 FE 0C 03
W: 16 64 73 0B
X: 2
C: 16 66 00
W: 16 00 0A 15 00 00 84 5A 0D AC 01 FE 70 0B A6 07 62 71 32 37 35 32 30 00 00 00 96 00 AF 00 4B 00 64 32 0C 4E 02 0D
W: 16 64 3F 08
X: 2
C: 16 66 00
W: 16 00 0A 16 00 00 48 0C 1C 02 00 00 00 00 FE D5 FB 95 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
W: 16 64 F5 03
X: 2
C: 16 66 00
W: 16 00 0A 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
W: 16 64 0E 13
X: 2
C: 16 66 00
W: 16 00 0A 18 00 00 FF 55 00 14 01 01 03 05 F8 03 FF 03 10 24 28 1E 2C 77 7F 00 00 00 00 00 00 00 00 00 00 00 00 00
W: 16 64 2D 05
X: 2
C: 16 66 00
W: 16 00 0A 19 00 00 FF 55 00 14 01 01 03 05 F8 03 FF 03 10 24 28 1E 2C 77 7F 00 00 00 00 00 00 00 00 00 00 00 00 00
W: 16 64 2E 05
X: 2
C: 16 66 00
W: 16 00 0A 1A 00 00 FF FF 00 14 01 01 03 05 F8 03 FF 03 10 24 28 1E 2C 77 7F 00 00 00 00 00 00 00 00 00 00 00 00 00
W: 16 64 D9 05
X: 2
C: 16 66 00
W: 16 00 0A 1B 00 00 FF FF 00 14 01 01 03 05 F8 03 FF 03 10 24 28 1E 2C 77 7F 00 00 00 00 00 00 00 00 00 00 00 00 00
W: 16 64 DA 05
X: 2
C: 16 66 00
W: 16 00 0A 1C 00 00 F3 00 00 17 F3 00 00 3A 36 FD 91 00 25 30 01 00 EF 05 11 05 01 00 00 10 01 00 3C 00 50 3C 00 64
W: 16 64 BF 06
X: 2
C: 16 66 00
W: 16 00 0A 1D 00 00 3C 00 20 01 00 03 E8 00 05 00 03 E8 00 00 00 FE D5 FB 95 00 02 02 BC 00 14 03 E8 10 62 10 68 01
W: 16 64 6C 08
X: 2
C: 16 66 00
W: 16 00 0A 1E 00 00 FF FF FF FF 00 00 00 51 FF FF FF AD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
W: 16 64 0B 1C
X: 2
C: 16 66 00
W: 16 00 0A 1F 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
W: 16 64 09 20
X: 2
C: 16 66 00
W: 16 00 08
W: 16 64 08 00
X: 2
C: 16 66 00
C: 16 04 30 8D
W: 16 00 05
W: 16 64 05 00
X: 170
C: 16 66 00
C: 16 04 36 FC 4F 9F
W: 16 00 01 00 00 05 54 54 15
W: 16 64 C3 00
X: 20
C: 16 66 00
W: 16 00 05
W: 16 64 05 00
X: 170
C: 16 66 00
C: 16 04 8B 50 25 9F
;--------------------------------------------------------
;Execute Flash Code
;--------------------------------------------------------
W: 16 00 0F
W: 16 64 0F 00
X: 4000

当我通过 BQstudio 中的高级通信界面手动运行这些步骤时,我能够遵循这些步骤,直到我在 ROM 模式下看到第一个比较语句—这种情况失败。 与返回0x00的比较不同,它从地址0x66返回0x02。 这是上述 DFFS 文件中的第27行。

C:16 66 00

我可以通过编程器和电源循环写入 SREC 文件,将设备恢复到 FW 模式。  

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

    约翰内斯,你好

    仪表板自动刷新和扫描寄存器可能导致干扰。 使用高级通信屏幕时,关闭自动刷新并确保寄存器不会扫描。

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

    您好,Shirish,

    感谢您对此问题的帮助。 禁用自动刷新确实很有帮助,我在这方面走得更远了,但现在我被卡在第40行。

    C:1604 36 FC 4F 9F

    我尝试通过 BQstudio 中的高级命令选项卡以及我编写的固件发送命令,这种比较总是返回

    《议定书》/《公约》缔约方会议:16 04 34 11 3F A7

    此 DFFS 文件来自我正在处理的同一个芯片,因此不会出现版本控制问题。  好消息是,即使在这一比较失败后,芯片仍可恢复。 我可以将 SREC 文件写入该文件并将其恢复到固件模式。

    你有什么想法吗?

    //Johannes

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

    约翰内斯,你好

    您是否能够从 bqStudio 对 DFFS 文件进行编程?

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

    您好,Shirish,

    请原谅延迟回复——我目前的盘子里有很多东西。

    我尝试通过 bqStudio 编程器对 DFFS 文件进行编程,它似乎工作正常。

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

    约翰内斯,你好

    好极了。 某些命令超时,通常为2或4秒。 手动分步方法可能已超出此范围。 再次尝试从第36行重复,命令之间的间隙较小。

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

    再添加一项:仅当遇到比较错误时才从第36行重试。 否则,请从“数据块”的开头开始

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

    您好,Shirish,

    我买了两 块新的充电器板,测试了它们上的代码,结果都很好。 看起来,我正在使用的设备就像我以前在使用它时被惊慌失措。 报告的电池电量百分比似乎刚刚好,但背景中的某些内容无法按预期工作。 无论如何-我将关闭此选项并将您先前关于关闭自动刷新的答案标记为解决方案。

    再次感谢 Shirish 的宝贵帮助!

    如果 有人发现此线程,请在后面的注释中注明:

    -确保 i2c 写入的缓冲区足够长,以适应 DFFS 文件中的所有命令。  我在前面注意到,我的第一次比较失败,因为我的原始缓冲区根本不适合非常长的写入命令。

    -关闭 bqStudio,并在完成写入芯片后重新启动它。

    //Johannes