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.

[参考译文] TMS320C6748:stareware SPI_EDMA 示例不能正常工作

Guru**** 2595770 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/638951/tms320c6748-stareware-spi_edma-example-does-not-work-normally

器件型号:TMS320C6748

1.我使用 ti\C6748_StarterWare_1_20_04_01\examples\evmC6748\SPI  示例。

2.我使用 ti\C6748_StarterWare_1_20_04_01\examples\evmC6748\SPI_EDMA   示例。

我使用示波器来监控 SPI_CLK 和 SPI_SIMO 信号。

TX_DATA={0x00、0xFF、0x00、0xFF、0x00、0xFF、0x00、0xFF、0x00、0xFF、0x00、0xFF};

我发现"SPI_EDMA"示例不能像放置在 TX_DATA 缓冲器中的内容那样正确发送 SIMO 信号、而"SPI"示例工作正常。

是否有人使用了"SPI_EDMA"示例?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已将您的疑问转发给软件专家。 他们的反馈应发布在此处。

    BR
    Tsvetolin Shulev
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、有人使用了 SPI_EDMA 示例吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    几年前我尝试过 SPI_EDMA 示例。 但它在 LCDK 上。 不是 EVM。 我不清楚地记得代码似乎运行不一致。 有时它会起作用。 有时它会挂起。 我认为这是因为代码中假设一个 DMA 中断同时发生了 Tx 和 Rx DMA 完成。 代码将关闭 Tx 和 Rx 完成时的通用 SPI 中断。 有时 Tx 和 Rx 发生在单独的 DMA 中断上。 也没有首先发生的担保。 这意味着第二个中断被第一个中断处理程序屏蔽。 第二个中断永远不会发生。 理论上、SPI Tx 和 Rx 应正常完成、但主线路环路将挂起、等待第二个中断发生。 我猜禁用中断可能会导致 DMA 停止。 您可能会丢失最后一个字节。 您看到了什么错误?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我尝试发送0xFF、我看到 SPIDAT1寄存器写入0xFF 正确。 但使用示波器、我发现 MISO 0x35。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    TI 能否确认 EDMA_SPI 示例正确?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    弗兰克、

    TI 目前仅支持此产品的处理器 SDK RTOS SDK 基准开发。 我们有一个支持 EDMA 使用的 SPI LLD 驱动程序、因此如果这是新开发、我们建议您考虑迁移到 SDK 基准。

    Starterware 示例不再进行主动维护或开发、仅供参考。 这些示例之前已在 EVM 和 LCDK 上通过 CCSv5验证、因此已知它们可以正常工作。 目前、开发人员无法再对 EDMA_SPI 示例进行评论。

    我们可以尝试帮助您了解 SPI 的行为、但需要更好地了解您的设置。 您是否在 TI 硬件上进行了测试。 您能描述您的测试设置您连接到什么 SPI 从器件吗? 以多快的速度运行 SPI 时钟。 此外、在此处提供一些示波器截图可能有助于更好地查看问题。

    此致、
    Rahul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    严格地说、MISO (TI 术语中的 SOMI)是输入、因为 SPI_EDMA 使用主模式。 从其他帖子中、您意味着您要将 C6748置于从模式。 您对该示例进行了哪些其他更改? 您是否对非 DMA 示例进行了相同的更改?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Norman Wong、

    非常感谢您的回复。 我现在不处理 SPI_EDMA 示例。 我现在使用的 SPI 和 EMDA 在4MHz 下工作正常。
    但是、当我将 CLK 更改为10MHz 时、我会面临另一个问题。 我在此处开始发布新帖子:
    e2e.ti.com/.../646248
    希望您能有自己的爱。
    谢谢你。
    弗兰克