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.

[参考译文] AM620-Q1:AM62x 请建议针对 MCSPI 使用相关的 CCS 演示代码

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1592078/am620-q1-am62x-please-suggest-relevant-ccs-demo-code-for-mcspi

器件型号: AM620-Q1

尊敬的 TI 技术支持团队:  

我们已提供基于 Am62x EVM 的定制板。   

我们已将两个基于 SPI 的 ADC (AD7927) 连接到 Am62x(SPI0 接口)。

我们希望每 500ms 读取一次 ADC 数据。  

Plesae 建议了一些与 CCS 相关的演示代码、因此我们可以在应用中使用该代码、只需很少的更改和工作量。  

此致、

Tejas Patel

 

 

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

    您好、

    假设您使用的是 MCU+SDK、我先介绍了如何配置 MCSPI。

    请参阅本指南以了解不同的可配置参数:  【常见问题解答】SK-AM64B:MCSPI 集成指南 

    完成此操作后、您可以参考现有的应用/示例作为我们 SDK 产品的一部分。 此目录可在以下目录下找到:mcu_sdk_install_path/examples/drivers/mcspi

    这应该让您了解如何针对特定用例配置 MCSPI 并帮助您继续。

    此致、

    Vaibhav

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

    您好、  

    当前实现和查询

    我们使用的是 mcspi_performance_8bit.c演示代码作为我们要求的参考。

    设置:

    • 两个基于 SPI 的 ADC ( AD7927 ) 已连接至 AM62x 连接平台 SPI0 接口
    • 片选 (CS):
      • CS0 →Ω ADC0
      • CS1 →Ω ADC1

    实现详细信息:

    • 根据参考代码、我们创建了两个单独的初始化函数:
      • SPIADC1_Init()对于 ADC1
      • SPIADC2_Init()用于 ADC2
    • 要读取数据、请执行以下操作:
      • 对于 ADC1、→使用初始化、SPIADC1_Init()然后读取。
      • 对于 ADC2→使用初始化、SPIADC2_Init()然后读取。

    发现的问题:

    • 当我们按顺序初始化 ADC1 和 ADC2 时、只有最后初始化的 ADC 才能正常工作。

    查询:

    • 是否可以仅初始化 SPI 接口一次、然后根据需要从 ADC1 和 ADC2 读取数据、而不每次都重新初始化?
    • 请引导我们了解最佳方法。

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

    尊敬的 Tejas:

    [引述 userid=“645340" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1592078/am620-q1-am62x-please-suggest-relevant-ccs-demo-code-for-mcspi/6134234

    查询:

    • 是否可以仅初始化 SPI 接口一次、然后根据需要从 ADC1 和 ADC2 读取数据、而不每次都重新初始化?
    • 请引导我们了解最佳方法。
    [/报价]

    ADC 需要向自身发送某些命令才能实现初始化? 如果是、您将发送什么来发送给 ADC 以进行相同的初始化?

    我的问题是如何初始化 ADC。 与我分享一个 ADC init API 的代码片段。

    此致、

    Vaibhav

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

    您好、

    我已经阅读过代码。

    正确的流程应为:

    1. 将 ADC1 和 ADC2 初始化为一次。
    2. 读取 ADC1
      读取 ADC2
      读取 ADC1
      等等…
    3. 无需 Re 初始化。

    请注意以下事项。

    确保当 ADC1 和 ADC2 被初始化时、在与特定 ADC 通信时、只能将 ADC 的 CS 拉至低电平。

    另外、确保您未触摸 ADC 的复位线、因为这可能会使 ADC 复位并使其退出“顺序转换模式“。

    请注意、一旦 ADC 设置为 “顺序转换模式“、除非发出复位信号/除非 ADC 数据表中提到了其他行为、否则 ADC 会一直保持这种状态。

    此致、

    Vaibhav