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.

[参考译文] AM6421:将 ADS131M08 连接到 Am6421、MCSPI 模块的虚拟响应

Guru**** 2826755 points

Other Parts Discussed in Thread: ADS131M04, AM6421, ADS131M08, SYSCONFIG

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1625089/am6421-interfacing-ads131m08-to-am6421-dummy-response-from-mcspi-module

器件型号: AM6421
Thread 中讨论的其他器件: ADS131M04ADS131M08、SysConfig

您好、

我将 ADS131M04 与 AM6421 连接、这里代码运行正常。 与 ADS131M08 所做的更改极少(如下所述)的代码相同、但无法获得 ADC 的预期响应。

对于 M04 和 M08、我的所有 SPI 模块和其他 GPIO 都完全相同

为 M08 修改了代码

  1. 通道数更改为 8、因此器件 ID 更改为 0x28  

如故障排除步骤所示:

  1. 我已经检查了 SCLK 引脚、频率符合预期
  2. ADS 电路板的振荡器频率符合预期。

初始化时、我得到以下帧:

注意:无法上传任何图像

但当我发送 wakeup 或 STANDBY 命令时、响应不符合预期

迁移到 ADS131M08 时缺少的任何内容或需要修改的任何其他更改?  

此致

Shraddha Naik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    请参阅  ADS131M04 和 ADS131M08 的数据表、并检查是否存在差异(如果有)。

    如果处理了此问题、则 xxx08 ADS 应该不会有任何问题。

    我也会让您检查 SysConfig 中的 MCSPI 连接、请参阅以下内容:  【常见问题解答】SK-AM64B:MCSPI 集成指南 

    检查是否连接了复位引脚以及其他硬件连接等情况。

    如果以上都不适合您、请分享用于连接 ADS 两个变体的代码。

    BR Vaibhav

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我将我们的定制电路板与 ADS131M04 连接、代码运行正常。 与 ADS131M08 连接的同一定制板(通道数更改为 8)我可以读取寄存器、但在此处写入单个寄存器不起作用。 这里会出现什么问题?

    使用 0xFF06 写入时钟寄存器

    写入寄存器的响应

    读回时钟寄存器

    读取寄存器的响应:它读取默认值 0xFF0E

    对于 M08、我们需要发送 10 个字、因此 我还尝试将 dataTx 和 dataRx 缓冲区更改为 30 字节(10 个字)、但要生成相同的响应。

    此致、

    Shraddha

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果我读取 STATUS 寄存器、会得到默认值

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的更新。

    我相信 Dale 正在查看相同的内容、但除此之外、我还没有收到代码配置。 我需要 main.c 或 application.c 文件中的 MCSPI 配置。

    看起来这主要是硬件问题、但为了排除软件配置、我希望您分享 MCSPI 参数的定义方式。 在代码中、这实际上是后面的参数 MCSPI_Transaction_init 及以前 MCSPI_TRANSFER 调用。

    我很期待这件事。

    此致、

    Vaibhav

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vaibhav:

    目前、我使用 TI 的 API 调用进行 MCSPI 传输、我知道我们需要优化代码、还需要将数据大小设置为 24 位、因为之前使用 ADS131M04 对该代码进行了 8 位数据大小测试、我之后没有对 SPI 配置进行任何更改。

    这是我的发送命令代码片段

    作为 ADC 配置、

    我只需将 ADC SYNC/REST 引脚切换 2ms、然后尝试读取寄存器并写入时钟和 MODE 寄存器。 我需要做的任何其他配置?

    此致

    Shraddha

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vaibhav:

    需要更改任何 SPI 配置?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我正在查看您分享的更改。

    有时、请允许我比较 M04 和 M08 数据表。

    谢谢、

    Vaibhav

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    首先、您可以检查以下各项。

    复位 2ms 后、您是否还在等待另外 10 微秒? 请确保执行此操作、因为这确保了 tREGACQ。 这意味着寄存器是稳定的并可以进行 SPI 通信。

    这是我在 ADS 数据表中读到的复位信息:

    尽管 tREGACQ 的值为 5 微秒(如数据表中所述)、但在复位后代码中留出 10 微秒的裕度。

    此外、您是否正在读取 ID 寄存器以确认 M08 型号的 ID 0x2800? 请告诉我。 这将确保正确建立与 ADSxxM08 的连接。

    期待您的答复。

    此致、

    Vaibhav

    此致、

    Vaibhav