реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> пару вопросов про CAN
go2winner
сообщение Jun 8 2016, 07:24
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 78
Регистрация: 19-10-15
Пользователь №: 88 917



Доброго времени суток.

Есть несколько вопросов, которые я не понимаю. ( немного конкретики , я использую контроллер mcp2515. )
1) Кадр удаленного запроса. Каким образом работает?
В частности, как происходит ответ на него? Контроллер сам отправляет содержимое буфера при получении запроса? или я, в роли управляющего звена, должен среагировать на флаг RTR и инициализировать запрос на передачу? (или зависит от контроллера? в описании mcp2515 ничего вроде не нашел по этому поводу, но знаю , что есть с автоответом )

Узел, который запрашивает данные (отправляет remote frame), в поле с идентификатором указывает идентификатор узла ,у которого хочет получить данные? Если да, то тогда узел, который отвечает на запрос заранее должен знать идентификатор куда отправить данные на запрос? Верно? А дальше всем узлам приходя данные и они в соответствии со своими настройками их принимают или нет.

2) В моем контроллере несколько буферов на прием и несколько фильтров на каждый буфер. Я правильно понимаю, что я могу, к примеру взять себе несколько идентификаторов и им сопоставить свои данные. К примеру, температура -один идентификатор, скорость -второй и т.п. И соответственно при приходе кадра запроса , оправлять нужную информацию в соответствии с идентификатором, запрашиваемого параметра.

Я имею общие представления о can (но пока хромаю ), если у Вас есть хорошие статьи или т.п. про can (настройка, обмен, и т.п.), приму с удовольствием.
Go to the top of the page
 
+Quote Post
yuravg
сообщение Jun 8 2016, 08:45
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 12-08-15
Из: Санкт-Петербург
Пользователь №: 87 968



Цитата(go2winner @ Jun 8 2016, 10:24) *
Доброго времени суток.
...

1) Вам самим надо инициализировать передачу. Бит rtr - это дополнительная информация о фрейме (Инициатор устанавливая rtr не передает данные)
2) Да. Надо знать какая у Вас будет сеть с протоколом. Если устройств много возможно удобней будет иметь один идентификатор для каждого устройства
(все идентификаторы например будут формироваться по правилу id11(стандартный идентификатор)=[тип_сообщения, id_source, id_recipient])

Сообщение отредактировал yuravg - Jun 8 2016, 08:46
Go to the top of the page
 
+Quote Post
syoma
сообщение Jun 8 2016, 13:46
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



По поводу 1) знаю, что у атмелов была когда-то такая фича, что если в буфере на отправление есть фрейм с таким же Id и он готов к посылке, то при получении такого же фрейма с RTR он будет отправлен автоматом.
Но в принципе, это было давно и помоему уже не используется. По крайней мере в протоколах верхнего уровня по верх CAN это, помоему, не используется.
Go to the top of the page
 
+Quote Post
go2winner
сообщение Jun 8 2016, 14:03
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 78
Регистрация: 19-10-15
Пользователь №: 88 917



Цитата(syoma @ Jun 8 2016, 13:46) *
По поводу 1) знаю, что у атмелов была когда-то такая фича, что если в буфере на отправление есть фрейм с таким же Id и он готов к посылке, то при получении такого же фрейма с RTR он будет отправлен автоматом.
Но в принципе, это было давно и помоему уже не используется. По крайней мере в протоколах верхнего уровня по верх CAN это, помоему, не используется.


я тоже вот слышал краем уха, подумал может везде оно так (пока нигде этого не встречал в даташитах)
Теперь ситуация яснее стала. спасибо всем.

Сообщение отредактировал go2winner - Jun 8 2016, 14:03
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th April 2024 - 09:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01391 секунд с 7
ELECTRONIX ©2004-2016