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.

[参考译文] TMS570LS1227:用于更改 CAN 消息框屏蔽位的 API

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1160058/tms570ls1227-api-to-change-the-mask-bits-of-can-message-box

器件型号:TMS570LS1227

下面是我已写入的用于更改 CAN 消息框的屏蔽位的 API。 API 适用于扩展 ID、但不适用于标准 ID。 我将发送0x1FFFFFFFU 屏蔽用于扩展 ID、0x7FFU 屏蔽用于标准 ID。  

请帮助!

void canUpdateMASK (canBASE-t *节点、uint32 MessageBox、uint32 msgBoxMASK)

/**-等待 IF2就绪可供使用*/
while ((node->IF2STAT & 0x80U)=0x80U)

}/*等待*/

节点->IF2CMD = 0xC0U;

NODe->IF2MSK &= 0xC0000000U;

NODe->IF2MSK |=(uint32)(msgBoxMASK & 0x1FFFFFFFU);

节点->IF2NO =(uint8) MessageBox;

/**-等待数据被复制到 IF2中*/
while ((node->IF2STAT & 0x80U)=0x80U)

}/*等待*/

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

    代码对我来说看起来很好。 您是否从报文对象的屏蔽寄存器获得了0x7FF?

    消息对象中的掩码值是多少?