有关 TICS 专业版的问题。
是否仍 要使用 TCS pro 验证 I2C 地址(通过单击 TICS pro 上的“Set I2C Address”(设置 I2C 地址)来设置 I2C 地址?
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.
Choon Kong Yong、
单击"Set I2C Address"按钮或在地址框中键入 ENTER 键、应尝试更新 I2C 接口寻址参数。 如果您关闭并重新打开 USB 通信对话框、并且新的 I2C 地址仍然存在、则您知道应用已为此器件更新其 I2C 地址。
为了进行实际验证、您可以尝试读回任何 R0-R3中的只读寄存器。 如果读取成功完成并生成预期结果、则您具有正确的 I2C 地址。 如果 I2C 地址错误、回读应失败并在状态栏中报告尽可能多的内容。
请注意、更新 GUI 的 I2C 地址不 会更新器件上的 I2C 地址、而只是 TICS Pro 尝试 连接器件时将使用的地址。 要更新器件 I2C 地址、您 必须至少执行以下操作之一:
器件的当前 I2C 地址始终作为 R9[7:1]中的只读值提供、该值在启动时从 EEPROM 和引脚状态读取。 这有点多余、因为除非 I2C 地址正确、否则无法读回该值、但在某些情况下比较感知地址和 EEPROM 编程值可能会很有用。
此致、
Derek Payne
尊敬的 Derek Payne:
感谢您的详细解释。
TI 器件能够通过 "Set I2C Address"按钮设置正确的地址 、并在 TICS pro 的地址框中键入 Enter 键。
我在 TICS 专业版上仍然是新手。
您能帮助解释 以下列出的句子的更多内容吗? TICS 专业版 是否用于 实现以下所列的验证? 如果是、请解释并展示一些图示如何执行该操作?
1) 1)"尝试读回任何 R0-R3中的只读寄存器。 如果读取成功完成并生成预期结果、则您具有正确的 I2C 地址。 如果 I2C 地址错误、回读应失败并在状态栏中报告尽可能多的内容"
2)"I2C 地址始终作为 R9[7:1]中的只读值提供"
谢谢你。
此致、
Yong ChoonKong
Yong、
设置 I2C 地址后、您可以导航到 Raw Registers 页面、找到其中包含只读值的寄存器、然后单击"Read Register"按钮。
TICS Pro 的"原始寄存器 "页面包含 GUI 可以对器件进行编程或从中读取的所有位值。 这些寄存器映射 通常预加载一些默认值、这些值使得使用 EVM 进行评估更容易、因此用户可以使用其中一种可用方法(寄存器映射中的"写入所有寄存器"按钮、USB 通信顶部菜单中的命令或全局热键 Ctrl+L)写入所有寄存器。
根据提供给 TICS Pro 的 I2C 地址、您可能会看到软件的成功和回读 XOR 或回读错误(意味着 I2C 地址不正确)。 下图显示了 R2成功回读和失败回读的示例。
成功:

失败:

在我看来、我们在 寄存器映射中记录了 R9、但 TICS Pro 不会在可用的寄存器中包含该域以进行写入或读取。 因此、我关于 R9[7:1]的建议在 TICS Pro 中不适用。 请忽略。
此致、
Derek Payne
Yong、
对于"读取寄存器"问题:没有区别意味着器件的回读值与 TICS Pro 寄存器映射中已有的值相同。
根据 寄存器文档、R0至 R3是该器件中的只读常量。 LMK05318B 配置文件 在软件寄存器映射中加载这些地址、这些地址预先定义为文档中规定的相同值。
如果您在寄存器映射中选择其中一个地址时单击"Read Register"、 并且读回成功(因为您具有正确的器件 I2C 地址)、 状态栏将更新 、并 执行确认读回、读取的寄存器地址、 以及该寄存器在器件上的内容、与先前存储在 TICS Pro 软件寄存器映射中的内容异或。 由于 TICS Pro 使用器件中相同的值预加载软件寄存器映射、因此该 XOR 应为0x000000、如成功图像中所示。
如果回读 失败(因为您没有器件的正确 I2C 地址)、则状态栏 将指示尝试读取 该寄存器时出错、如故障图像所示。
从技术上讲、回读也可以成功、但 返回的值与该器件的预加载常量不同。 这将表示总线上的 I2C 地址有效、但不属于 LMK05318B。
--
对于第二个问题:
TICS Pro 具有上述间接机制、用于检查 I2C 地址是否对器件有效。 我想我们可以设计一种更直接的方法来检查 完整的 I2C 地址空间、并通过尝试读取其中的一些 只读常量并匹配 TI 器件的查找表列出找到的每个器 件、但现在不支持该功能。
如果 LMK05318B 是 I2C 总线上的唯一器 件、您可以单击"Scan I2C Bus"功能、TICS Pro 使用的 I2C 地址将自动更新为第一个响应地址。 但不执行"验证"-如果有两个器件、其中一个器件位于小于 LMK05318B 地址的地址、此函数将选择错误的器件。

或

此致、
Derek Payne
尊敬的 Derek Payne:
供参考、 在我的电路板设计中、I2C 链连接到2个 I2C 器件单元( 其中一个器件是 LMK05318B)。
为了确保回读属于正确的器件 LMK05318B (通过参考 寄存器文档 R2寄存器(地址= 0x2)[复位= 0x35])。
问题: 这是否意味着我在单击 "Read Register"后将获得值 R2= 0x35?
关于"这将表示总线上的 I2C 地址有效、但不属于 LMK05318B"。
问题:如何知道 为 "读取寄存器"选择了哪个 I2C 地址?
它是"设置 I2C 地址"期间设置的最后一个 I2C 地址吗?
Yong、
EEPROM 的 CRC? 我们不会披露某些 EEPROM 映射、因为它们是与 DPLL 计算相关的模糊变量;此外、CRC 计算中包含的多个 EEPROM 字段对应于生产后未写入或更新的特定器件标识符数据。 TICS Pro 目前不包含用于直接计算 CRC 的工具、但 以下是计算过程:
确认 有效的 CRC 需要处理此器件配置文件的待办事项、可能如下所示:
此致、
Derek Payne
尊敬的 Derek Payne:
我能够通过在 R2寄存器上回读来验证 I2C 地址。
有关 CRC 的更多信息
对"如果需要比较、则随后写入 EEPROM 并在编程完成后与 NVMSCRC 值进行比较"有疑问。
如果 能够成功编程 R135=0X9D、这意味着什么?
如果 Get R135=0XBD (R157的位5设置为1)、这是否意味着编程失败(LMK05318BRGZR 上的寄存器写入/刻录与图像文件不同)?