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.

[参考译文] TMS320F28388D:为 CPU2分配外设

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/901157/tms320f28388d-assigning-peripherals-to-cpu2

器件型号:TMS320F28388D

您好!  

我将学习有关双 CPU FSI 的教程。 它具有以下指令:

//将 FSIRxB、FSIRxC、FSIRxD 模块的所有权分配给 CPU2。
// FSIRxB -实例18;FSIRxC -实例19;FSIRxD -实例20
//
SYSCTL_selectCPUForPeripheral (SYSCTL_CPUSEL16_FSI、18、SYSCTL_CPUSEL_CPU2);

这应将其中一个 FSU 设置为 CPU2。 注释指出、代码中的"18"定义了所述外设的"实例"。 但是、我无法找到任何有助于我了解原因的文档。

最后、我想为 CPU 2分配一个 SCI 外设。 如何使用"sysctl_selectCPUForPeripheral"例程来完成此操作、以及如何知道我将使用什么"实例"???

谢谢、  

David

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

    您好!

    有关外设实例的说明、请参阅 API 注释。 PFB 参考说明。 基本上、外设实例在那里定义了 CPUSELx 寄存器中每个外设实例的位位置。 例如、对于 SCIA、外设实例值将为1。

    //! peripheralInst 参数是实例编号、例如
    //! 1表示 EPWM1、2表示 EPWM2、依字母顺序命名的实例
    //! (而不是数字)需要遵守以下公约。
    //! 1表示 A (SPI_A)、2表示 B (SPI_B)、3表示 C (SPI_C)、依此类推...
    //! 对于具有不同 RX 和 TX 实例的外设、这些实例被命名
    为//! 对于字母、需要遵循以下公约。
    //! 1表示 TX_A (FSITX_A)、2表示 TX_B (FSITX_B)、以此类推。。
    //! 17表示 RX_A (FSIRX_A)、18表示 RX_B (FSIRX_B)、以此类推。。。 

    谢谢

    Vasudha

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

    谢谢、  

    我实际上阅读了您发表的评论。  

    我对编号方案的基本逻辑感兴趣。 这似乎是任意的。 但是、在进一步检查后、我看到 RX 的基址寄存器为16+1。 两权的关系是我第一次错过的。

    它(有点)现在是有意义的。

    此致、

    David