Other Parts Discussed in Thread: TPS25750, USB2ANY, TPS25750EVM
主题中讨论的其他器件: USB2ANY、
在《TPS25750主机接口技术参考手册》中,PBM 在 Byte5中有一个“I2C 从机地址”。 我应该为此输入什么地址?
它是 TPS25750自己的从器件地址吗?
另外, 我是否应该先写入 Data1,然后再将“PBM”写入 CMD1?
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.
Other Parts Discussed in Thread: TPS25750, USB2ANY, TPS25750EVM
在《TPS25750主机接口技术参考手册》中,PBM 在 Byte5中有一个“I2C 从机地址”。 我应该为此输入什么地址?
它是 TPS25750自己的从器件地址吗?
另外, 我是否应该先写入 Data1,然后再将“PBM”写入 CMD1?
我读取 CMD1、它是0x00。
以下是使用 USB2ANY 设置寄存器时的日志。
------------------------------------------------------------------
2021-08-04 09:34:27.168 DebugLogging 已启用
2021-08-04 09:34:27.168 PacketLogging 已禁用
2021-08-04 09:34:27.168性能评测已禁用
2021-08-04 09:34:27.274
2021-08-04 09:34:27.275信息:数据包日志记录已禁用
2021-08-0409:34:27.276信息:活动日志记录已启用
2021-08-04 09:34:27.846信息:目标电源:3.3V 关闭、5.0V 关闭、Adj 关闭
2021-08-04 09:34:27.972信息:找到1个 USB2ANY 控制器。
2021-08-04 09:34:28.081信息:已成功打开 USB2ANY S/N 2572435119000900!
2021-08-04 09:34:28.097信息:固件版本:2.8.2.0
2021-08-04 09:34:28.144 INFO:已启用 EVM 检测中断处理程序
2021-08-04 09:34:28.144 I2C:I2C 位速率设置为400kHz。
2021-08-04 09:34:28.159 I2C:I2C 内部地址大小更改为1字节
2021-08-04 09:34:28.159 I2C:I2C 内部地址更改为00
2021-08-04 09:37:23.231 SMBus:从器件地址更改为0x21
■读取 INT_EVENT1.ReadyForPatch=1b
2021-08-04 09:37:23.239 SMBus 读取0x0021 18字节数据:0x0000:0B 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00…
■Reead mode='PTCH'
2021-08-04 09:38:01.696 SMBus 读取0x0021 5字节数据:0x0000:04 50 54 43 48 00 00 00 00 00 00 00 00 00 00 00 00 .PTCH ..........
■写入数据1:捆绑包大小= 0x3780h、I2C 从机地址= 0x21h、超时值= 0x32h
2021-08-04 09:41:56.665 SMBus 写入0x0021 8字节数据:0x0000:09 00 80 37 00 21 32 00 00 00 00 00 00 00 00 00 00...7..2...
■读取数据1
2021-08-04 09:42:08.440 SMBus 读取0x0021 8字节数据:0x0000:40 00 80 37 00 21 32 00 00 00 00 00 00 00 00 00 00 00 @ 7……2…
■写入 CMD1='PBM'
2021-08-04 09:43:12.215 SMBus 写入0x0021 5字节数据:0x0000:08 50 42 4D 73 00 00 00 00 00 00 00 00 00 00 00 00 .PbM..........
■读取 CMD1=0h
2021-08-04 09:43:24.533 SMBus 读取0x0021 5字节数据:0x0000:04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
μ■读取数据1:PatchStartStatus=0x05h (无效的从器件地址)
2021-08-04 09:43:43.812 SMBus 读取0x0021 8字节数据:0x0000:40 05 80 37 00 21 32 00 00 00 00 00 00 00 00 00 00 00 @ 7……2…
------------------------------------------------------------------
※TPS25750EVM 设置
・移除跳线(J4)以禁用 I2C 闪存引导。
・Ω 输入20V 至 SYS_POWER (TP4)。
我更改了您指出的 Data1寄存器的设置、但结果相同。
描述了 USB2ANY 的日志。
------------------------------------------------------------------
2021-08-11 14:34:22.739调试日志记录已启用
2021-08-11 14:34:22.739 PacketLogging 已禁用
2021-08-11 14:34:22.739性能评测已禁用
2021-08-11 14:34:22.858
2021-08-11 14:34:22.859信息:数据包日志记录已禁用
2021-08-11 14:34:22.859信息:活动日志记录已启用
2021-08-11 14:34:23.559信息:目标电源:3.3V 关闭、5.0V 关闭、Adj 关闭
2021-08-11 14:34:23.656信息:找到1个 USB2ANY 控制器。
2021-08-11 14:34:23.764信息:已成功打开 USB2ANY S/N 2572435119000900!
2021-08-11 14:34:23.779信息:固件版本:2.8.2.0
2021-08-11 14:34:23.840信息:已启用 EVM 检测中断处理程序
2021-08-11 14:34:23.841 I2C:I2C 位速率设置为400kHz。
2021-08-11 14:34:23.855 I2C:I2C 内部地址大小更改为1字节
2021-08-11 14:34:23.856 I2C:I2C 内部地址更改为00
2021-08-11 14:34:30.757 SMBus:从器件地址更改为0x21
■读取 INT_EVENT1.ReadyForPatch=1b
2021-08-11 14:34:30.776 SMBus 读取0x0021 17字节数据:0x0000:0B 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00…
■Reead mode='PTCH'
2021-08-11 14:35:02.152 SMBus 读取0x0021 5字节数据:0x0000:04 49 32 43 20 00 00 00 00 00 00 00 00 00 00 00 .I2C……
★写入数据1:捆绑包大小= 0x3780h、I2C 从机地址= 0x21h、超时值= 0x32h
2021-08-11 14:35:38.385 SMBus 写入0x0021 7字节数据:0x0000:09 80 37 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00..7..2..........
■读取数据1
2021-08-11 14:36:00.650 SMBus 读取0x0021 7字节数据:0x0000:40 80 37 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00 @ 7...2..........
■写入 CMD1='PBM'
2021-08-11 14:36:49.983 SMBus 写入0x0021 5字节数据:0x0000:08 50 42 4D 73 00 00 00 00 00 00 00 00 00 00 00 00 .PbM..........
■读取 CMD1=0h
2021-08-11 14:37:01.894 SMBus 读取0x0021 5字节数据:0x0000:04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
μ■读取数据1:PatchStartStatus=0x05h (无效的从器件地址)
2021-08-11 14:37:16.551 SMBus 读取0x0021 7字节数据:0x0000:40 05 37 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00 @ 7...2..........
------------------------------------------------------------------
感谢您的回答。
但是,问题仍未解决。
不是 Data1寄存器从0x3780h 更改为0x3705h 的原因、而是在写入"PBM"后、输出 Data1寄存器的第一个字节更改为0x05 (无效从地址)
添加到 CMD1寄存器?
如果包大小有问题、输出 Data1寄存器0x04的第一个字节(无效的包大小)是否不是?
通过查看 TPS25750主机接口技术参考手册的"图4-1"和"3.3.1'PBM'启动补丁突发模式下载序列"、我了解到了这一点。
我的理解是错误的吗?
答案是捆绑包的大小很大、所以我将其设置为0x100h、但它变成了0x105h。
这是否意味着捆绑包的大小很小?(手册中没有此类说明。)
描述了 USB2ANY 的日志。
------------------------------------------------------------------
2021-08-17 09:38:54.436调试日志记录已启用
2021-08-17 09:38:54.436 PacketLogging 已禁用
2021-08-17 09:38:54.436分析已禁用
2021-08-17 09:38:54.610
2021-08-17 09:38:54.611信息:数据包日志记录已禁用
2021-08-17 09:38:54.612信息:活动日志记录已启用
2021-08-17 09:38:55.255信息:目标电源:3.3V 关闭、5.0V 关闭、Adj 关闭
2021-08-17 09:38:55.318信息:找到1个 USB2ANY 控制器。
2021-08-17 09:38:55.414信息:已成功打开 USB2ANY S/N 2572435119000900!
2021-08-17 09:38:55.430信息:固件版本:2.8.2.0
2021-08-17 09:38:55.493信息:已启用 EVM 检测中断处理程序
2021-08-17 09:38:55.494 I2C:I2C 位速率设置为400kHz。
2021-08-17 09:38:55.497 I2C:I2C 内部地址大小更改为1字节
2021-08-17 09:38:55.498 I2C:I2C 内部地址更改为00
2021-08-17 09:39:06.915 SMBus:从器件地址更改为0x21
■读取 INT_EVENT1.ReadyForPatch=1b
2021-08-17 09:39:25.892 SMBus 读取0x0021 17字节数据:0x0000:0B 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00…
■Reead mode='PTCH'
2021-08-17 09:39:44.029 SMBus 读取0x0021 5字节数据:0x0000:04 50 54 43 48 00 00 00 00 00 00 00 00 00 00 00 00 .PTCH ..........
★写入数据1:包大小= 0x0100h、I2C 从机地址= 0x21h、超时值= 0x32h
2021-08-17 09:40:04.184 SMBus 写入0x0021 7字节数据:0x0000:09 00 01 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00 00 !2..........
■读取数据1
2021-08-17 09:40:24.371 SMBus 读取0x0021 7字节数据:0x0000:40 00 01 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00 @...!2..........
■写入 CMD1='PBM'
2021-08-17 09:42:12.670 SMBus 写入0x0021 5字节数据:0x0000:08 50 42 4D 73 00 00 00 00 00 00 00 00 00 00 00 00 .PbM..........
■读取 CMD1=0h
2021-08-17 09:42:34.819 SMBus 读取0x0021 5字节数据:0x0000:04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
μ■读取数据1:PatchStartStatus=0x05h (无效的从器件地址)
2021-08-17 09:42:56.831 SMBus 读取0x0021 7字节数据:0x0000:40 05 01 00 21 32 00 00 00 00 00 00 00 00 00 00 00 @...!2..........
------------------------------------------------------------------
基本问题是、我是否可以使用 TPS25750EVM 通过 I2C 总线更新补丁包?
这一进程使过去的几个人感到困惑。
理解它的最简单方法是、在您的情况下、涉及到 CMD1和 Data1寄存器(0x08和0x09)的4CC 命令的所有写入和读取操作都是针对 I2C 地址(0x21)。
您突出显示的读操作应为0x21地址。
您还将突发数据的 I2C 地址配置为与 I2C 地址相同。 这不奏效
写入 Data1:捆绑包大小=0x0100h、I2C 从机地址=0x21h、超时值=0x32h
2021-08-17 09:40:04.184 SMBus 写入0x0021 7字节数据:0x0000:09 00 01 00 21 32 00 00 00 00 00 00 00 00 00 00 00 00 00 !2..........
该地址必须不同于 I2C 地址和 I2C 总线上的任何其他器件。 我通常建议使用0x50、因为它几乎总是用于 EEPROM、并且总线上不可能有 EEPROM。
我建议您将此行更改为:
写入 Data1:捆绑包大小=0x0100h、I2C 从机地址=0x21h、超时值=0x32h
2021-08-17 09:40:04.184 SMBus 写入0x0021 7字节数据:0x0000:09 00 01 00 50 32 00 00 00 00 00 00 00 00 00 00 00 00 00 !2..........
如果执行此操作、则使用0x50地址对低区域二进制文件的 C 数组进行批量写入、然后按照流程图中的其余部分进行操作。
此部分通常会使客户跳闸。
感谢您的回答。
正如您回答的那样、我将其修改为"I2C 从地址= 0x50h"、并且 Data1寄存器变为0x00h (成功的补丁启动)。
USB2ANY 的日志。
------------------------------------------------------------------
2021-08-1809:34:16.024信息:数据包日志记录已禁用
2021-08-1809:34:16.025信息:活动日志记录已启用
2021-08-18 09:34:16.581信息:目标电源:3.3V 关闭、5.0V 关闭、Adj 关闭
2021-08-18 09:34:16.705信息:找到1个 USB2ANY 控制器。
2021-08-18 09:34:16.811信息:已成功打开 USB2ANY S/N 2572435119000900!
2021-08-18 09:34:16.842信息:固件版本:2.8.2.0
2021-08-18 09:34:16.894信息:已启用 EVM 检测中断处理程序
2021-08-18 09:34:16.895 I2C:I2C 位速率设置为400kHz。
2021-08-18 09:34:16.923 I2C:I2C 内部地址大小更改为1字节
2021-08-18 09:34:16.924 I2C:I2C 内部地址更改为00
2021-08-18 09:36:24.233 SMBus:从器件地址更改为0x21
■读取 INT_EVENT1.ReadyForPatch=1b
2021-08-18 09:36:24.251 SMBus 读取0x0021 17字节数据:0x0000:0B 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00…
■Reead mode='PTCH'
2021-08-18 09:37:39.391 SMBus 读取0x0021 5字节数据:0x0000:04 50 54 43 48 00 00 00 00 00 00 00 00 00 00 00 00 .PTCH ..........
★写入数据1:捆绑包大小= 0x3780h、I2C 从机地址= 0x50h、超时值= 0x32h
2021-08-18 09:38:34.931 SMBus 写入0x0021 7字节数据:0x0000:09 80 37 00 50 32 00 00 00 00 00 00 00 00 00 00 00 00..7..P2…
■读取数据1
2021-08-18 09:38:44.650 SMBus 读取0x0021 7字节数据:0x0000:40 80 37 00 50 32 00 00 00 00 00 00 00 00 00 00 00 00 @ 7.p2..........
■写入 CMD1='PBM'
2021-08-18 09:39:11.417 SMBus 写入0x0021 5字节数据:0x0000:08 50 42 4D 73 00 00 00 00 00 00 00 00 00 00 00 00 .PbM..........
■读取 CMD1=0h
2021-08-18 09:39:23.973 SMBus 读取0x0021 5字节数据:0x0000:04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
★读取数据1:PatchStartStatus=0x00h (修补程序启动成功)
2021-08-18 09:39:33.912 SMBus 读取0x0021 7字节数据:0x0000:40 00 00 00 50 32 00 00 00 00 00 00 00 00 00 00 00 00 00 @……P2…
------------------------------------------------------------------
随后对低范围二进制文件的 C 数组进行批量写入也很成功、
我们能够验证模式寄存器是否已更改为"app"。
非常感谢您的支持。