接收信息的标识符首先要与邮箱的标识符(存放在邮箱内)相比较,然后,对应的接收屏蔽寄存器将屏蔽掉标识符中不需要比较的位。
在标准模式时,全局接收屏蔽寄存器(CANGAM)用于邮箱15~6。接收信息存放在标识符匹配的最高序号邮箱中。如果在信息对象15~6中没有匹配的标识符,则接收的信息与邮箱5~3的标识符进行比较,如果还是不匹配,再与邮箱2~0的进行比较。
邮箱5~3使用标准模式寄存器的局部接收屏蔽寄存器LAM(3)。邮箱2~0使用标准模式寄存器的局部接收屏蔽寄存器LAM(0)。
要改变全局接收屏蔽寄存器(CANGAM)和标准模式的两个局部接收屏蔽寄存器,必须将CAN模块设置为初始化模式。
eCAN模块的32个邮箱每一个都有自己的局部接收屏蔽寄存器,它们是LAM(0)~LAM(31)。eCAN模式中没有全局接收屏蔽。
用于比较的屏蔽位的选择取决于所使用的模式(标准模式或eCAN模式)。
局部接收屏蔽寄存器(LAM,Local Acceptance Mask Register)允许用户局部屏蔽掉进入信息的任何标识符位。
在标准模式时,局部接收屏蔽寄存器LAM(0)用于邮箱2~0。局部接收屏蔽寄存器LAM(3)用于邮箱5~3。对于邮箱6~15,使用全局接收屏蔽寄存器(CANGAM)。
在标准模式的硬件或软件复位以后,LAM(0)和LAM(3)寄存器复位为0。在eCAN模式复位以后,LAM寄存器不修改。(www.daowen.com)
在eCAN模式,每一个邮箱(0~31)都有自己的屏蔽寄存器,分别是LAM(0)~LAM(31)。接收的信息存放在标识符匹配的最高序号的邮箱中。
位31,LAMI:局部接收标识符扩展屏蔽位。
●1:可以接收标准帧和扩展帧。在扩展帧的情况下,标识符的所有29位存放到邮箱中,局部接收屏蔽寄存器的所有29位都用于接收滤波器。在标准帧的情况下,仅使用标识符和局部接收屏蔽寄存器的前11位(位28~18)。
●0:存放在邮箱中的标识符扩展位设定应该接收哪些信息。
位30~29,保留位。
位28~0,LAMn[28:0]。这些位对进入信息标识符任何位的屏蔽使能。
●1:对接收标识符对应的位接收0或1(无关)。
●0:接收标识符位的值必须与MSGID寄存器对应标识符位的值相匹配。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。