This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM2634: How to control MCAN transmission on FIFO/BUFFER index level?

Part Number: AM2634

Tool/software:

Hi

Is there a way to control MCAN transmission on a level of buffer index?

What I want to achieve is to use more buffers than 1 (like example does), up to 32 or 64 to have more buffers in transmission and than when I get TX Success interrupt use the MCAN_IR register (or any other way) to identify the buffer index which was sent successfully (or failed). Automatic retransmission is disabled, I need to control retry count.

Is there any example or description how to do it (message markers or whatever else) is suitable for my needs?

Managed to do this on RX with FIFO but can't find a proper way for TX. Wanted to check MCAN_IR but the register addendum does not have it described properly, have just mentions on other register descriptions. However the SDK code have shift/mask definitions for it and I've seen nothing related to buffer index so probably other ways are needed to identify the buffer/fifo index used for sending.

Best regards,

Barna Csenteri

  • Hello Barna,

    Our US team was on holiday leave Monday and was unavailable to provide support. Our MCAN expert will review this topic tomorrow.

    Best Regards,

    Ralph Jacobi

  • Hey Barna,

    Can you describe how you did this for the RX FIFO? 

    What is incorrectly described in the MCAN_IR register addendum content?

    MCANx:CFG_TXFQS.TFGI provides the current GET Index of the TX FIFO, would this help in conjunction with MCAN_IR status bits?

    Best Regards,

    Zackary Fleenor

  • Hi

    MCAN_IR is not described in the register addendum (at least I can't find it) - found it in the SDK defines only ...

    I was already checking the TXFQ (MCAN_getTxFIFOQueStatus seems to return it). Might be ok.

    Barna Csenteri

  • Hey Barna,

    There is an issue with the naming in the current RA. The register name is called CFG_IR.

    I think that is the correct way to address your requirement.

    Best Regards,

    Zackary Fleenor