Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: CAN Open и AVR
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Controller Area Network (CAN)
Kovrov
Господа, стоит задача реализовать сей протокол.
Первое что пришло в голову это 90CAN128..
Вообще кто нибудь делал это на авр?
Хотелось узнать мнение и услышать советы...
Может есть какой софт-эмулятор и тд итп?
вообщем спасибо за любую информацию..
bodja74
Сам грызу такую тему,первые впечатления- вещь очень рулезная,если отбросить протоколы высокого уровня(там вообще темный лес) smile.gif

Больше склоняюсь к АТ89С51СС01 +Keil ,так как CAN128 слегка дороговат ,да и не нужно мне столько флеши.

По софту искал(типа сниффера) - все платное +адаптер тоже недаром smile.gif ,канадцы одну только микруху под адаптер на пике за 80 уев впихивают.

Если народ ,где что надыбал по теме на халявуsmile.gif выкладывайте !
=GM=
Цитата(bodja74 @ Mar 23 2007, 21:01) *
Сам грызу такую тему, первые впечатления - вещь очень рулезная, если отбросить протоколы высокого уровня (там вообще темный лес) smile.gif
Больше склоняюсь к АТ89С51СС01 +Keil ,так как CAN128 слегка дороговат ,да и не нужно мне столько флеши. По софту искал(типа сниффера) - все платное +адаптер тоже недаром smile.gif ,канадцы одну только микруху под адаптер на пике за 80 уев впихивают. Если народ, где что надыбал по теме на халявуsmile.gif выкладывайте !

Делал на TMS320F2808, никаких проблем. Есть куча номерных почтовых ящиков, надо послать, пишешь в ящик на передачу, при приёме сообщения взводится флаг (или прерывание), остаётся только прочитать.

Протокол сложный, и быстрый к тому же, так что никакого эмулятора, всё реализовано аппаратно.
В проце для тестирования можно завернуть выход передатчика на вход приёмника -вот и вся эмуляция(:-).
Kovrov
хорошо!
а внешние контроллеры CAN по SPI? слышал тоже есть.
TMS вешь приятная конечно..
но вопрос на сколько хуже контрролер CAN в AVR?

Цитата(=GM= @ Mar 24 2007, 02:43) *
Протокол сложный, и быстрый к тому же

сложно его в паблике найти?
beer_warrior
Цитата
а внешние контроллеры CAN по SPI? слышал тоже есть.

Гляньте у мелкочипа. Там целое семейство.
Kovrov
Спасибо!
а 90кан - действительно не дешевые...
vesago
Сам мечтаю эту тему поднять. Соскочить хочется с 485 и перейти на более прогрессивную технологию. Но делать наверное на арме буду. Вот тут вроде какой то инструментарий имеется.
SasaVitebsk
А я решил на LPC2119 реализовать. Когда IAR for ARM поставил, то там в примерах есть реализация библиотеки под этот камень. По EINFO он стоит ~7$. Флэши и рамы выше крыши. Ну и производительность 60 мипсов. Есть фильтр сообщений аппаратный. Правда я ещё не приступал. Так изучаю. Где-то ближе к осени начну.
=GM=
Цитата(Kovrov @ Mar 24 2007, 05:17) *
а внешние контроллеры CAN по SPI? слышал тоже есть.

Есть MCP2515, отдельный CAN-чип c SPI-выходом.
Цитата(Kovrov @ Mar 24 2007, 05:17) *
сложно его в паблике найти?

Залил http://nukeuploads.com/download/1174740697...an_bus.pdf.html
Код: OLYBpZDOWzqMXA8 p/w: canbus
Kovrov
Цитата(SasaVitebsk @ Mar 24 2007, 15:42) *
А я решил на LPC2119 реализовать. Когда IAR for ARM поставил, то там в примерах есть реализация библиотеки под этот камень. По EINFO он стоит ~7$. Флэши и рамы выше крыши. Ну и производительность 60 мипсов. Есть фильтр сообщений аппаратный. Правда я ещё не приступал. Так изучаю. Где-то ближе к осени начну.

