English
Language : 

PXD20RM Datasheet, PDF (968/1628 Pages) Freescale Semiconductor, Inc – PXD20 Microcontroller
27.7.2.5 Valid header
A received header is considered as valid when it has been received correctly according to the LIN protocol.
If a valid break field and break delimiter come before the end of the current header, or at any time during
a data field, the current header or data is discarded and the state machine synchronizes on this new break.
27.7.2.6 Valid message
A received or transmitted message is considered as valid when the data has been received or transmitted
without error according to the LIN protocol.
27.7.2.7 Overrun
After the message buffer is full, the next valid message reception causes an overrun and a message is lost.
The LINFlexD controller sets LINSR[BOF] to signal the overrun condition. Which message is lost
depends on the configuration of the RX message buffer:
• If the buffer lock function is disabled (LINCR1[RBLM] cleared), the last message stored in the
buffer is overwritten by the new incoming message. In this case, the latest message is always
available to the software.
• If the buffer lock function is enabled (LINCR1[RBLM] set), the most recent message is discarded
and the previous message is available in the buffer.
27.7.3 Slave mode with identifier filtering
In the LIN protocol, the identifier of a message is not associated with the address of a node but related to
the content of the message. Consequently a transmitter broadcasts its message to all receivers. When a
slave node receives a header, it decides - depending on the identifier value - whether the software needs to
receive or send a response. If the message does not target the node, it must be discarded without software
intervention.
To fulfill this requirement, the LINFlexD controller provides configurable filters in order to request
software intervention only if needed. This hardware filtering saves CPU resources which would otherwise
be needed by software for filtering.
The filtering is accomplished through the use of IFCR registers. These registers have the names IFCR0
through IFCR. This section also uses the nomenclature IFCR2n and IFCR2n+1; in this nomenclature, n is
an integer, and the corresponding IFCR register is calculated using the formula in the subscript.
27.7.3.1 Filter submodes
Usually each of the eight IFCR registers is used to filter one dedicated identifier, but this means that the
LINFlexD controller could filter a maximum of eight identifiers. In order to be able to handle more
identifiers, the filters can be configured to operate as masks.
Table 27-3 describes the two available filter submodes.
27-12
PXD20 Microcontroller Reference Manual, Rev. 1
Preliminary—Subject to Change Without Notice
Freescale Semiconductor