主题中讨论的其他器件:SK-TDA4VM、、TDA4VM
工具与软件:
我参考 SK-TDA4VM 制作了定制电路板设计。
问题是 PD 控制器未为电路板提供电源。 它会给您一段时间、然后就会消失。 如果我在 Vmain 上提供12v 电压、则表示该电路板工作正常。

定制电路板设计与 SK-TDA4VM 完全相同、但外设有所减少。
那么、我是否需要向 EEPROM 写入一些默认配置?
如果是、应该编写什么以及使用什么工具?
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.
工具与软件:
我参考 SK-TDA4VM 制作了定制电路板设计。
问题是 PD 控制器未为电路板提供电源。 它会给您一段时间、然后就会消失。 如果我在 Vmain 上提供12v 电压、则表示该电路板工作正常。

定制电路板设计与 SK-TDA4VM 完全相同、但外设有所减少。
那么、我是否需要向 EEPROM 写入一些默认配置?
如果是、应该编写什么以及使用什么工具?
尊敬的 Sathiya:
EEPROM 中是否存储了任何 PD 固件、或者在启动时是否对 PD 进行了任何修补? PD 控制器需要在启动时加载固件才能正常运行、并正确启用受电路径。 请使用下面适用于 TPS25750的 Web GUI 来创建配置并导出 PD 固件二进制文件。
https://dev.ti.com/gallery/view/USBPD/TPS25750_Application_Customization_Tool ver/7.0.4/
要将固件加载到 PD、请 首先将此固件存储在 EEPROM 中、PD 将在启动时从 EEPROM 获取固件。 您可以使用 I2C 加载到 EEPROM。 我们使用的一个工具是 Aardvark SPI/I2C 主机适配器、但是任何 I2C 控制器都应该可以使用。
此致!
Alex
尊敬的 Sathiya:
您可以直接使用 EEPROM 的 I2C 线路来加载固件。 启动时、PD 控制器将使用连接到 EEPROM 的 I2C 的 I2Cm (控制器模块)从 EEPROM 加载固件。 必须发生这种情况、或者必须在启动时将固件修补到 PD。
另外、请检查 ADCIN 引脚上的电阻分压器。上拉电阻器显示 DNA、因此我不知道这些电阻器的值是什么。 ADCIN 配置错误也可能导致 PD 控制器使用默认配置而不是加载的固件。
此致!
Alex
您好、Alex、
未刷写 PD 控制器的 EEPROM。 我刷写了。 然后 PD 工作。
I2C 闪存命令:
使用 另一个 Linux 系统(SK-TDA4VM 电路板、任何其他具有开放 I2C 的电路板)
要读取0x50处的 EEPROM:(一次最多可读取8192个字节)
i2ctransfer -y <BUS> w<LENGTH>@<EEPROM_ADDRESS> <READ_ADDRESS_2BYTE:MSB> <READ_ADDRESS_2BYTE:LSB> r<READ_LENGTH=8192 maximum> Eg: # First 8192 Bytes i2ctransfer -y 5 w2@0x50 0x00 0x00 r8192 # Next 8192 Bytes i2ctransfer -y 5 w2@0x50 0x20 0x00 r8192
要在0x50处写入 EEPROM:(一次最多可写入64个字节)
i2ctransfer -y <BUS> w<WRITE_ADDRESS_LENGTH + WRITE_LENGTH>@<EEPROM_ADDRESS> <WRITE_ADDRESS_2BYTE:MSB> <WRITE_ADDRESS_2BYTE:LSB> <BYTE:1> <BYTE:2> ..... <BYTE:n> Eg: # First 64 Bytes i2ctransfer -y 5 w66@0x50 0x00 0x00 0xab 0xcd 0xef........ # Second 64 Bytes i2ctransfer -y 5 w66@0x50 0x00 0x40 0xab 0xcd 0xef........