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

 
 
> Затыкается CAN :(, 2-а узла
Vlad1977
сообщение May 28 2013, 11:18
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 13-04-09
Пользователь №: 47 606



Есть 2-а кнтроллера, М и S они общаются между сосбой по кан. М отправляет на S каждые 60мс посылку, S в свою очередь, отвечает на каждую принятую посылку. ID MSK задана жестко, IDT у каждого свой. Все работает минут 20, а потом порисходит сбой. Или только на М, он перестает принимать посылки от S, хотя S от него все получает и отвечает. Или же обмен прекращается вообще. Может кто сталкивался с подобным? контроллер atmel 128 скокрость минимальная 100Kbps на 8 Мгц. При том вижу на осцилографе, M посылает посылку, S отвечает. Время ответа дышит, то 1мс то 10мс, но иногда ответ перекрывается с запросом, и именно в этот момент может упасть обмен вообще. Но адреса то ID разные и маска жестко задана. Если увелить время когда M шлет запрос, то работает дольше, но очень хотется понять прчину sad.gif. Даже в отладке ловил, в BUS OFF M не попадает. CANSIT2 показывает что отправка прошда успешно, и я вижу, что S всё принял и ответил правилльно. А М отказывается от него получать данные. Было такое: на М возведен флаг RXOK на мобе который натсроен на прием, но в CANSIT2 никакого события о приеме нет.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vlad1977
сообщение May 30 2013, 11:10
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 13-04-09
Пользователь №: 47 606



Автомотический контроль сообщений я и включал и выключал, ситуация не меняется. Это я так понимаю Режим TTC, по умолчанию он включен. Отключается установкой бита CANGCON=(1<<TTC). Я прямо вижу на осцил., елси он включен и я разрываю линию, физически отсоединив провод, то сразу нафинают валить сообщения. А как только лини включаю то они передаеются именно с той частотой, с которой я их и посылаю. Те это еще раз подверждает что передача завершается типа успешно, хотя на принимающей стороне, я не попадаю на моб настроееннный на прием после конфликта вообще.

Контроллеры полностью одинаковые AT90CAN128. Затыкается именно на прием, вначале один потом втрой, или же могут оба одновременно, почему пока понять не могу....Но чаще первым затыкается тот у которого ID на отправку меньше. А после него проходит пара минут и второй тоже уходит. Елси возникает арбитраж, я в прерывание не попадаю, как мне понять что он произошел и надо что то сделать? Ведь никаких ошибок, все передается, и программа думает что все номально.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 18:56
Рейтинг@Mail.ru


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