ToniPizecato 0 5 апреля, 2009 Опубликовано 5 апреля, 2009 · Жалоба Доброго времени суток, господа. Возникла необходимость состыковать несколько процессоров посредством CAN шины. Два процессора TI TMS и два ARM lpc2119. В качестве трансиверов на все платы были выбраны TJA1040. При подключении двух процессоров ARM, сеть работает на отлично. Принимает, посылает без каких-либо помех и ошибок. Так же и с процессорами TMS - вдвоем работают без нареканий. Однако, при состыковке ARM с TMS, последний начинает сильно ошибаться. Откликается с ошибками. по одному запросу, посылает два\четыре\одиннадцать ответов. Все скорости согласованы. Топологию шины пересмотрели со всех сторон. В чем может быть проблема состыковки, если учесть, что процессоры одного и того же типа работают друг с другом нормально, а разные нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slavka012 0 5 апреля, 2009 Опубликовано 5 апреля, 2009 · Жалоба А посмотреть что собственно на шине при этом происходит не пробовали? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToniPizecato 0 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба мониторим USB-CAN переходником. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба Длина линии? Скорость обмена? Терминаторы на шине есть? В настройках CAN контроллера посмотрите, как настраиваются параметры tSJW tTSEG1 tTSEG2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DogPawlowa 0 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба Длина линии? Скорость обмена? Терминаторы на шине есть? Да, типичные проявления задержек шины. Осциллографом смотреть нужно, а не мониторами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToniPizecato 0 6 апреля, 2009 Опубликовано 6 апреля, 2009 · Жалоба Длина линии? Скорость обмена? Терминаторы на шине есть? В настройках CAN контроллера посмотрите, как настраиваются параметры tSJW tTSEG1 tTSEG2 Длина линии около 30 см. Скорость обмена - 500 кб\с. Терминаторы на концах шины - 130 Ом между CAN_H и CAN_L. При 20 МГц, TSEG1 = 6, TSEG2 = 1, SJW = 1 (регистры). Используем витые пары с RJ-4 коннекторами. Да, типичные проявления задержек шины. Осциллографом смотреть нужно, а не мониторами. К сожалению, осциллографом попользоваться нет возможностей. Раз уж по кану без проблем общаются одинаковые ARM платы, то дело не совсем в шине\терминаторах и тд. Видимо, есть разница в выставлении tseg1, tseg2, brp, sjw. Об этом думали и состыковывали параметр SJW для арма и тмс. Не помогло. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Axel 1 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба Скорость снижать пробовали? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToniPizecato 0 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба Скорость снижать пробовали? да. с 1Mb\s до 500kb\s. Или Вы имеете в виду еще меньше попробовать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Axel 1 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба Да. Имеет смысл попробовать на минимальных скоростях (ИМХО). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба Да. Имеет смысл попробовать на минимальных скоростях (ИМХО). при длине линии связи 30 см (то есть всё на столе) уже совершенно нет смысла пробовать скорость ниже 500, дело явно не в этом. Длина линии около 30 см. Скорость обмена - 500 кб\с. Терминаторы на концах шины - 130 Ом между CAN_H и CAN_L. При 20 МГц, TSEG1 = 6, TSEG2 = 1, SJW = 1 (регистры). Используем витые пары с RJ-4 коннекторами. К сожалению, осциллографом попользоваться нет возможностей. Запрещают? :) Раз уж по кану без проблем общаются одинаковые ARM платы, то дело не совсем в шине\терминаторах и тд. Видимо, есть разница в выставлении tseg1, tseg2, brp, sjw. Об этом думали и состыковывали параметр SJW для арма и тмс. Не помогло. Скажите, а у вас гальванической развязки случаем нет между контроллером и драйвером CAN? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToniPizecato 0 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба Запрещают? :) почти правда.) Скажите, а у вас гальванической развязки случаем нет между контроллером и драйвером CAN? На армах нет. На тексасах стояла ADUM1201AR. Выяснили, что она медленная и мегабит не пропустит. Выпаяли. Но не помогло. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slavka012 0 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба почти правда.) Тогда лоджик аналайзером ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Axel 1 7 апреля, 2009 Опубликовано 7 апреля, 2009 · Жалоба при длине линии связи 30 см (то есть всё на столе) уже совершенно нет смысла пробовать скорость ниже 500, дело явно не в этом. На низких скоростях меньше влияет нестыковка по таймингу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Wano 0 8 апреля, 2009 Опубликовано 8 апреля, 2009 · Жалоба Мож не в тему. Была подобная проблема. LPC + LPC через CAN. Один на 60 МГц другой на 48 . Настройка CAN у обоих для 125 кбит. И хоть ты тресни, посылки через раз, а то и реже. Решили, что проблема в TSEG-ах, так как диалоговый модуль от IFM в сети видел посылки обоих контроллеров. Париться не стали, сделали оба проца на 60 МГц и забыли про проблему. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться