Hello, I would like to use flexcan on a development board based on imx 8mp. During the process, I referred to the routine "evkmimx8mp flexcan_interrupt_transfer". Then make modifications based on this routine. Since we did not use CANFD, I have removed the code related to CANFD from the program. The modified code is as follows.
    There is a problem now that if CAN_init() is executed immediately, CAN_send() can be executed to successfully send CAN messages (i.e. enter the callback function). If CAN_send() is executed a few seconds after CAN_init(), the message cannot be sent. The return value of FLEXCAN-TransferSendNonBlocking shows normal execution, indicating that the callback function can no longer be entered.
    I added the flexcan code based on Hello World, and I suspect that the interrupt set by CAN in the initialization function was quickly restored. However, there is no other interrupt set in the program, so I would like to ask what is the reason for this? And how to solve it, thank you
已解决! 转到解答。
 Bio_TICFSL
		
			Bio_TICFSL
		
		
		
		
		
		
		
		
	
			
		
		
			
					
		Hello,
You better try the Demo sample that comes with linux BSP, it initialize your board and transfer the data. please check it:
Regards
 Bio_TICFSL
		
			Bio_TICFSL
		
		
		
		
		
		
		
		
	
			
		
		
			
					
		Hello,
You better try the Demo sample that comes with linux BSP, it initialize your board and transfer the data. please check it:
Regards
Thank you very much for your suggestion. But we plan to drive CAN communication on the 8mp M-core. Previously, the demo "evkmimx8mp flexcan_interrupt_transfer" was obtained from SDK (2.15), but after being rewritten, it was placed in our own project and resulted in the inability to enter the callback function
