How to use Flexcan RxFifo

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

How to use Flexcan RxFifo

跳至解决方案
1,156 次查看
yarannan
Contributor III

Hi,

So i know KSDK1.2 support RxFifo. Thats the main reason i upgrade to KSDK1.2.

 

1. How do i use RxFifo related functions? I read API document and some topics in the

community. They dont seem helped my situation.

2. I am using KSDK1.2 + PEx at KDS3.0 and hardware I am using MK20DX256VLL10

3. There are no examples of how to use flexcan_status_t FLEXCAN_DRV_RxFifo().

 

Here comes the questions:

1. If possible, please somebody share me a simple code with RxFifo with KSDK1.2

2.  What different with Message buffer vs Mailboxes and RxFifo? They are confusing me

3. If my end only want to receive one node id message and i dont want to lose any message,

does that mean I need to use RxFifo over message buffer?

 

Thanks,

 

Yaran

标签 (1)
标记 (3)
0 项奖励
1 解答
645 次查看
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Yaran,

I am checking with the KSDK team for the demo you are querying , and will let you know when I have any feedback. for the second question, actually in my understanding, the mailboxes and RxFIFO are built based on MB(message buffers), you may use message buffers as entries of the RXFIFO, or assign some message buffer as mailbox, receiving for a dedicated ID or several IDs filtered by RXMGMASK,RX14MASK,RX15MASK and RXFGMASK registers. but for your case, if you just want to receive messages from only one node, there is no possibility to lose any message, either mailbox or RXFIFO, The data frame has a flag sequence consisting of 7 "recessive" bits as end of frame followed by a interframe space, so there should enough time to receive the frame if you put RX interrupt as the highest priority, but if you have to assign lower priority to flexcan interrupt, you may use RXFIFO function.

Hope that helps,


Have a great day,
Kan

Freescale Technical Support
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

在原帖中查看解决方案

0 项奖励
1 回复
646 次查看
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Yaran,

I am checking with the KSDK team for the demo you are querying , and will let you know when I have any feedback. for the second question, actually in my understanding, the mailboxes and RxFIFO are built based on MB(message buffers), you may use message buffers as entries of the RXFIFO, or assign some message buffer as mailbox, receiving for a dedicated ID or several IDs filtered by RXMGMASK,RX14MASK,RX15MASK and RXFGMASK registers. but for your case, if you just want to receive messages from only one node, there is no possibility to lose any message, either mailbox or RXFIFO, The data frame has a flag sequence consisting of 7 "recessive" bits as end of frame followed by a interframe space, so there should enough time to receive the frame if you put RX interrupt as the highest priority, but if you have to assign lower priority to flexcan interrupt, you may use RXFIFO function.

Hope that helps,


Have a great day,
Kan

Freescale Technical Support
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励