(CAN) Что такое бит RTR и SRR?

RTR и SRR - это аббревиатура?

Я понимаю, что оба являются битами, но я не понимаю, какую роль играет RTR, когда у нас нет 29-битных идентификаторов в системе, так как я считаю, что одного идентификатора будет достаточно для отправки сообщений. Или CAN автоматически предполагает, что у нас будут разные длины идентификаторов в системе, и тогда будут иметь значение только биты SRR и бит RTR?


person Lukali    schedule 29.01.2019    source источник
comment
Вы спрашиваете о бите IDE или бите SRR? Чтение вашего вопроса указывает на то, что вы имеете в виду IDE.   -  person Swanand    schedule 29.01.2019


Ответы (1)


RTR используется для кадров удаленного запроса. Это функция, которая позволяет отправлять пустой пакет, запрашивая данные того же идентификатора, который вы использовали для кадра RTR. Эта функция не имеет ничего общего с длиной идентификатора сама по себе.

Бит, который определяет, используются ли 11-битные или 29-битные идентификаторы, называется IDE. IDE=0 дает 11, а IDE=1 дает 29.


Относительно RTR по сравнению с SRR:

  • Для 11-битного идентификатора бит, следующий за 11-битным идентификатором, называется RTR.

  • Для 29-битного идентификатора бит, следующий за 11 старшими битами идентификатора, меняет имя на SRR, что означает «заменить удаленный запрос». Он всегда установлен в единицу (рецессивный). Далее следует IDE + остаток идентификатора, а после этого РТР.

Этот дизайн означает, что кадр с 11-битным идентификатором всегда будет выигрывать арбитраж над кадром с 29-битным идентификатором с тем же двоичным шаблоном в 11-м старшем бите, независимо от состояния RTR 29-битного кадра.

(Имейте в виду, что кадры CAN всегда имеют порядок байтов в обратном порядке, сначала старший бит.)

Так было сделано в старой спецификации Bosch «CAN2.0B» для обратной совместимости с «CAN2.0A».

person Lundin    schedule 31.01.2019