у нас прям мысли одинаковые вот только сейчас читал книжку про филипсовские LPC
тоже все вокруг и около него хожу...
кстати книжка на русском и кан интерфейс достаточно полно разжеван...

Цитата(=GM= @ Mar 24 2007, 15:57) *
Есть MCP2515, отдельный CAN-чип c SPI-выходом.

Залил [url=http://nukeuploads.

Спасибо всегда очень полезно оригинальное описание..
Вот ещё бы CAN open найти...
обещали на неделе люди с которыми предстоит этот протокол налаживать...
но как то уж очень нехотя все это делают...


Цитата(vesago @ Mar 24 2007, 15:00) *
Сам мечтаю эту тему поднять. Соскочить хочется с 485 и перейти на более прогрессивную технологию. Но делать наверное на арме буду. Вот тут вроде какой то инструментарий имеется.

А что давайте поработаем на этом направлении уж больно сладко все поют про этот кан...
SasaVitebsk
Документации у меня полно. Книга эта тоже есть. Правда мне не нужен Can-open. У меня автомобильный SAE J1939. Хотя по-моему где-то есть описание CAN-open. Если надо поищу и выложу (анг)

На счёт замены RS485 - это явный перебор. Это разные интерфейсы и для разных целей. Я сейчас применяю RS485. Проверил на дальность 300 метров. К тому же RS485 реализуется за 2 копейки и легко подключается к компу. А если делать CAN, да ещё высокоскоростной, то реализация будет отнюдь не дешёвой.

Кстати есть реализация USB<->CAN. Русская. С прогами. В том числе и снифер реализован.
Дали мне адресок www.slavna.ru

Мы наверное обратимся. Так как нам надо к чужой сети подключатся со своим прибором.
bodja74
Цитата(SasaVitebsk @ Mar 24 2007, 21:25) *
У меня автомобильный SAE J1939.


Скинь мне плиз на мыло поглазеть smile.gif ,или ссылку.
bodja74
Цитата(=GM= @ Mar 24 2007, 15:57) *
Есть MCP2515, отдельный CAN-чип c SPI-выходом.

О ,то что доктор прописал,ДИП корпус мне ближе по духу smile.gif
MicroChip - forever! ГЫ-ГЫ-ГЫ smile.gif
SasaVitebsk
Цитата(bodja74 @ Mar 24 2007, 23:04) *
Скинь мне плиз на мыло поглазеть smile.gif ,или ссылку.


Выделил для тебя. Посмотрел 13.5 метров. blink.gif И это только основные. Я ещё раз пересмотрю и вышлю тебе самые важные. А остальных скину названия. Может разыщешь в инете.

Ссылок нет так как эти документы приехали непосредственно с Даймлера, Дейтройта и ещё откуда-то.
spf
Цитата(Kovrov @ Mar 24 2007, 21:37) *
Цитата
А я решил на LPC2119 реализовать. Когда IAR for ARM поставил, то там в примерах есть реализация библиотеки под этот камень. По EINFO он стоит ~7$. Флэши и рамы выше крыши. Ну и производительность 60 мипсов. Есть фильтр сообщений аппаратный. Правда я ещё не приступал. Так изучаю. Где-то ближе к осени начну.
у нас прям мысли одинаковые вот только сейчас читал книжку про филипсовские LPC
тоже все вокруг и около него хожу...
кстати книжка на русском и кан интерфейс достаточно полно разжеван...

Почитать ерату не забудьте, реализация CAN у филипса та еще ...



Цитата(SasaVitebsk @ Mar 25 2007, 00:25) *
На счёт замены RS485 - это явный перебор. Это разные интерфейсы и для разных целей. Я сейчас применяю RS485. Проверил на дальность 300 метров. К тому же RS485 реализуется за 2 копейки и легко подключается к компу. А если делать CAN, да ещё высокоскоростной, то реализация будет отнюдь не дешёвой.

Эх, уже сколько раз писалось... не путайте понятия: RS485 - физический уровень, и ВСЕГО ЛИШЬ!, а CAN - протокол с аппаратной реализацией арбитража и т.д. в первую очередь(два уровня OSI), имеется его физический уровень, но CAN может работать и по RS485.
Kovrov
Цитата(SasaVitebsk @ Mar 25 2007, 01:32) *
Выделил для тебя. Посмотрел 13.5 метров. blink.gif И это только основные. Я ещё раз пересмотрю и вышлю тебе самые важные. А остальных скину названия. Может разыщешь в инете.

Ссылок нет так как эти документы приехали непосредственно с Даймлера, Дейтройта и ещё откуда-то.

да выложили бы на какой нибудь аплоад напимер на местный..
тоже очень интересно..

Цитата(spf @ Mar 25 2007, 10:46) *
Почитать ерату не забудьте, реализация CAN у филипса та еще ...

если не сложно в двух словах какие грабли??

Цитата(SasaVitebsk @ Mar 24 2007, 21:25) *
На счёт замены RS485 - это явный перебор. Это разные интерфейсы и для разных целей.

да полностью правы, особенно касается места, где в сообщении только макс 8 байт...
несколько сковывает...
bgc
Цитата(spf @ Mar 25 2007, 10:46) *
но CAN может работать и по RS485.

Интересное утверждение! А что использовать в качестве драйвера линии?
Или как давать подтверждение приема пакета?
Ведь в 485 нет приоритеного нуля...
spf
Цитата(bgc @ Mar 25 2007, 17:14) *
Интересное утверждение! А что использовать в качестве драйвера линии?
Или как давать подтверждение приема пакета?
Ведь в 485 нет приоритеного нуля...

Голь на выдумки щедра wink.gif
На заре CAN, лет 6-7 назад, когда драйвера CAN были дороги, в дифиците и не устойчивы к радиации, то ставили драйвера RS485.

http://electronix.ru/forum/index.php?showtopic=8758&hl=
Kovrov
Господа всетаки кто скажет что в подержку 90CAN128?
SasaVitebsk
Цитата(spf @ Mar 25 2007, 11:46) *
у нас прям мысли одинаковые вот только сейчас читал книжку про филипсовские LPC
тоже все вокруг и около него хожу...
кстати книжка на русском и кан интерфейс достаточно полно разжеван...
Почитать ерату не забудьте, реализация CAN у филипса та еще ...
Эх, уже сколько раз писалось... не путайте понятия: RS485 - физический уровень, и ВСЕГО ЛИШЬ!, а CAN - протокол с аппаратной реализацией арбитража и т.д. в первую очередь(два уровня OSI), имеется его физический уровень, но CAN может работать и по RS485.


Я читал ветку по CAN от Филипса. Пока меня не отпугнули.

Я не путаю. И Вы пожалуйста не обобщайте. RS-485 определяет не только физический уровень передачи сигнала, а и временные составляющие. А именно способ передачи байта. Старт бит - данные - контроль - стоп бит. Таким образом Ваше заявление насчёт работы CAN по rs485 на мой взгляд ошибочно. Возможно Вы хотели сказать, что может работать с передатчиками rs485. Но это такое же упрощение как и моё.
SasaVitebsk
Добавил документ на местный FTP

upload/DOCs/CAN_AUTO_SAE_J1939.zip

Там небольшая куча файлов. Необходима для применения в автомобилях. Расписано что педаль газа на CAN выводит. Как кодируется давление и температура масла и какое именно CAN сообщение. Какие разъёмы и какие контакты. smile.gif

Короче те кто собирается спидометр откручивать, то вам сюда. biggrin.gif



Богдан, тебе уже давно пора переходить в группу "свой". smile.gif
spf
Цитата(SasaVitebsk @ Mar 26 2007, 02:18) *
Я не путаю.

Значит заблуждаешься ;-) аданазначна, мое высказывание - обобщение общеизвестных фактов, а не мои личные измышления.

