Миландр

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

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 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
Сообщения: 505
ВЕ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
Сообщения: 505
Цитата:
1)отключаю линию КАН - висит в воздухе.

Кстати, а как висит и кто висит :)? Если к выводам шинного драйвера не подключена нагрузка, то ROP=1 и не поможет.


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

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

висит в воздухе с терминатором. и еще в режиме прослушки снифер подключен.


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

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

Подключите снифер в активном режиме. Должны формироваться подтверждения приема другими узлами, иначе автоповтор передачи.

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

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 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
Сообщения: 505
Вы бы написали письмо в техподдержку (форум им не указ), интересно их мнение по данному вопросу.


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

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


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

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 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
Сообщения: 366
Откуда: ПКК "Миландр"
LecOsget писал(а):
Ни в Errata, ни в документации это не описано. Хотя на мой взгляд поведение крайне неожиданное и стоило бы его описать.

При отсутствии ответа CAN непрерывно шлет сообщения, так положено по стандарту CAN. Мне нравится эта статья по CAN - http://www.micromax.ru/solution/theory- ... cles/2160/

Цитата:
Вопрос: Что произойдет в случае, если единственный узел шины попытается отослать сообщение?

Ответ: Узел, разумеется, выиграет в разрешении конфликта и успешно проведет передачу сообщения. Но когда наступит время распознавания… ни один узел не отправит доминантный бит области распознавания, поэтому передатчик определит ошибку распознавания, пошлет флаг ошибки, повысит значение своего счетчика ошибок передачи на 8 и начнет повторную передачу. Этот цикл повторится 16 раз, затем передатчик перейдет в статус пассивной ошибки. В соответствии со специальным правилом в алгоритме ограничения ошибок, значение счетчика ошибок передачи не будет более повышаться, если узел имеет статус пассивной ошибки и ошибка является ошибкой распознавания. Поэтому узел будет осуществлять передачу вечно, до тех пор, пока кто–нибудь не распознает сообщение.


Выкрутиться можно тем, что принять свое же сообщение.

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


Это не совсем так. Вопросы с форума рассматриваются сотрудниками техподдержки, но с меньшим приоритетом, чем запросы пришедшие напрямую на support@milandr.ru. В первую очередь форум рассматривается как средство общения внутри сообщества. В лабораторных условиях мы не сталкиваемся со всем обилием проблем, которые возникают в реальных условиях того или иного применения нашей продукции. Поэтому сторонний опыт важен, не только прочим пользователям, но и нам. Делиться этим опытом - и есть предназначение данного форума. Со своей стороны мы благодарны многим участникам форума, кто помогает решать возникающие проблемы.

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

_________________
Отдел технической поддержки support@milandr.ru


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

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1309
Откуда: Тула
Vasiliy писал(а):
PS: из-за не совсем внятного движка, не всегда текущие вопросы видны как активные. На данную ветвь я наткнулся случайно и впервые.

Отличный движок! Всё прекрасно индексируется поисковиками и мгновенно, молниеносно грузится!
Вот, делюсь ссылкой, которая прекрасно работает search.php?search_id=unreadposts
Добавьте её в закладки.

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


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

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

Кнопка такая у меня есть, но с ней другая проблема. Прочитав "unreadposts" сообщение и не ответив сразу, сообщение из списка пропадает. А найти его заново очень не просто.

_________________
Отдел технической поддержки support@milandr.ru


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

Часовой пояс: UTC + 3 часа


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

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


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

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB