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.

[参考译文] LMK03328:EEPROM 写入过程

Guru**** 2394265 points
Other Parts Discussed in Thread: LMK03328, USB2ANY

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

https://e2e.ti.com/support/clock-timing-group/clock-and-timing/f/clock-timing-forum/896764/lmk03328-procedure-of-eeprom-write

器件型号:LMK03328
主题中讨论的其他器件: USB2ANY

大家好

如果我们问 LMK03328、您会介意吗?

如果 使用 FPGA 进行 EEPROM 写入、我们的客户会遇到一些问题。
他们确认可以将 所有 数据写入 SRAM。
但是、它们似乎无法将 所有数据从 SRAM 复制到 EEPROM。

然后、如果他们将 USB2Any 与代码加载程序结合使用、就没有问题了。

's="" procedure="" of="" the="" data copy="" from="" sram="" to="" eeprom ="">
1.将0xEA 写入 R144。 这为 EEPROM 的意外编程提供了基本保护。
2.向 R137.0写入1
3.将0x00写入 R144
4、读取 R137 BIT5=0和 BIT2=0


时间间隔为1。 R144写入、 2. R137写入 和3. R144写入每为5ms。
  每个间隔是否有任何规则(限制)?


R136寄存器的结果如下;
如果是 USB2ANY:0x9A
如果是 FPGA (客户程序):0x9D
这表示什么?


他们还确认了 SRAM 数据。
BYTE4寄存器(NVMSCRC)存在差异。
如果是 USB2ANY:0x00
如果是 FPGA (客户程序):0x0C

请给我们一些建议。

此致、

大田松本

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

    Hirotaka、您好!

    EEPROM 写入没有时间限制。

    我们建议立即使用 Ticspro、因为它更易于使用、并且在日志窗口中提供了更多信息。 下面的快照显示了在单击"SRAM -> EEPROM"按钮后执行的操作。

    让我逐行解释一下。

    第1行:0x90 0xEA。 这是通过将 EA 写入 R144来解锁 EEPROM。 EEPROM 被锁定、除非 R144设置为0xEA。

    线性2:0x89 0x13。 这是使用0001 0011对寄存器 R137进行编程。 位0为 NVMPROG。 通过向其中写入1、SRAM 内容被传输到 EEPROM。 位1为 NVMERASE。 它在写入新 EERPOM 之前擦除旧 EERPOM。 该位不一定需要编程为1、因为如果前面的 I2C 命令要解锁 EEPROM、则擦除过程会在写入前自动发生、这正是第1行的功能。 简而言之、第2行可以是0x89 0x11或0x89 0x13。  

    第3行:0x90 0x00。 这是为了锁定 EEPROM,以免被意外覆盖。

    行4:0x89 0x10。 此行的目的是清除 GUI 中的位0和位1。 由于位0和位1都是自清零位、因此这行是不必要的。 GUI 只需要此行、因为软件无法自行清除这些位。

    观察这篇文章、您似乎已经正确完成了、因此 SRAM 可能无法正确写入。 如果您使用寄存器提交方法、则 GUI 会执行以下两行操作:

    行1:0x89 0x50。 这是使用0101 0000对寄存器 R137进行编程。 为了自动计算 CRC 字节、位4始终为1、因此没有太多可说的。 位6是 REGCOMMIT 位、代表寄存器提交。 通过向该位写1、寄存器内容被传输到 SRAM。

    线性2:0x89 0x10。 这是使用0001 0000对寄存器 R137进行编程。 此行的主要目的是将 GUI 中的位6设置回0、以防之后 GUI 意外地将1写入位6。 由于第6位本身是自清零位,因此不必手动将其设置回0,因此这一行不是必需的(但也不是错误的)。

    如果使用了直接访问方法、则非常简单(由于方便、建议使用此方法)您只需将0写入地址字节、然后将全部345个数据字节重复写入 R142即可。 通过单击"(1a)将寄存器提交到 GUI 映射"、可以在 Ticspro 中生成345字节 EEPROM 映像。 EEPROM 映像显示在右侧的文本框中。 或者、您可以将 EEPROM 映像保存到.EPR 文件中。

    此致、

    Hao

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

    Hao San

    感谢您的回复!

    以防万一、我们希望确认一点。

    我们没有得到答复 ,每个间隔是否没有问题?

    时间间隔为1。 R144写入、 2. R137写入 和3. R144写入每为5ms。
      每个间隔是否有任何规则(限制)?

    此致、

    大田松本

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

    Hirotaka-San、您好、

    EEPROM 写入没有时间限制、因此无需在 I2C 命令之间添加时间。

    此致、
    Hao