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:AM57X RTOS 编译错误

Guru**** 2561410 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/603109/ccs-am57x-rtos-build-error

工具/软件:Code Composer Studio

您好!

我正在调试 ICSS 活动配置中的 CCS 6.1.3中为 AM57X 构建 EcMasterDemo、但会收到 I2C 未定义参考错误。 当我浏览 I2C API 时,只有函数调用没有函数的定义。 是否有人可以帮助您查找这些函数定义。 我也一直关注 Ecmaster_guide_AM572x.pdf

对`I2CAutoIdleDisable" EcMasterDemo 行452的引用未定义、外部位置:\home\gtbldadm\processor-sdk-rtos-krogoth-build\build-Cortex_1_Arago-tmp-external_linaro-

toolchain\work\am57xx_evm-linux-gnueabi\i2c-LLD-rtos\01.00.04-r0.3.tisdk-INT1\build\ti\drv\i2c\src\v1\I2C_v1.c C/C++问题

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能否确认您的项目是否链接到 CSL 库。 该函数是在 CSL 库中定义的、因此在您的配置中、您需要具有该函数

    /*使用 CSL 软件包*/
    var socType ="am572x";//如果使用的是 AM571x SOC,则使用"am571x"。
    VAR_l = XDC.loadPackage ('ti.CSL');
    Csl.Settings.deviceType = socType; 

    此外、您的项目需要按照 CSL 文档中所述定义 SOC_AM572x

    processors.wiki.ti.com/.../Processor_SDK_RTOS_CSL

    此致、

    Rahul

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

    您好、Rahul、

    感谢您的回答、但我能否知道 CSL 如何与 API 中缺少的 I2C 函数相关。甚至我链接了显示相同错误的 CSL 包。


    未定义对`I2CDCOUNTGE' EcMasterDemo 行216的引用、外部位置:\home\gtbldadm\processor-sdk-rtos-krogoth-build\build-Cortex_1\arago-external_linaro-toolchain\work\am57xx_evm-linux-gnueabi\iDk-ldc-rdc/rd1c\rd1\ch\rts+rd1rd1\c\rts+r1rd1\c\rts+r1r1rd1\c\rts1r1r1r1\c\rts+r1rd1r1r1r

    此致、

    Swarna

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

    SDK 中的 I2C 驱动程序使用 CSL 代码来配置寄存器、因此当包含此驱动程序时、您需要链接到 CSL 库中、因此在编译期间、驱动程序中使用的符号位于 CSL 库中。 您是否还在编译器设置中定义了 SOC?

    如果您看到您观察到的错误、则该错误与"I2CAutoIdleDisable"和`I2CDataCountGet "相关。此函数在源文件 i2c.c 中文件夹路径 pdk_am57xx_1_0_6\packages\ti\cSL\src\IP\i2c 下的 CSL 代码中定义

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

    我们能够重现此问题、并通过将 CSL 加载包移动到 PDK 驱动程序设置的上方来解决此问题:

    /*使用 CSL 软件包*/
    var socType ="am572x";//如果使用的是 AM571x SOC,则使用"am571x"。
    varcsl = xdc.loadPackage ('ti.csl');
    Csl.Settings.deviceType = socType;
    //加载 UART 包*/
    var UART = xdc.loadPackage ('ti.drv.uart');
    
    //加载 I2C 包*/
    var I2C = xdc.loadPackage ('ti.drv.i2c');
    
    var Prusss = xdc.loadv.gpio ('ti.ac.loadv.prv'
    
    );var prv.prv.iptisf.prv.ip包(var.ip.ip.it.prv.it.prv.ac.prv.prv.prv.it.prv.prv.ipt = xv.ipt ('x.ac.prv.
    
    
    /*加载电路板封装并设置电路板名称*/
    var Board = XDC.loadPackage ('ti.board');
    board.Settings.boardName ="idkAM571x"; 

    随附更新的.cfg 文件。

    e2e.ti.com/.../EcMaster.cfg

    希望这对您有所帮助。

    此致、

    Rahul

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

    此致、
    Swarna