接收到报文时可以读取报文ID,数据长度,数据内容等信息:
- READ_CAN_ID(pstcRx[u8RxFrameCnt].u32ID);
- READ_CAN_CTRL(pstcRx[u8RxFrameCnt].RxCtrl.u16Ctrl);
-
- u8DataSize = au8DLC2Size[pstcRx[u8RxFrameCnt].RxCtrl.rx_ctrl.FDF][pstcRx[u8RxFrameCnt].RxCtrl.rx_ctrl.DLC];
-
- if(CANx == CAN1)
- {
- printf("CAN1 Read%d: ID=0x%08lx, DLC=%d, ",u8RxFrameCnt+1,pstcRx[u8RxFrameCnt].u32ID,pstcRx[u8RxFrameCnt].RxCtrl.rx_ctrl.DLC);
- }
- else
- {
- printf("CAN2 Read%d: ID=0x%08lx, DLC=%d, ",u8RxFrameCnt+1,pstcRx[u8RxFrameCnt].u32ID,pstcRx[u8RxFrameCnt].RxCtrl.rx_ctrl.DLC);
- }
复制代码
如果非要了解这个报文是从哪个过滤器进来的话,就只能根据读取的ID进行判断了。 |