Перейти к содержанию
    

Не могу отправить сообщение по шине CAN

Добрый день!

 

Инициализировал контроллер LPC2368 для работы по шине CAN. И теперь наблюдаю интересную особенность - все сообщения отправленные с компьютера по шине CAN контроллером прекрасно принимаются и без ошибок, однако не выдается подтверждение на линию с ошибкой в регистре CAN1ICR->ERRBIT = 0x19 - Acknowledge slot. Ровно так же не получается отправить что-либо на шину CAN c контроллера, но уже с кодом ошибки CAN1ICR->ERRBIT = 0x03 - Start of frame. В связи с этим я пришел к выводу, что контроллер может читать данные с линии, но что-либо изменять на ней не может. Контроллер CAN работает в обычном режиме ( НЕ Listen only Mode). Если у кого-нибудь есть идеи, с чем это может быть связано, отпишитесь пожалуйста.

 

Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Самая первая проверка - "подрыгать" ножкой передатчика в режиме GPIO, осциллом проверить, что:

- ножки на трансивере шевелятся аналогично

- на входе приёмника тоже есть этот сигнал

 

Тут похоже на косяк монтажников или какой-то сберегающий режим трансивера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно неправильно согласованы сопротивления на шине.

 

А вообще осцилографф в помощь, взять да посмотреть пытается ли что-то контроллер отправлять или молчит как пень. Может тупо забыли ногу кану отдать или отдали не ту.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

однако не выдается подтверждение на линию с ошибкой в регистре CAN1ICR->ERRBIT = 0x19 - Acknowledge slot. Ровно так же не получается отправить что-либо на шину CAN c контроллера, но уже с кодом ошибки CAN1ICR->ERRBIT = 0x03 - Start of frame.

Контроллер CAN работает в обычном режиме ( НЕ Listen only Mode).

В этом и ошибка! Этот режим предназначен автонастройки скорости CAN.

Как Вы хотите отправить сообщение с контроллера, если он в LO режиме?

В ListenOnly режиме физически запрещается выход, следовательно, ни отправить, ни принять сообщения (при отсутствии других приемников на линии не будет некому выставить бит подтверждения) не получится.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В этом и ошибка!

Вообще-то там так и написано, что

Контроллер CAN работает в обычном режиме ( НЕ Listen only Mode).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...