请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS470MF06607 主题中讨论的其他器件:HALCOGEN
您好!
在我的项目中、我需要收集中断我的硬件的所有消息。 同样、我只使用了消息 box1、并将框配置为这样
ID = 0xAB (不应影响对吗?)
掩码= 0x00
现在、我应该会将所有消息都输入到中。 这是肯定发生的、并且在收到任何消息时都会收到中断。 我还可以使用 canGetData 获取数据、但随后便开始了问题!
如何知道该数据随附的消息? 如何获取实际的消息标识符和 DLC? IF2->ARB 中的位28至位18始终显示为0xAB、而不管门是什么 ID。
从代码点开始、这就是在通知函数中尝试执行的操作
void canMessageNotification (canbase_t *节点、uint32 MessageBox) { if ((node=canREG2)&&(MessageBox ==1)) //检查由于报文对象1而产生的中断 { //消息框1中接收到所有 Rx 消息 memset (&Msg_Data[0]、0、8); canGetData (canREG2、canMESSAGE_BOX1、&Msg_Data[0]);//这始终有效,我获得正确的数据 MessageID = canREG2->IF2ARB; //我始终看到0xAB 位28到18 } }
如何知道硬件中的实际 CAN 消息标识符(消息框)? 请帮助
此致、
Shankar