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/TMS570LS3137:如何为 halcogen 中的 CAN 端口1配置 tms570ls3137的 Gio 引脚(引脚编号89和90)并在 CCS 中编写代码?

Guru**** 2535750 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/747934/ccs-tms570ls3137-how-to-configure-gio-pins-pin-no-89-and-90-of-tms570ls3137-for-can-port-1-in-halcogen-and-write-the-code-in-ccs

器件型号:TMS570LS3137
主题中讨论的其他器件:HALCOGEN

工具/软件:Code Composer Studio

我是一个初学者,不知道从哪里开始。 如有可能、请分享样片。 以及 TMS570数据表中提到的144个引脚、 但在 halcogen 中、我没有观察到如何启动  或利用这些引脚以使用 CAN 或 SPI 等指定功能分配这些引脚的任何规定。是否有任何此类引脚配置规定?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    通过以下链接、您可以下载数据表和技术参考手册: www.ti.com/.../TMS570LS3137

    您可以使用 HALCoGen 启动新项目。 启动新项目时、必须选择特定 MCU。 然后、您可以根据您的特定需求配置模块。 例如、如果要使用 SPI4模块、必须执行以下操作:
    -打开“驱动程序启用”选项卡。 取消选中 Mark/Unmark All drivers (标记/取消标记所有驱动程序)并选中 Enable SPI4 driver (启用 SPI4驱动程序
    -转至 PINMUX 选项卡。 选中 SPI4复选框。 这将使得需要 SPI4模块使用的引脚数量增加。 例如、引脚25将用作 SPI4CLK;
    -转到 SPI4选项卡。 根据您的需求配置 SPI4模块。 将 SPI4模块中所有未使用的信号设置为 GIO (这可以在 SPI4选项卡下的 SPI4端口中完成)。
    -转至文件菜单并选择生成代码。 HALCoGen 将生成所有必需的配置和 API。

    如需了解更多详细信息、请访问 :training.ti.com/hercules-how-tutorial-using-halcogen
    在同一个位置、您还可以找到有关使用模块的培训视频。

    在 HALCoGen 安装文件夹下、也提供了示例。 在 HALCoGen 帮助(帮助菜单)中、您可以看到如何配置 HALCoGen 以使用示例。


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

    谢谢您...

    我有另一个问题、

    在数据表中,我们观察到89和90是 CAN 1 TX 和 Rx ,也可以用作 GPIO 引脚,所以我的问题是两个部分,

    a)如何将引脚89、90配置为端口1 TX 和 Rx?

    b)如何将引脚89、90配置为 GPIO?

    我知道这一配置过程  

    /**@示例 Example_canCommunication.c
    *这是一个示例,说明了创建示例应用程序的步骤
    *配置两个 CAN 节点1和2并开始与示例数据块进行通信。
    * CAN 1和 CAN2必须是 CAN 网络的一部分
    *
    *
    *@b Step @b 1:
    *
    *创建新项目。
    *
    *导航:->文件->新建->项目
    *
    *@image html example_createProject.jpg "图:创建新项目"
    *
    *@b Step @b 2:
    *
    *配置驱动程序代码生成:
    *-启用 CAN 驱动程序
    *-禁用其他
    *
    *导航:-> TMS570LSxx /RM4 ->启用驱动程序
    *
    *@image html can_enabledriver.JPG "图:启用 CAN 驱动程序"
    *
    *@b Step @b 3:
    *
    *配置 CAN 波特率:
    *
    *导航:-> TMS570LSxx /RM4 -> CAN
    *
    *@image html can1baud.JPG "图:CAN1波特率配置"
    *@image html can2baud.JPG "图:CAN2波特率配置"
    *
    *@b Step @b 4:
    *
    *配置 CAN MessageBox:
    *
    *-配置 CAN1、MessageBox 1 --激活和启用 TX
    *-配置 CAN2、MessageBox 1 --激活和启用 RX
    *
    *导航:-> TMS570LSxx /RM4 -> CAN
    *
    *@image html canCommunication1.JPG "图:CAN1 MBox 配置"
    *@image html canCommunication2.JPG "图:CAN2 MBox 配置"
    *
    *@b Step @b 5:
    *
    *将下面的源代码复制到 sys_main.c 中,或者用此文件替换 sys_main.c。
    *
    *示例文件也可以在示例文件夹中找到:./HALCoGen/examples
    *
    *@注意 HALCoGen 在 sys_main.c 中生成一个空的主函数、
    *
    *

    /*
    *版权所有(C) 2009-2015 Texas Instruments Incorporated - www.ti.com
    *
    *
    *以源代码和二进制形式重新分发和使用、有无
    *如果满足以下条件、则允许进行修改
    符合*:
    *
    *源代码的重新分发必须保留上述版权
    *注意、此条件列表和以下免责声明。
    *
    *二进制形式的再发行必须复制上述版权
    *请注意、中的此条件列表和以下免责声明
    *随提供的文档和/或其他材料
    *分发。
    *
    *德州仪器公司的名称和名称均不相同
    *其贡献者可用于认可或推广衍生产品
    *未经特定的事先书面许可。
    *
    *本软件由版权所有者和贡献者提供
    *"按原样"以及任何明示或暗示的保证、包括但不包括
    *仅限于对适销性和适用性的暗示保证
    *一项特定目的不予承认。 在任何情况下、版权均不得
    *所有者或贡献者应对任何直接、间接、偶然或
    *特殊、惩戒性或后果性损害、包括但不包括
    *仅限于采购替代货物或服务;丧失使用、
    *数据或利润;或任何原因造成的业务中断
    *责任理论、无论是合同责任、严格责任还是侵权行为
    *包括因使用而以任何方式产生的疏忽或其他原因
    *、即使被告知可能会发生此类损坏。
    *
    *

    /*用户代码开始(0)*/
    /*用户代码结束*/

    /*包含文件*/

    #include "sys_common.h"
    #include "system.h"

    /*用户代码开始(1)*/
    #include "CAN.h"

    /*包含 ESM 头文件-系统驱动程序的类型、定义和函数声明*/
    #include "ESM.h"

    #define D_SIZE 9

    uint8 TX_DATA[D_SIZE]={'H'、'E'、'R'、'C'、'U'、'L'、'E'、'S'、'0'};
    uint8 rx_data[D_size]={0};
    uint32错误= 0;

    uint32 checkPackets (uint8 * src_packet、uint8 * dst_packet、uint32 psize);
    /*用户代码结束*/


    /**@fn void main (void)
    *@应用程序主函数简介
    *
    *

    /*用户代码开始(2)*/
    /*用户代码结束*/


    void main (void)

    /*用户代码开始(3)*/

    /*初始化 CAN 1和2 */
    canInit();/* CAN1 -> CAN2 */

    CAN1上的/*发送*/
    canTransmit (canREG1、canMESSAGE_BOX1、TX_DATA);

    /*。 等待 CAN2上的消息接收*
    while (!canIsRxMessageArrived (canREG2、canMESSAGE_BOX1));
    canGetData (canREG2、canMESSAGE_BOX1、Rx_DATA);//在 CAN2上接收*

    /*检查接收到的数据模式*/
    错误=校验包(&TX_DATA[0]、&Rx_DATA[0]、D_SIZE);

    /*... 永久运行*/
    while (1);

    /*用户代码结束*/

    /*用户代码开始(4)*/
    /**@fn checkPackets (uint8 * src_packet、uint8 * dst_packet、uint32 psize)
    *@简要检查两个缓冲区并报告错误
    *
    *
    uint32 checkPackets (uint8 * src_packet、uint8 * dst_packet、uint32 psize)

    uint32 err=0;
    uint32 cnt=psize;

    while (cnt -)

    if ((* src_packet++)!=(* dst_packet++))

    ERR++;/*数据错误*/


    返回(错误);

    /*用户代码结束*/

    引脚编号8990是否有任何特定配置可用作 CAN 或 GPIO wrt halcogen?

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

    您好!

    a)如何将引脚89、90配置为端口1 TX 和 Rx?

    -->从“驱动程序启用”选项卡启用 CAN1驱动程序。

    -->转到 CAN1选项卡。 在"CAN1端口"选项卡中将 CAN1 TX 和 CAN1 RX 设置为正常工作

    -->在 sys_main.c 中调用 canInit();

    b)如何将引脚89、90配置为 GPIO?

    -->从“驱动器启用”选项卡启用 CAN1驱动器;

    -->转到 CAN1选项卡。 从"CAN1端口"选项卡中将 CAN1 TX 和 CAN1 RX 设置为 GIO

    -->调用 canInit();

    现在、您可以使用 CAN.c 中提供的 CAN 驱动程序函数(说明位于同一文件中)。

    canIoSetDirection (canBASE-t *节点、UINT32 TxDir、UINT32 RxDir)
    canIoSetPort (canBASE-t *节点、uint32 TxValue、uint32 RxValue)
    canIoTxGetBit (canBASE-t *节点)
    canIoRxGetBit (canBASE-t *节点)

    此致、

    米罗

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