Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Пересинхронизация "запаздывающего" контроллера
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Controller Area Network (CAN)
sabaka
Есть некоторое недопонимание процесса.

Известно, что один бит в CAN состоит из четырех сегментов - SYNC, PROPAGATION, PHASE1, PHASE2. Контроллер читает бит с шины между PHASE1- и PHASE2-сегментами и, если надо, выставляет ответ на шину в начале SYNC-сегмента, причем выставляемый бит зависит от считанного. Время, которое нужно контроллеру на то, чтобы вычислить значение выставляемого бита на основе считанного, называется IPT, и для большинства виденных мною контроллеров равно двум временным квантам, при этом в стандарте сказано, что PHASE2 >= IPT.

Допустим, что IPT = PHASE2 и отрицательный фронт на шине пришел до SYNC-сегмента, т.е. передатчик работает быстрее приемника (не рассматриваем передачу Start-of-frame, т.е. хард-синхронизацию, там все ясно). Контроллер, увидев это, пересинхронизируется (софт-синхронизацией) путем уменьшения PHASE2-сегмента, таким образом PHASE2 становится меньше IPT, что запрещено стандартом. Внимание, вопрос. Когда на самом деле контроллер выставляет данные на шину?
Linker
Цитата(sabaka @ Mar 10 2011, 14:32) *
Время, которое нужно контроллеру на то, чтобы вычислить значение выставляемого бита на основе считанного, называется IPT,

Разве передатчик вычисляет значение своего выставляемого бита? В фазе арбитража передатчик анализирует шину на наличие доминантного уровня. И если на шине другой узел выставил доминанту, а у передатчика посылаемый бит рецессивный, то он проигрывает арбитраж, прекращает передачу и отпускает шину.
sabaka
На самом деле, я нашел в стандарте маааленькую приписку, что "if Phase_Seg2 is shortened to a value less than the information processing time, the calculation of the subsequent bit level may be completed after the end of Phase_Seg2", так что вопрос снимается.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.