Цитата
И Вы пожалуйста не обобщайте. RS-485 определяет не только физический уровень передачи сигнала, а и временные составляющие. А именно способ передачи байта. Старт бит - данные - контроль - стоп бит.

Стопы и старты определяются UART'ом, а не RS485. Покажите мне доку на драйвер физических уровней 422/485 в которой описаны стопы и старты...

Цитата
Таким образом Ваше заявление насчёт работы CAN по rs485 на мой взгляд ошибочно.

Это не мое заявление, а всемирная практика, хоть и забытая.
Представленную схему рисовал не я, лежала на совершенно официальном сайте и проверено -- работает.
Kovrov
Ребят, ну всетаки где можно найти описание CAN open.?
SasaVitebsk
Цитата(Kovrov @ Mar 26 2007, 10:28) *
Ребят, ну всетаки где можно найти описание CAN open.?


не прикрепляется. Короче на FTP там же.
vesago
canopen давно лежит на фтп в доках. Но мне кажется если не применять дивайс в составе автомобиля, система которого на канопене, лучьше пользовать самопальный протокол. 485 vs CAN - понравилось, что аппаратно много чего реализовано. Смотрел проектец Елисеева Александра http://aly.projektas.lt/index.html - управление полигоном на пике. Отлично легло, хотя логично было бы на 485 делать. Кстати хотел спросить - надо ли при переключении драйвера 485 делать задержку на 1 млс? Под армы лучьше писать в Кейле.
bodja74
Цитата(SasaVitebsk @ Mar 26 2007, 00:51) *
Добавил документ на местный FTP

