工具与软件:
由于该器件上的 SPI 通信配置选项太多、因此没有可保证工作的帧模式。
您能告诉我、从器件读取状态寄存器时、该 SPI 序列是否正确、为什么它可能无法在 DOUT 线上生成任何响应?
谢谢。
Valeriy M.
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.
您好、Valeriy:
[报价 userid="577072" url="~/support/data-converters-group/data-converters/f/data-converters-forum/1431288/amc131m03-spi-communication-with-the-device/5492298 #5492298"]从数据表的图8-18中、似乎应该在 CLKIN 信号启动之前完成 SPI 配置。 在本例中、时钟在加电后很快启动、但稍后会明显尝试 SPI 通信。 这可能是启动 SPI 通信时遇到的问题吗?[/QUOT]建议在发送 CLKIN 信号之前配置器件、但它应该仍然可以在已存在 CLKIN 的情况下工作。
我已经取得了一些进展、现在从器件恢复了 SPI 通信。
您做了哪些更改来从器件获得 DOUT?
需要注意的一点是、每个命令应该至少发送5个字:
答案似乎是正确的。 您是否还可以通过读取和读取状态寄存器来验证寄存器?
DCDC_OUT 电压是否发生变化? 此外、 LDO (U32)的拉电流有多大? 您能否禁用或取消安装该器件?
谢谢。
Saleh,
建议在发送 CLKIN 信号之前先配置器件、但仍应使用已存在的 CLKIN。
您是对的。 我延迟了 CLKIN 信号、没有区别。
您为了从器件获得 DOUT 做了哪些更改? [报价]我认为是焊点或连接不佳。 我取下所有的探头、然后小心地将它们重新连接、然后 DOUT 信号就会出现。
需要注意的一点是每条命令应至少发送5个字:在我的 WREG 命令中发现了一个错误。 CRC (禁用时为零)应遵循命令、我在末尾将其设置为零。 以下是 上电后我的 MODE、时钟和增益寄存器配置:
我得到0x4083作为响应、并发送命令以启用直流/直流:
然后得到响应0x5880似乎正确的响应、但输出中没有 CRC。 接下来、我要发送0xB880以请求状态:
因为您可以看到 DCDC_out 或 HLDO_out 没有变化。 下一个 CLKIN 启用、我发送 null 命令。 状态返回为0x0100、响应中再次没有 CRC:
之后、我会得到0x0740来响应每个空请求:
DCDC_out 电压是否完全改变?从截图中可以看出、在上电序列的任何时间点甚至都没有尝试启用 DCDC_OUT。
在开始从电路板上移除器件以验证电流消耗之前、我想确认是否发送了正确的命令。
谢谢!
[/quote]
您好、Valeriy:
对于 WRITE 命令、器件需要进行 n+1写入、其中 n 是您在 WRITE 命令末尾放置的数字。
在第一个 WREG 中、您有(0x6083)写入从地址0x1开始的4个寄存器。
地址0x1是状态寄存器、为只读。 在 WREG 命令之后的数据值中、字长最终更改为32位。 这就是为什么当您回读 DCDC_CTRL 寄存器时、您得到的是0x01而不是0x0001。
您是否能够开始写入 DCDC_EN? ({0x788000、0x000100、0x000000、0x000000、0x000000})
另外、 第一次写入时、您要尝试配置什么?
谢谢。
Saleh,
您第一次写时要配置什么
我将配置模式用于24位 SPI、具有高分辨率、过采样率256的超时和时钟、并启用所有3个通道。 我这样做主要是为了检查通信、但也因为我认为应该先完成配置、然后才能启用直流/直流转换器。 感谢您检查我的命令。 我显然是不正确地添加了位。 我认为应该是0x610200 0x011000 0x0070E00 0x000000 0x000000、以配置模式、时钟和增益寄存器。 它将有助于在数据表中的某个位置提供命令计算示例、以验证对文档的理解程度。
您能否开始编写 DCDC_EN? ({0x788000、0x000100、0x000000、0x000000、0x000000})
我不知道在没有先配置器件的情况下可以执行该操作。 遗憾的是、即使我在复位后立即发送上述命令、在 DCDC_OUT 线路上也没有看到任何变化:
还有其他可以尝试的东西吗?
您好、Valeriy:
我不知道在没有先配置设备的情况下才能进行此操作。 很遗憾、即使我在复位后立即发送上述命令、我也看不到 DCDC_out 行有任何变化:[/QUOT]在启用直流/直流稳压器之前需要配置的最重要设置是 CLOCK_DIV 和 DCDC_FREQ。 如果这些配置不正确、直流/直流稳压器仍应开启、但电压可能不正确、并且可能存在一些其他性能/稳定性问题。
在此写入期间运行的 CLKIN 信号、因为直流/直流转换器不会向器件输出任何内容、直到有 CLKIN 信号为止。
您能否在写入后通过读取和状态寄存器检查来验证 DCDC_EN 写入?
TI.com 上提供了一些与 AMC131M03连接的计量代码。 您可以尝试查看该代码的配置步骤。
您可以在 MSPM0 SDK 中找到计量代码。 此代码可通过 Code Composer Studio 访问、该 Studio 可从 TI.com 下载。 您也可以浏览在线开发工具并访问它。
https://dev.ti.com/tirex/explore/node?node=A__ACu5kpnBrrCcedjH3XI-PQ__MSPM0-SDK__a3PaaoK__LATEST
谢谢。
Saleh,
启用直流/直流转换器前需要配置的最重要设置是 CLOCK_DIV 和 DCDC_FREQ。
CLOCK_DIV 设置不正确并完成了所有的差异。 我从 DCDC_out 处获得3V 电压!
几个观察结果:表8-3中的 DCDC_FREQ 设置与表8-37中的设置不完全匹配。 不确定哪一个是正确的。
此外、您的陈述似乎不正确:
如果配置不正确、直流/直流转换器仍应打开、但电压可能不正确、并且可能还有一些其他性能/稳定性问题。 [报价]当 DCDC_CTL 设置为0x0001时、我的 DCDC_OUT 信号根本不会移动:
但是、DCDC_OUT 在 DCDC_CTL 设置为0x0801并应用 CLKIN 信号时按预期工作:
不管怎样、该部件现在正在工作。 感谢你的帮助。