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.

[参考译文] TMS320F280021:CAN 通信-具有 Code Composer Studio 的 C2000编译器

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1136601/tms320f280021-can-communication---c2000-compiler-with-code-composer-studio

器件型号:TMS320F280021
主题中讨论的其他器件: C2000WARESysConfig

我正在使用 TMS320F280021微控制器。 在与 CAN 通信配合使用时、我使用了 TI C2000器件中提供的示例代码。

我在 C2000器件中尝试的代码是"CAN_ex1_loopback.c"。  

我所做的配置更改是  

Tx 的通信通道为 GPIO2  

Rx 的通信通道为 GPIO3

下面给出了我所做的代码修改。

1。

#define DEVICE_GPIO_PIN_CANTXA 2U// CANTXA 的 GPIO 编号
#define DEVICE_GPIO_PIN_CANRXA 3U // CANRXA 的 GPIO 编号
#define DEVICE_GPIO_CFG_CANRXA GPIO_3_CANA_RX //针对 CANA RX GPIO_3_CANA_RX 的"pinConfig"
#define DEVICE_GPIO_CFG_CANTXA GPIO_2_CANA_TX //针对 CANA TX GPIO_2_CANA_TX 的"pinConfig"

2.通过断开微控制器引脚和 CAN 发送器之间的连接来隔离微控制器引脚和 CAN 发送器。

调试后、Code Composer Studio 不会出现任何错误。 但使用的 PIN 不会进行任何数据传输。 即使代码本身持续运行、引脚也始终为高电平有效(+3.3V)。

用于传输数据的语法如下所示。

"CAN_sendMessage (CANA_base、TX_MSG_obj_ID、MSG_DATA_LENGTH、txMsgData);"

在调试期间、我对代码做了一些断点。 结果表明,ISR (中断服务例程)在一个完整周期后没有执行,

我使用的代码可从 TI C2000器件本身中找到。   

请仔细阅读。

代码  

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

    您好、Nijas、

    我已将此问题分配给我们的 CAN 软件专家、请尽快回复

    此致、

    Peter

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

    Nijas、  

    您能否提及您使用的 C2000ware 版本?

    在最新版本中、 "CAN_ex1_loopback.c"是一个 SysConfig 示例、要求使用交互式 GUI 完成引脚多路复用。 此外、该示例不包括设置发送中断、因此不会执行 ISR。

    谢谢。