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.

[参考译文] TMS320F28379D:有关位置管理器库中 TxEn 行的问题、即 BiSS-C、EnDat 和 Tamagawa

Guru**** 2589280 points
Other Parts Discussed in Thread: TMS320F28379D, CONTROLSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/663219/tms320f28379d-question-regarding-txen-line-in-position-manager-library-i-e-biss-c-endat-and-tamagawa

器件型号:TMS320F28379D
Thread 中讨论的其他器件: controlSUITE

我对 TMS320F28379D 的位置管理器(PM)库有疑问。

  

对于 BiSS-C 和 T-Format、映射到 GPIO34的 TxEn 线路是可配置的、即用户可以选择任何其他具有 OUTPUTXBAR1多路复用器选项的 GPIO。

 不过、对于 EnDAT 2.2、相同的 TxEn 线是 GPIO34专用的、不可配置? 是这样的。

2.我是否可以为 EnDat 2.2 PM 库将 GPIO2 (而不是 GPIO34)分配为 OUTPUTXBAR1?

请参阅以下文档:

  EnDat 2.2:    sprui35.pdf  ->请参阅第6页的图2和第33页的表6

  BiSS-C:          sprui37.pdf  ->请参阅第6页的图3和第18页的表9

  T-Format:    sprui71.pdf  ->请参阅第6页的图2和第20页的表6

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

    1.正确。
    2.对于 BiSS-C 和 T-format,可以为 EnDat22选择任何不适用的 IO -如文档中指定的那样。

    您是否正在尝试实现多个接口?

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

    是的、由于硬件方面的原因、它们非常相似。 返回 PinMux!
    一项建议:
    是否可以从 PM_endat22_lib.lib 中删除“F2837xD_GlobalDefableVarios.c”文件,因为这会导致多个重新定义链接器错误?
    如果您将“F2837xD_GlobalVariableDefs.c”作为自定义 CCS 项目的一部分,或者在项目.c/.cp 文件之一中定义了 DATA_SECTION,并尝试链接 PM_endat22_lib.lib,链接器.cmd 文件会抛出多个错误。 这是因为有多个定义
    #pragma DATA_SECTION ("SpibRegsFile")
    volatile struct spi_regs SpibRegs;

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

    尊敬的 PJ:

    您是否提到了库随附的示例项目?
    如果没有、请查看  
    C:\ti\controlSUITE\libs\app_libs\position_manager\v01_02_00_00\endat22\examples
    因为这是一个预编译的.lib、我们不会发布源代码-您将无法在您的末尾进行更改

    Bharathi。

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

    我查看了构建正常的 IDK 的 endat2.2示例。

    但是、我创建了具有.cpp 文件和定义的自定义工程
    #pragma DATA_SECTION ("SpicRegsFile")
    volatile struct spi_regs SpicRegs;

    当我尝试使用 PM_endat22_lib.lib 构建我的定制项目时、我会针对每个 xxxRegsFile (即)获取大量链接器错误

    "C:/myendat22project/endat.cmd",第418行:错误#10099-D:
    程序将不能放入可用的内存中。 使用运行放置
    "SpicRegsFile"大小为0x20页1的对齐/分块失败。
    可用存储器范围:
    *** 大小:0x10 未使用:0x10 最大孔数:0x10


    我可以通过在 endat.cmd 文件中包含以下内容来解决该错误

    mysection{
    PM_endat22_lib.lib (...、SpicRegsFile、...
    )
    }>重置页=0,type=DSECT


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

    当我构建自定义项目时、myendat22project .map 文件显示"F2837xD_GlobalVariableDefs.obj"包含在 PM_endat22_lib.lib 中


    模块 代码 ro 数据 RW 数据
    ---- ------ ----
    ./EnDat22/PM_endat22_lib.lib
    F2837xD_GlobalVariableDefs_CLB.obj 0 0 2624.
    clb_config.obj 2205 0 0
    Pm_endat22_Source.obj 1846 0 0
    F2837xD_GlobalVariableDefs.obj 0 0 983. <---------- 包含
    crc.obj 402. 0 0
    F2837xD_CLB_drivers.obj 214. 0 24
    +-++---------------- +--- +--- +--- +
    总计: 4667 0 3631.


    但是、当我构建 IDK 项目时、即 PM_endat22_BasicPosAcc_DelComp.map 文件显示"F2837xD_GlobalVariableDefs.obj"不包含在 PM_endat22_lib.lib 中、这说明了为什么 IDK 示例构建正常而不出现任何错误。

    模块 代码 ro 数据 RW 数据
    ---- ------ ----
    C:/TI/controlSUITE/libs/app_libs/position_manager/v01_02_00_00/endat22/Float/lib/PM_endat22_Lib.lib
    F2837xD_GlobalVariableDefs_CLB.obj 0 0 2624.
    clb_config.obj 2205 0 0
    Pm_endat22_Source.obj 1846 0 0
    crc.obj 402 0 0
    F2837xD_CLB_drivers.obj 214 0 24
    +-++---------------- +--- +--- +--- +
    总计: 4667 0 2648.

    希望这对您有所帮助

    -PJ