I am debugging the FlexCAN driver of the KW45 chip and have found that when the receive filter MASK is not configured, the FlexCAN module can trigger its own receive interrupt and receive the messages sent by itself. Is this behavior normal? If it is, what is the underlying reason? For example, modify the flexcan_interrupt_transfer code in the SDK as shown in the attachment.
uart log :
********* FLEXCAN Interrupt EXAMPLE *********
Message format: Standard (11 bit id)
Message buffer 0 used for Rx.
Message buffer 1 used for Tx.
Interrupt Mode: Enabled
Operation Mode: TX and RX --> Normal
*********************************************
Please select local node as A or B:
Note: Node B should start first.
Node:A
Press any key to trigger one-shot transmission
Rx MB ID: 0x321, Rx MB data: 0x0, Time stamp: 60127
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x1, Time stamp: 3624
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x2, Time stamp: 18344
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x3, Time stamp: 56722
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x4, Time stamp: 55297
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x5, Time stamp: 53656
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x6, Time stamp: 30470
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x7, Time stamp: 22438
Press any key to trigger the next transmission!
Rx MB ID: 0x321, Rx MB data: 0x8, Time stamp: 1009
Press any key to trigger the next transmission!
Hello, I have resolved the issue and need to set:
flexcanConfig.disableSelfReception = TRUE;