1_00c: 接收优先级
RXB0是较高优先级的接收缓冲器,它有两个与之相关的接收过滤器。RXB1为较低优先级的接收缓冲器,它有四个与之相关的接收过滤器。较低序号的接收过滤器与RXB0匹配更受严格的限制,对接收缓冲器而言意味着更高的优先级。另外,RXB0CON寄存器能够配置为如果RXB0包含了一条有效信息,而另一条有效信息又被接收时,新的信息将被移入RXB1中,而不考虑RXB1的接收标准,溢出错误不会发生。同样,接收缓冲器都有一个可编程的接收过滤器和屏蔽器。
当接收信息时,RXBnCON<3:0>指示了接收过滤器的序号来确定哪个过滤器使能接收,而不管接收的信息是否为远程传输请求。
RXM位用来配置特殊的接收方式。一般地,这两位置为00来接收所有有效的信息,由相应的接收过滤器决定。这样,是否接收标准或扩展信息是由是由接收过滤器寄存器中的EXIDE位决定。如果RXM位配置成01或10,接收器只接收标准或扩展表识符的信息。如果接收过滤器寄存器中的EXIDE位为1,就不会对RXM相应,接收过滤器处于无效状态。RXM位用于总线上只有标准或扩展表识符信息的系统。如果RXM位配置为11,缓冲器将接收所有信息,而不考虑接收过滤器的值。同样,如果信息在结束帧前有错误,则在结束帧前有错误,则在错误帧前面的MAB中的那部分信息将装入缓冲器。
********************************************************************
RXB0 is the higher priority buffer and has two message acceptance filters associated with it. RXB1 is the lower priority buffer and has four acceptance filters associated with it. The lower number of acceptance filters makes the match on RXB0 more restrictive and implies a higher priority for that buffer. Additionally, the RXB0CON register can be configured such that if
RXB0 contains a valid message and another valid message is received, an overflow error will not occur and the new message will be moved into RXB1, regardless of the acceptance criteria of RXB1. There are also two programmable acceptance filter masks available, one for each receive buffer .
When a message is received, bits <3:0> of the RXBnCON register will indicate the acceptance filter number that enabled reception and whether the received message is a remote transfer request.
The RXM bits set special Receive modes. Normally, these bits are set to ‘00’ to enable reception of all valid messages, as determined by the appropriate acceptance filters. In this case, the determination of whether or not to receive standard or extended messages is determined by the EXIDE bit in the acceptance filter register. If the RXM bits are set to ‘01’ or ‘10’, the receiver will accept only messages with standard or extended identifiers, respectively. If an acceptance filter has the EXIDE bit set, such that it does not correspond with the RXM mode, that acceptance filter is rendered useless. These two modes of RXM bits can be used in systems where it is known that only standard or extended messages will be on the bus. If the RXM bits are set to ‘11’, the buffer will receive all messages, regardless of the values of the acceptance filters. Also, if a message has an error before the end of frame, that portion of the message assembled in the MAB before the error frame, will be loaded into the buffer. This mode has some value in debugging a CAN system and would not be used in an actual system environment.
文章评论(0条评论)
登录后参与讨论