Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2020-мар-29 17:44

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 28 сообщений ]  На страницу 1 2 »
Автор Сообщение
СообщениеДобавлено: 2019-янв-23 13:30 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
Привет всем!
столкнулся со странным поведением КАН, пока не пойму как его интерпретировать.
1)отключаю линию КАН - висит в воздухе.
2)отсылаю 2 сообщения по адресам 0x100 и 0x101.
3)снифер КАН видит что в линию постоянно летит сообщение на адрес 0x100.
4)останов отладчиком не останавливает посылку пакетов - при зависшей программе, ядро КАН постоянно шлет сообщения.
STATUS.ERROR_OVER - установлен
STATUS.ERROR_STATUS = 1
5)выключение буфера отправки 0x100, и вообще всех слотов отправки - на дает эффекта.
6)выключение ядра КАН (CONTROL.CAN_EN) останавливает активность.
7) после включения (CONTROL.CAN_EN) - посылка возобновляется.
8) если обнулить все маски и адреса, регистр TXID, все буферы с приемом. То после включения возобновляется отправка но уже на адрес 000

Подскажет ли кто - можно ли бороться с таким поведением? Откуда оно возникает? Можно ли нормально остановить отсылку сообщений?


Вернуться к началу
СообщениеДобавлено: 2019-янв-23 13:48 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 534
ВЕ94 не пользуем, но в ВЕ91 контроллер CAN "несколько своеобразный" и без бубна не обошлось. Для ВЕ91 помогает рекомендация из 0029 1986BE9x and MDR32F9Qx Series Errata Notice:
Цитата:
Разрешить примем собственных пакетов (бит ROP=1) с их последующим игнорированием в ходе программной обработки.
. Попробуйте, вдруг поможет.


Вернуться к началу
СообщениеДобавлено: 2019-янв-23 13:55 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
Не, (бит ROP=1) не проканал


Вернуться к началу
СообщениеДобавлено: 2019-янв-23 17:39 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 534
Цитата:
1)отключаю линию КАН - висит в воздухе.
Кстати, а как висит и кто висит :)? Если к выводам шинного драйвера не подключена нагрузка, то ROP=1 и не поможет.


Вернуться к началу
СообщениеДобавлено: 2019-янв-23 18:01 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
Цитата:
Кстати, а как висит и кто висит ? Если к выводам шинного драйвера не подключена нагрузка, то ROP=1 и не поможет.
висит в воздухе с терминатором. и еще в режиме прослушки снифер подключен.


Вернуться к началу
СообщениеДобавлено: 2019-янв-23 19:48 
Не в сети

Зарегистрирован: 2010-авг-30 19:12
Сообщения: 486
Цитата:
и еще в режиме прослушки снифер подключен.
Подключите снифер в активном режиме. Должны формироваться подтверждения приема другими узлами, иначе автоповтор передачи.

_________________
О сколько нам открытий чудных
Готовит просвященья дух,
И опыт - сын ошибок трудных ... (Пушкин)

Пергаменты не утоляют жажду ("Фауст",Гете)


Вернуться к началу
СообщениеДобавлено: 2019-янв-24 11:05 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
помог ROP!
надо переводить отправляющий буффер в прием собственного сообщения.


Вернуться к началу
СообщениеДобавлено: 2019-янв-24 11:07 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
редактор писал(а):
Цитата:
и еще в режиме прослушки снифер подключен.
Подключите снифер в активном режиме. Должны формироваться подтверждения приема другими узлами, иначе автоповтор передачи.
Да мне то как раз надо корректно работать с обрывом линии. Если линия связи восстанавливается - включаем прибор, то это самое последнее сообщение висящее в отправке прилетает к драйверу движков и включает его, когда программа и оператор и помнить о этом забыли. выглядит это поведение мистически....


Вернуться к началу
СообщениеДобавлено: 2019-янв-24 12:22 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 534
Вы бы написали письмо в техподдержку (форум им не указ), интересно их мнение по данному вопросу.


Вернуться к началу
СообщениеДобавлено: 2019-янв-24 16:26 
Не в сети

Зарегистрирован: 2018-окт-23 15:09
Сообщения: 9
Организация: АВИАТРАНС
Откуда: СПб
я думал что у них форум и есть техподдержка.


Вернуться к началу
СообщениеДобавлено: 2019-янв-24 17:50 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 534
Увы, когда-то техподдержка мне написала:
Цитата:
Форум является местом для свободного публичного общения клиентов между собой (под модерацией специально обученного человека). Остальным сотрудникам компании Миландр разрешено общаться на форуме в свободное от работы время. Реакция на запросы форума не является обязательной.


Вернуться к началу
СообщениеДобавлено: 2019-апр-20 17:11 
Не в сети

