Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between SRR and RTR bit in can bus

I got confused in CAN 11 bit and 29 bit protocol(RTR in 11 bit and SRR in 29 bit frame). can anyone please explain why we use SRR bit in 29 bit can protocol instead of RTR bit...

like image 784
Ashokkumar Avatar asked Oct 20 '25 04:10

Ashokkumar


1 Answers

This message explains why: http://www.microchip.com/forums/m376934.aspx

CAN bus considers the 11 bit indentifiers to have a higher priority than the 29 bit identifiers

(because the two types of "protocol", "11" and "29", can coexist in the same bus). Hence:

In the case of a 29 bit extended frame, the RTR bit has been moved to the end of the message so it doesn't play in the priority bitwise arbitration of the 29 bit IDs. That's why the Standard frame RTR now defined as SRR is transmitted as recessive. It prevents a 29 bit RTR message from having a higher priority than a non RTR message.

...and so does this page: http://hem.bredband.net/stafni/developer/CAN.htm

A Substitute Remote Request (SRR) bit is included in the Arbitration Field. The SRR bit is always transmitted as a recessive bit to ensure that, in the case of arbitration between a Standard Data Frame and an Extended Data Frame, the Standard Data Frame will always have priority if both messages have the same base (11 bit) identifier.

like image 175
linuxfan says Reinstate Monica Avatar answered Oct 22 '25 04:10

linuxfan says Reinstate Monica



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!