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.

[参考译文] LAUNCHXL-F2800137:CAN 引脚配置

Guru**** 2468610 points
Other Parts Discussed in Thread: LAUNCHXL-F2800137, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1321331/launchxl-f2800137-can-pin-configuration

器件型号:LAUNCHXL-F2800137
主题中讨论的其他器件:C2000WARE

您好、团队成员:

在此、我尝试 在 Launchpad f2800137中为 GPIO5和 GPIO4设置 CAN、并设置以下寄存器


GpioCtrlRegs.GPAGMUX1.bit.GPIO5 = 1;
GpioCtrlRegs.GPAGMUX1.bit.GPIO4 = 1;
GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 2;
GpioCtrlRegs.GPAMUX1.bit.GPIO4 = 2;

GpioCtrlRegs.GPADIR.bit.GPIO5 = 0;
GpioCtrlRegs.GPAQSEL1.bit.GPIO5 = 3;
GpioCtrlRegs.GPADIR.bit.GPIO4 = 1;
GpioCtrlRegs.GPAPUD.bit.GPIO4 = 0;

但它无法正常工作、请帮助我解决此问题

非常感谢您在这方面的指导。

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

    器件型号:LAUNCHXL-F2800137

    您好、团队成员:

    在此、我尝试 在 Launchpad f2800137中为 GPIO5和 GPIO4设置 CAN、并设置以下寄存器


    GpioCtrlRegs.GPAGMUX1.bit.GPIO5 = 1;
    GpioCtrlRegs.GPAGMUX1.bit.GPIO4 = 1;
    GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 2;
    GpioCtrlRegs.GPAMUX1.bit.GPIO4 = 2;

    GpioCtrlRegs.GPADIR.bit.GPIO5 = 0;
    GpioCtrlRegs.GPAQSEL1.bit.GPIO5 = 3;
    GpioCtrlRegs.GPADIR.bit.GPIO4 = 1;
    GpioCtrlRegs.GPAPUD.bit.GPIO4 = 0;

    但它无法正常工作、请帮助我解决此问题

    非常感谢您在这方面的指导。

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

    您好、Yash。

    您是否曾首先尝试 C2000Ware 中的 CAN 传输/接收示例以确保它正常工作?  此外、如果 RX (GPIO5)和 TX (GPIO4)路由到 CAN 收发器 U15、您是否检查开关 S4的位置?  C2000Ware 中的示例使用 GPIO_setPinConfig ()函数配置 GPIO4/5 CAN 引脚,从而得到与代码中相同的寄存器值。

    您能否详细说明一下不工作的含义?  当 CAN 尝试发送帧时、您是否无法监测 TX 引脚中的信号?

    此致、

    约瑟夫

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

    Joseph、您好!

    实际上、我通过示例进行了检查、结果很好。

    我希望通过不使用内置 API 的寄存器来配置其引脚。

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

    您好、Yash。

    您可能错过了对某些寄存器的写入。  我的建议是在 CCS 中使用 Registers 视图来查看当使用工作的 CAN 示例代码时 GPIO 和 CAN 的寄存器值是如何更新的、并在通过位域方法进行写入时使用相同的视图、并注意差异。

    我不认为这是 CAN、GPIO 或 LP 的问题、也不是示例、因此我将关闭此主题。

    此致、

    约瑟夫