Other Parts Discussed in Thread: USB2ANY, LMK05318B
器件型号: LMK05318
主题中讨论的其他器件: USB2ANY、
我收到了一位客户的以下问题:
“使用 TICS Pro 和 USB2ANY POD 时、是否有办法查看 LMK 上内容的校验和或回读验证、这将表明我们在其中放置了正确的软件?“
如果存在类似的情况、请告诉我。
谢谢
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.
您好 Christopher、
您可以将读回 R155 NVMSCRC (NVM 存储的 CRC) 与来自 HexRegisterValues 的预期 CRC 进行比较。
例如、0x7B 是本例中存储的 CRC: 
在应用程序中也可以进行快速版本控制健全性检查。
尽管 LMK 在器件初始化时使用计算出的 CRC 检查存储的 CRC、但这用于验证正确性、而不是版本控制。
此致、
Octo
您好 Christopher、
对此处延迟的回复表示歉意。 正如 Octto 提到的、您可以使用 NVMSCRC 和 NVMLCRC 值来确定 EEPROM 编程是否成功。 由于 NVMCNT 包含在 CRC 计算中、因此您应该会在 EEPROM 的每个编程周期看到 CRC 值更新。
对于版本控制、我建议写入 EEREV 或备用字节、如 TICS Pro GUI 中的“EEPROM"页面“页面所示:

然后、您可以使用器件数据表第 8.5.8 节中所述的过程读回特定于这些 EEPROM 字节。 如果这对我有帮助、请告诉我
您好 Octo:
EEREV 存储在 EEPROM 地址 11 中、但正如您提到的、由于寄存器 R11 为只读、因此无法使用 regcommit 序列直接写入。 通过 SRAM 写入内容的最简单方法是使用 TICS Pro GUI、如果选中修改这些受限字段的复选框、则可以看到在编程序列末尾附近附加了一些额外的写入:

此过程遵循数据表“使用直接写入来写入 SRAM “部分中概述的步骤。 例如、在我的示例中、将值 5 写入 EEREV (EEPROM 地址 11)、序列为:
R159 0x009F00 #将 EE 地址 11 的 MSB 写入 MEMADR 字节 1
R160 0x00A00b #将 EE 地址 11 的 LSB 写入 MEMADR 字节 0
R162 0x00A205 #将数据值 5 写入 RAMDAT
使用 SRAM 内容对 EEPROM 进行编程后、在下一次下电上电时 可以读回 R11、并且它应该在 EEREV 中存储更新的值。