Hi Champ,
in eCAN module, there have Transmission-Request-Reset Register (CANTRR) ,Setting TRRn cancels a transmission request.
May I know how to cancel a transmission request in F280025 DCAN module?
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.
Hi Champ,
in eCAN module, there have Transmission-Request-Reset Register (CANTRR) ,Setting TRRn cancels a transmission request.
May I know how to cancel a transmission request in F280025 DCAN module?
In eCAN:
To initiate a transmission for a mailbox, you set the TRSn (Transmit Request Set) bit. To abort the transmission, you set the TRRn (Transmit Request Reset) bit. If the abort is successful, the AA bit (Abort Acknowledge) is set.
In DCAN:
To initiate a transmission for a mailbox, you set the TxRqst bit. To abort the transmission, you can only clear the same bit. i.e. there is no separate bit to abort the transmission.
Hi Hareesh,
For DCAN , if i want to abort the transmission by clear the TxRqst bit, i should clear TxRqst in CAN_IF1CMD or CAN_IF1MCTL?
Thanks!
Description for bit 18 of CAN_IF1CMD Register (page 2527 of SPRUHM8I) says "0 (Direction = Write): TxRqst/NewDat bit will be handled according to the Control bit". So, In addition to clearing bit 18 to 0, bit 8 of CAN_IF1MCTL Register should be 0 as well. I haven't tried aborting a message like this, but this is what appears to be the procedure per the TRM. See also this post.
Hi Hareesh,
Understand both bit 18 of CAN_IF1CMD and bit 8 of CAN_IF1MCTL need to clear to 0,
So which bit need to clear first?
IFxCMD should always be the last register to be written to. That is what would transfer the data from all other IFx registers to the Message object. To answer your question, you should write to CAN_IF1MCTL first.