upload/DOCs/CAN_AUTO_SAE_J1939.zip

Там небольшая куча файлов. Необходима для применения в автомобилях. Расписано что педаль газа на CAN выводит. Как кодируется давление и температура масла и какое именно CAN сообщение. Какие разъёмы и какие контакты. smile.gif

Короче те кто собирается спидометр откручивать, то вам сюда. biggrin.gif
Богдан, тебе уже давно пора переходить в группу "свой". smile.gif


Большое спасибо,только не откручивать спидометр нужно ,а скручивать не откручивая smile.gif (CAN это позволяет) если такая инфа есть ,ты даже не представиш сколько с меня пива blink.gif ,теперь ламерский вопрос как перейти в группу "свой" ,я думал что это зависит от количества постов smile.gif
SasaVitebsk
Цитата(bodja74 @ Mar 26 2007, 22:18) *
Большое спасибо,только не откручивать спидометр нужно ,а скручивать не откручивая smile.gif (CAN это позволяет) если такая инфа есть ,ты даже не представиш сколько с меня пива blink.gif ,теперь ламерский вопрос как перейти в группу "свой" ,я думал что это зависит от количества постов smile.gif


http://electronix.ru/forum/index.php?showforum=89

smile.gif
IgorKossak
Цитата(bodja74 @ Mar 26 2007, 22:18) *
Большое спасибо,только не откручивать спидометр нужно ,а скручивать не откручивая smile.gif (CAN это позволяет) если такая инфа есть ,ты даже не представиш сколько с меня пива blink.gif ,теперь ламерский вопрос как перейти в группу "свой" ,я думал что это зависит от количества постов smile.gif

Это очень давно было, когда в свои можно было попасть автоматически по достижении счётчиком постов некоторой цифры. Сейчас надо заявить о себе явно в специальной для этого ветке.
Kovrov
Ну и всетаки так и не кто не выссказался об CAN в AVR?
Не верю что никто неюзал!!
Или мне первому попробывать? :-)
by-pass
Цитата(Kovrov @ Mar 27 2007, 09:33) *
Ну и всетаки так и не кто не выссказался об CAN в AVR?
Не верю что никто неюзал!!
Или мне первому попробывать? :-)


CAN вполне сносный. Все mailbox, маски, фильтры работают, сеть из 5 AT128CAN и TMS320F28. Правда не использовал прерывания, все через полинг, прием и отправка. Единственный подвох - это то, что надо вручную очищать статусные регистры, иначе событие будет висеть бесконечно, но это решается через RTFM.
И еще, был момент, когда пропадали некоторые пакеты от TMS, но предположительно это проблемы программиста TMS(отравлял не глядя на статусные флаги).

PS. Длинна шины 5м, скорость 1Мбит.
Kovrov
спасибо
lamerok
Цитата(Kovrov @ Mar 27 2007, 12:33) *
Ну и всетаки так и не кто не выссказался об CAN в AVR?
Не верю что никто неюзал!!
Или мне первому попробывать? :-)


Работает, никаких проблем замечено не было.....
CAN стек реализован на С++.... связь до 7 устройств.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.