38.8.2 Receive State Diagram

Figure 38-15 illustrates how messages are received. It illustrates how the most important receive flags are set and cleared.
  • The CAN Protocol module remains Idle until a SOF is detected.
  • After a SOF is detected, the module will receive the arbitration and control fields.
  • Based on the DNCNTx bits and the received DLC, acceptance filtering will start. See Figure 38-12 for more details.
  • If none of the filters match, the message will still be received, but it will not be stored.
  • If a filter matches, the device checks whether the receive object the filter points to is full.
  • If the receive object is not full, the rest of the data bytes are received and stored to the receive object.
  • If the receive object is full, the RXOVIF bit will be set.
  • If a complete message is received, the message will be stored, a timestamp will be attached and the receive flags will be set; the FIFO status flags will be updated and the FIFO head will be incremented.
  • In case an error is detected during the reception of a message, an error frame will be transmitted and the appropriate error flags will be set.
Figure 38-15. Receive State Diagram