主题中讨论的其他器件: C2000WARE、 SysConfig
我正在使用 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器件本身中找到。
请仔细阅读。
代码