目标:监听CAN1上的全部报文,如果id为0x12345678,则对其data段的byte进行处理。
问题:在capl中通过this.id==0x12345678(trace中确认已发出),未进入处理逻辑。
先上答案:格式要求加一个x,即this.id==0x12345678x(使用十进制ID也一样需要在末尾增加一个x)。

以下为步骤:
尝试:使用easy-demo测试,监听this.id==0x123,确认可以进入处理逻辑。
分析:与demo的区别——id长度不同。
再次尝试:修改esay demo中的数据库文件,将0x123改为0x12345678,修改时提示CAN标准报文ID值应在(0,0x7FF)之间-》修改报文类型为扩展CAN,ID修改成功。
解决:因此联想到扩展帧的ID是否有什么不同的格式——查找help文档中的capl-->CAN-->ID相关命令——>找到isExtId命令,点开后,其中有关于扩展帧ID的链接,据此找到了解决方案。

END

本文讲述了作者在使用CAPL时,监听CAN1报文并针对特定ID(0x12345678)进行处理的问题。通过测试和分析发现,由于ID超出标准范围,需将其转换为扩展CAN格式。最终在帮助文档中找到isExtId命令,解决了ID格式问题。
1445

被折叠的 条评论
为什么被折叠?



