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.

[参考译文] CCS/LAUNCHXL2-RM46:MIBSPI1至 MIBSPI3传输问题

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/570605/ccs-launchxl2-rm46-mibspi1-to-mibspi3-transfer-issue

器件型号:LAUNCHXL2-RM46
主题中讨论的其他器件:HALCOGEN

工具/软件:Code Composer Studio

我不熟悉这一点、因此需要了解以下内容

1.我正在使用 HALCOGEN、我在其中执行了以下操作

创建了一个新项目

仅为 MIBSPI1和 MIBSP3启用驱动程序

PINMUX >>所选 MIBSPI1和 MIBSPI3

MIBSPI1TRANSFER GROU>>>选择的 CS_NONE (我在3引脚模式下使用的是 MIBSPI)

MIBSPI3GLOBAL_>>未检查的 MASTERMODE 和内部时钟(从机模式下的 MIBSPI3)

MIBSPI3PORT>> SIMO 未检查的 DIR;CLK 未检查的 DIR

2.我正在使用 CCS 并编写了以下代码以在 A 中传输数据、并使用 MIBSPI3在 B 中接收数据、但我无法接收数据

#include "mibspi.h"


uint16 a[8]={1、2、4、6、10、12、15、16};
uint16 b[8]={0};


int main (空)

/*用户代码开始(3)*/
   mibspiInit();
   mibspiSetData (mibspiREG1、0、A);
   mibspiTransfer (mibspiREG1、0);
   mibspiGetData (mibspiREG3、0、b);

感谢您的帮助

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

    您是否了解了提供用于主从传输的 HalcogGen 示例。 它位于

    C:\ti\Hercules \HALCoGen\v04.06.00\examples\RM46x\example_SPI_Master_Slave.c

    尽管它使用不同的 SPI、但它仍然应该作为一个很好的示例、并且应该能够轻松移植到 SPI1和 SPI3。 此外、由于您不使用 SPI 的缓冲功能(MIB 部分)、因此您只能使用 SPI1和 SPI3选项卡以及相关的 SPI 驱动程序、以便在将示例移植到 SPI1和 SPI3时更轻松地使用。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Chuck:

    我将在项目中使用多缓冲器部件、但首先我想启动并运行该部件、然后我将在稍后进行小调整。

    因此、如果您能帮我解决这个问题、我将不胜感激。

    此外、关于您提到的 Hercules 示例、我在这之前曾尝试过、也无法接收其中的数据。 请告诉我。

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

    您能否将您的项目或简化版本压缩到 MIBSPI 部分并将其发布到此线程中、以便我可以更详细地了解它、并可能在我的工作台上对其进行测试?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../2816.mibspicheck.zipHi、

    我将在此处发送项目的 Zip 文件。 如果您发现有问题、请告诉我。

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

    请帮助我们完成此操作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Rohan、您是否连接了两条 SPI 总线?
    我将尝试在 RM46上进行复制...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rohan、

    很抱歉耽误你的时间。 今天我将介绍这一点。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    罗汉

    我已经了解了您的项目。 我注意到、在 Halcogen 设置中、MibSPI1 CS0未被配置为一个 GIO、这不应该是太关键、但是如果按照指令不在功能模式中使用、你应该被配置为 GIO。

    主要观察结果是您在 main 中的设置不正确。 您永远不会初始化数据格式寄存器、我认为调用并不完全正确。 请查看帮助下 Halcogen 示例库中提供的 SPI 主从实现示例。 尽管您使用的是 MibSPI、但调用和排序应该是相同的、因为您在 SPI 兼容模式下使用的是 MibSPI (没有缓冲 SPI 功能)。 请注意、SPI1和 SPI3的驱动器抽头在 Halcogen 中使用与 MibSPI1和 MibSPI3相同的模块执行相同的操作、只是在 SPI 兼容模式下(无缓冲 SPI)。