66.5.7.5 Standard Message ID Filter Element
Up to 128 filter elements can be configured for 11-bit standard IDs. When accessing a Standard Message ID Filter element, its address is the Filter List Standard Start Address MCAN_SIDFC.FLSSA plus the index of the filter element (0…127).
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
S0 | SFT[1:0] | SFEC[2:0] | SFID[10:0] | – | SFID[10:0] |
• Bits 31:30 SFT[1:0]: Standard Filter Type
Value | Description |
---|---|
0 | Range filter from SF1ID to SF2ID (SF2ID ≥ SF1ID) |
1 | Dual ID filter for SF1ID or SF2ID |
2 | Classic filter: SF1ID = filter, SF2ID = mask |
3 | Reserved |
• Bit 29:27 SFEC[2:0]: Standard Filter Element Configuration
All enabled filter elements are used for acceptance filtering of standard frames. Acceptance filtering stops at the first matching enabled filter element or when the end of the filter list is reached. If SFEC = “100”, “101”, or “110” a match sets interrupt flag MCAN_IR.HPM and, if enabled, an interrupt is generated. In this case register HPMS is updated with the status of the priority match.
Value | Description |
---|---|
0 | Disable filter element |
1 | Store in Rx FIFO 0 if filter matches |
2 | Store in Rx FIFO 1 if filter matches |
3 | Reject ID if filter matches |
4 | Set priority if filter matches |
5 | Set priority and store in FIFO 0 if filter matches |
6 | Set priority and store in FIFO 1 if filter matches |
7 | Store into Rx Buffer or as debug message, configuration of SFT[1:0] ignored |
• Bits 26:16 SFID1[10:0]: Standard Filter ID 1
First ID of standard ID filter element.
When filtering for Rx Buffers or for debug messages this field defines the ID of a standard message to be stored. The received identifiers must match exactly, no masking mechanism is used.
• Bits 10:0 SFID2[10:0]: Standard Filter ID 2
This field has a different meaning depending on the configuration of SFEC:
- SFEC = “001”...“110”–Second ID of standard ID filter element
- SFEC = “111”–Filter for Rx Buffers or for debug messages
SFID2[10:9] decides whether the received message is stored into an Rx Buffer or treated as message A, B, or C of the debug message sequence.
Value | Description |
---|---|
0 | Store message in a Rx buffer |
1 | Debug Message A |
2 | Debug Message B |
3 | Debug Message C |
SFID2[5:0] defines the index of the dedicated Rx Buffer element to which a matching message is stored.