Зарегистрирован: 2014-дек-12 11:03
Сообщения: 15
Столкнулся с такой же проблемой на 1986ВЕ1Т. На 1986ВЕ9x пока не проверял, но ожидаю аналогичное поведение.

Если была активная передача в случае обрыва линии, то сброс регистров управления, выключение всех буферов на передачу (или вообще всех буферов) не приводит к остановке передачи. При включении контроллера CAN передача сразу продолжается до тех пор пока не завершится с успехом.

Ни в Errata, ни в документации это не описано. Хотя на мой взгляд поведение крайне неожиданное и стоило бы его описать.

Решил для себя проблему аналогичным образом, как это уже описано в данной ветке:
1. все буферы приёма/передачи выключены
2. контроллер запускается при инициализации на короткое время в режиме самотестирования с продтверждением собственных пакетов (SAP и STM).
3. после этого выключаю контроллер и инициализирую его необходимыми настройками в нормальный режим работы.


Вернуться к началу
СообщениеДобавлено: 2019-апр-22 12:43 
Не в сети

Зарегистрирован: 2017-апр-26 14:51
Сообщения: 472
Организация: Milandr
Откуда: ПКК "Миландр"
LecOsget писал(а):
Ни в Errata, ни в документации это не описано. Хотя на мой взгляд поведение крайне неожиданное и стоило бы его описать.
При отсутствии ответа CAN непрерывно шлет сообщения, так положено по стандарту CAN. Мне нравится эта статья по CAN - http://www.micromax.ru/solution/theory- ... cles/2160/
Цитата:
Вопрос: Что произойдет в случае, если единственный узел шины попытается отослать сообщение?

Ответ: Узел, разумеется, выиграет в разрешении конфликта и успешно проведет передачу сообщения. Но когда наступит время распознавания… ни один узел не отправит доминантный бит области распознавания, поэтому передатчик определит ошибку распознавания, пошлет флаг ошибки, повысит значение своего счетчика ошибок передачи на 8 и начнет повторную передачу. Этот цикл повторится 16 раз, затем передатчик перейдет в статус пассивной ошибки. В соответствии со специальным правилом в алгоритме ограничения ошибок, значение счетчика ошибок передачи не будет более повышаться, если узел имеет статус пассивной ошибки и ошибка является ошибкой распознавания. Поэтому узел будет осуществлять передачу вечно, до тех пор, пока кто–нибудь не распознает сообщение.
Выкрутиться можно тем, что принять свое же сообщение.
ЧумА писал(а):
Увы, когда-то техподдержка мне написала:
Цитата:
Форум является местом для свободного публичного общения клиентов между собой (под модерацией специально обученного человека). Остальным сотрудникам компании Миландр разрешено общаться на форуме в свободное от работы время. Реакция на запросы форума не является обязательной.
Это не совсем так. Вопросы с форума рассматриваются сотрудниками техподдержки, но с меньшим приоритетом, чем запросы пришедшие напрямую на support@milandr.ru. В первую очередь форум рассматривается как средство общения внутри сообщества. В лабораторных условиях мы не сталкиваемся со всем обилием проблем, которые возникают в реальных условиях того или иного применения нашей продукции. Поэтому сторонний опыт важен, не только прочим пользователям, но и нам. Делиться этим опытом - и есть предназначение данного форума. Со своей стороны мы благодарны многим участникам форума, кто помогает решать возникающие проблемы.

PS: из-за не совсем внятного движка, не всегда текущие вопросы видны как активные. На данную ветвь я наткнулся случайно и впервые.


Вернуться к началу
СообщениеДобавлено: 2019-апр-22 15:15 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1454
Откуда: Тула
Vasiliy писал(а):
PS: из-за не совсем внятного движка, не всегда текущие вопросы видны как активные. На данную ветвь я наткнулся случайно и впервые.
Отличный движок! Всё прекрасно индексируется поисковиками и мгновенно, молниеносно грузится!
Вот, делюсь ссылкой, которая прекрасно работает search.php?search_id=unreadposts
Добавьте её в закладки.

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2019-апр-22 18:14 
Не в сети

Зарегистрирован: 2017-апр-26 14:51
Сообщения: 472
Организация: Milandr
Откуда: ПКК "Миландр"
prostoRoman писал(а):
Вот, делюсь ссылкой, которая прекрасно работает search.php?search_id=unreadposts
Добавьте её в закладки.
Кнопка такая у меня есть, но с ней другая проблема. Прочитав "unreadposts" сообщение и не ответив сразу, сообщение из списка пропадает. А найти его заново очень не просто.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 28 сообщений ]  На страницу 1 2 »

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB