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/AWR1843BOOST:在 lab0008_automated_post 中添加 CAN 功能后、通信是否无法正常工作?

Guru**** 2590580 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/970065/ccs-awr1843boost-can-communication-doesn-t-work-after-adding-can-features-into-lab0008_automated_parking

器件型号:AWR1843BOOST

工具/软件:Code Composer Studio

我想在演示 lab0008_automated_停止 中应用 CAN 通信。

请参阅演示 lab0007_MRR、我修改了 lab0008的 MSS_main.c 我还在中添加了调试日志

CAN_Transmit 调度 

如下所示:

int32_t CAN_Transmit 调度(uint32_t msg_id、
uint8_t *txmsg、uint32_t len)
{

volatile uint32_t 索引= 0;
内部32_t RetVal = 0;
内部32_t 错误代码= 0;

system_printf ("消息%x len %d\n"、msg_id、len);
if (帧类型=CANFD_MCANFrameType_FD)
{
Task_sleep (1);

while (len > 64U)
{
RetVal = CANFD_transmitData (txMsgObjHandle、msg_id、CANFD_MCANFrameType_FD、64U、&txmsg[index]、 错误代码(&R);
System_printf ("A":FD 返回值%x、勘误代码%x\n"、RetVal、错误代码);
索引=索引+ 64U;
Len = len - 64U;

Task_sleep(1);
}
RetVal = CANFD_transmitData (txMsgObjHandle、msg_id、CANFD_MCANFrameType_FD、len、&txmsg[index]、 错误代码(&R);
System_printf ("B":FD 返回值%x、勘误代码%x\n"、RetVal、错误代码);
}
其他
{
while (len > 8U)
{
RetVal = CANFD_transmitData (txMsgObjHandle、msg_id、CANFD_MCANFrameType_Classic、8U、&txmsg[index]、 错误代码(&R);
System_printf ("A":经典返回值%x、勘误代码%x\n"、RetVal、错误代码); 
如果(RetVal < 0)
{

继续;
}
索引=索引+ 8U;
Len = len - 8U;

}

RetVal = CANFD_transmitData (txMsgObjHandle、msg_id、CANFD_MCANFrameType_Classic、len、&txmsg[index]、 错误代码(&R);
System_printf ("B":经典返回值%x、勘误代码%x\n"、RetVal、错误代码);

while (RetVal < 0)
{
//System_printf ("调试:传输 CAN 数据%x 时出错、错误代码%x\n"、RetVal、错误代码);
RetVal = CANFD_transmitData (txMsgObjHandle、msg_id、CANFD_MCANFrameType_Classic、len、&txmsg[index]、 错误代码(&R);
System_printf ("C:经典返回值%x、勘误代码%x\n"、RetVal、错误代码);

}

}


返回 RetVal;

} 

此外、我在 ARM 连接器的构建设置中添加了库、如下所示:  

然后、我成功地重建演示并在调试模式下运行、但 CAN 通信不起作用。 我尝试了 FD 和经典...  

下面是使用 CAN Classic 时的错误代码、retval 和 errcode 与使用 CAN FD 时的错误代码相同。

[Cortex_R4_0]调试:启动初始化任务
[C674x_0]处理器创建:(radarProcessInstance_t *) 0x80a4d8
处理器创建:(RADARDEMO_RANGEPROC_Handle *) 0x0
处理器






堆创建:(RADARDEMO_DOPTIONPROC_Handle *) 0x80A557_DRC 创建:0x80DCC280008 *(RADCLADDRB) RAD28000_CLADDRC:(0x80100_CLADDRB) 大小61440 (0xf000)、使用58312 (0xe3c8)
LL2暂存:大小8192 (0x2000)、使用6656 (0x1a00)
LL1暂存:大小16384 (0x4000)、使用16384 (0x4000)
HSRAM 堆:大小0 (0x0)、使用0 (0x0)
[Cortex_R4_0]调试模块已初始化毫米波

调试:已同步的毫米波调试模块 CLI 为操作
集 LDO 旁路
调试:已为 MRR 配置毫米波。
调试:传感器将立即启动。
消息 c1 len 36
a: classic return value ffff,Errcode fff253
a:classic return value ffffff,Errcode fff253
a:classic return value ffff,Errcode fff253
a:classic return value ffff,Errcode fff253
a:classic return value ffff ffff,Errcode fff253
a: 经典返回值 ffff、勘误代码 fff253
a:经典返回值 ffff、勘误代码 fff253 

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

    您好!

    我们有以下两个应用报告、介绍了如何将 CAN 功能添加到项目中。

    您可以使用这些应用手册添加 CAN 功能吗?

    谢谢你

    Cesar

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

    谢谢。