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.

[参考译文] TMS320F28P650DK:在 SCI 模式下配置 LIN 失败时的 SYS 配置问题

Guru**** 2427060 points
Other Parts Discussed in Thread: SYSCONFIG, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1544385/tms320f28p650dk-sys-config-issue-where-configuring-lin-in-sci-mode-fails

器件型号:TMS320F28P650DK
Thread 中讨论的其他器件:SysConfigC2000WARE

工具/软件:

如果我通过 SysConfig (1.24.0) 在 LIN 模式下配置 LIN 外设、可以正常工作、但当我尝试在 UART(SCI 模式)下配置 LIN 外设时。 我收到一条错误消息、告诉我它无法读取未定义的属性(读取“peripheralName")“)

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

    错误与 C2000Ware_v5_05_00_00\driverlib\.meta\lin.js 有关

    当前的解决方案是替换第 842 行的代码。 将代码 从

    linCLK = parseInt(parseFloat((clocktree[inst.lin.$solution.peripheralName + "CLK"].in) * 1000000))
    

    收件人:

    linCLK = parseInt(parseFloat((clocktree["LINBCLK"].in) * 1000000))

    错误消失、代码编译。

    但是、现在设置 LINA 波特率时、无论时钟树 GUI 中的 LINACLKDIV 设置如何、LINACLK 似乎始终为 100MHz。

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

    尊敬的 Daniel:  

    让我与 LIN 专家联系以获得更好的反馈。

    谢谢

    Aswin

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

    尊敬的 Daniel:

    我使用相同版本的 C2000Ware 和 SysConfig 在 SCI 模式下配置了 LIN、无法重新创建您遇到的错误。 您能否附加.syscfg 文件、以便我可以使用相同的方式进行检查?

    您已对所有 LIN 实例进行硬编码以选择 LINB 时钟、因此不正确。

    此致、

    Arnav

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

    谢谢 Arnav、

    我附上了显示相同错误的空 driverlib 示例工程的.syscfg 文件中的代码。  

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "F28P65x" --part "F28P65x_169NMR" --package "169NMR" --context "CPU1" --product "C2000WARE@5.05.00.00"
     * @v2CliArgs --device "TMS320F28P650DK" --package "169NMR" --variant "TMS320F28P650DK9" --context "CPU1" --product "C2000WARE@5.05.00.00"
     * @versions {"tool":"1.24.0+4110"}
     */
    
    /**
     * Import the modules used in this configuration.
     */
    const lin  = scripting.addModule("/driverlib/lin.js", {}, false);
    const lin1 = lin.addInstance();
    
    /**
     * Write custom configuration values to the imported modules.
     */
    const divider8       = system.clockTree["EPWMCLKDIV"];
    divider8.divideValue = 1;
    
    const divider9       = system.clockTree["LINACLKDIV"];
    divider9.divideValue = 2;
    
    lin1.$name                 = "myLIN0";
    lin1.opMode                = "SCI";
    lin1.enableMultibuffer     = false;
    lin1.lin.$assign           = "LINA";
    lin1.lin.lin_rxPin.$assign = "GPIO15";
    lin1.lin.lin_txPin.$assign = "GPIO14";
    lin1.rxQual.$name          = "myGPIOQUAL0";
    lin1.txQual.$name          = "myGPIOQUAL1";
    

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

    尊敬的 Daniel:

    感谢.syscfg 文件。  这源于 SysConfig 元数据中的一个小错误。 请在下面找到随附的更新的元数据文件。 您可以粘贴 /driverlib 直接放入 C2000Ware 根目录中、并在出现提示时选择“Replace All files“。

    e2e.ti.com/.../C2000Ware_5F00_update.zip

    此问题将在 C2000Ware 的即将发布版本中得到修复。

     此致、

    Arnav

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

    嗨、Arnav、

    这已解决问题。 感谢您的关注。

    谢谢、

    Daniel