团队、
我的客户有以下问题。
我们有一个关于 LMK5C33216 EEPROM 的问题。 它工作正常、我们可以对其进行读取/写入。
我们要做的是对其进行清除、这意味着进行一些已知的读取和写入来验证所有 NVM/EEPROM 寄存器的状态。
现在的困境是、如果我们写入一个特定的时钟输出并将其所有寄存器设置为0x00或0xFF、FGA 会关闭控制/写入 LMK 的时钟。
团队是否知道一种直接写入 NVM 的方法、而不会中断时钟、从而使时钟保持运行、并进而使 FPGA 保持运行?
此致、
亚伦
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.
团队、
我的客户有以下问题。
我们有一个关于 LMK5C33216 EEPROM 的问题。 它工作正常、我们可以对其进行读取/写入。
我们要做的是对其进行清除、这意味着进行一些已知的读取和写入来验证所有 NVM/EEPROM 寄存器的状态。
现在的困境是、如果我们写入一个特定的时钟输出并将其所有寄存器设置为0x00或0xFF、FGA 会关闭控制/写入 LMK 的时钟。
团队是否知道一种直接写入 NVM 的方法、而不会中断时钟、从而使时钟保持运行、并进而使 FPGA 保持运行?
此致、
亚伦
大家好、Aaron
您可以使用 SRAM 直接写入方法。 因此、您可以直接对 SRAM 进行写入、而不会干扰当前寄存器设置。 然后 SRAM 转换为 EEPROM。 有关更多指导、请参阅此 PDF。
e2e.ti.com/.../5707.Programming-LMK5Cxxxxx_2C00_-LMK5Bxxxxx_5F00_Nov32023.pdf
此致、
珍妮弗
Jennifer、您好!
感谢您查看擦除方法、但现在我想我可以向几乎所有非保留寄存器写入0xFF。 我似乎无法设置的一个寄存器是 R21的位6。
我当前正在运行以下
写入 R25 0x001901 #同步启用
写入 R21 0x001540 #软件同步断言
在回读 R21时、我只看到它返回值0x00。 在 SYNC 生效后、R21是否会立即恢复到0x00、或者我是否可以执行其他操作来将 R21的第6位设置为1并读回它?
Riley、您好!
我已经在完成下面两次写入后尝试下电上电、但即使在下电上电后、0x0015也回读了值0x00。
写入 R25 0x001901 # SYNC_EN=1
写入 R21 0x001540 # SYNC_SW=1
但是、我的印象是这两个写入操作将通过 REGCOMMIT 方法完成、因为我将分别写入0x0019和0x0015。
如果我要通过 SRAM 方法将值0x40写入0x0015、以下方法是否应该解决问题? (我也尝试该 SRAM 方法失败)
R20 0x001480
R40 0x00AB40
R173 0x00AD00
R174 0x00AE0F #SYNC_SW
R176 0x00B040 #SYNC_SW=1
R180 0x00B4EA
R171 0x00AB03
R180 0x00B400
下电上电并读取0x0015、但它返回0x00、而不是0x40。
在我的 REGCOMMIT 或 SRAM 方法尝试将值0x40写入0x0015时、是否缺少某些内容?
尊敬的 Chase:
可以通过2种方法对器件进行编程:
-对 LMK 寄存器的直接写入(或 REGCOMMIT 方法)。 此项使用 LMK 寄存器映射 如编程手册中所示。
- SRAM 方法使用 SRAM/EEPROM 寄存器映射 这与 LMK 寄存器映射不同。
SYNC_SW 上的地址 ON:
- LMK 寄存器映射:R21 (偏移量0x15)位6

- SRAM/EEPROM 寄存器映射:地址15 (0xF) 位7

因此、若要通过 SRAM WRITE 访问 SYNC_SW、您需要通过以下步骤访问地址0xF:
R20 0x001480
R40 0x00AB40
R173 0x00AD00
R174 0x00AE0F #SYNC_SW
R176 0x00B080 #SYNC_SW=1
R180 0x00B4EA
R171 0x00AB03
R180 0x00B400
请告诉我这是否起作用。
-Riley
Riley、您好!
谢谢详细介绍了 SRAM 编程的替代寄存器映射、但在这些 寄存器写入之后 、仍然没有将 R21的位6设为高电平。
R20 0x001480
R40 0x00AB40
R173 0x00AD00
R174 0x00AE0F #SYNC_SW
R176 0x00B080 #SYNC_SW=1
R180 0x00B4EA
R171 0x00AB03
R180 0x00B400
(然后在读取 R21之前进行下电上电)
作为后续行动、我在目标上看到 TIC 上出现了类似的行为。
仅当我打开 USB 通信>接口并将协议设置为 SPI_CLKLOW 时,才会发生这种情况。
然后、当我 写入寄存器 0x001540然后读取寄存器时、它返回0x001500。

在 使用 SPI_CLKLOW 接口时是否需要设置任何其他寄存器来启用0x0015以保持值0x40、或者您是否知道这种行为为什么会发生?