Jump to content

    

Дешёвый способ посадить устройство на CAN?

Требуется, чтобы одноплатник мог общаться с простыми устройствами по CAN. У одноплатника CAN-интерфейс есть. Понимаю, что можно использовать микроконтроллер и CAN-трансивер, например MCP2551. В теме я чайник, какое сочетание контроллера и трансивера посоветуете, чтобы было максимально дёшево? Планируется использование для совсем "тупых" устройств, типа кнопки или светодиода, переплачивать не хотелось бы. Нравится идея контроллера со встроенным трансивером, например NXP LPC11C24, но цена кусается ($20).

Share this post


Link to post
Share on other sites
1 час назад, baritono сказал:

какое сочетание контроллера и трансивера посоветуете, чтобы было максимально дёшево?

SAMC + TJA1050 например.

Share this post


Link to post
Share on other sites
1 час назад, baritono сказал:

например NXP LPC11C24, но цена кусается ($20).

Без труда можно найти дешевле.

Share this post


Link to post
Share on other sites

Да, что-то я напутал: LPC11C24 на Digikey < $5. С другой стороны, самый дешёвый SAMC $1.35 + TJA1050 $1.26 ещё дешевле. В схемотехническом и монтажном плане с двумя чипами сильно больше возни?

Share this post


Link to post
Share on other sites
7 часов назад, baritono сказал:

TJA1050 $1.26

$0.5, что-то у вас с поиском проблемы.

 

7 часов назад, baritono сказал:

В схемотехническом и монтажном плане с двумя чипами сильно больше возни?

Больше на 6 ножек.

Share this post


Link to post
Share on other sites

Есть удачный опыт работы с MCP25625. Тогда можно взять любой дешевый контролер в связке. Хотя сегодня контролеры с интегрированным CAN тоже стоят довольно дешево.

 

Share this post


Link to post
Share on other sites
On 2/1/2019 at 8:35 PM, baritono said:

В теме я чайник, какое сочетание контроллера и трансивера посоветуете, чтобы было максимально дёшево?

Интересно, эта тема совсем устарела или нет? Вроде должна давать ответ на ваш вопрос

 

Share this post


Link to post
Share on other sites
В 01.02.2019 в 22:35, baritono сказал:

Планируется использование для совсем "тупых" устройств, типа кнопки или светодиода, переплачивать не хотелось бы.

Здесь нет смысла впиндюривать КАН. Самое удачное - RS-485. Очень дешево и сердито, уарт есть в каждом МК сегодня...

Share this post


Link to post
Share on other sites
2 часа назад, mantech сказал:

Самое удачное - RS-485.

И как на 485 красиво разрулить хотя бы два устройства с кнопками? Постоянным опросом? А когда кнопок станет 200?

Share this post


Link to post
Share on other sites
4 часа назад, Сергей Борщ сказал:

И как на 485 красиво разрулить хотя бы два устройства с кнопками? Постоянным опросом? А когда кнопок станет 200?

Как ни странно - да! Прекрасно работает с кучей кнопок, релюшек и еще пакетный обмен с компом и самое страшное - еще устройства с автодетектом, но это уже для гурманов :biggrin:  Не вижу ничего плохого в опросе. 

Share this post


Link to post
Share on other sites
1 час назад, mantech сказал:

еще устройства с автодетектом

Как это вы умудрились сделать автодетект на шине без арбитража? Расскажите пожалуйста, очень интересно.

Share this post


Link to post
Share on other sites
4 минуты назад, AHTOXA сказал:

Расскажите пожалуйста, очень интересно.

Да очень просто. Устройство при получении своего адреса выдает соотв. ответ. Через каждые N пакетов выдается запрос с новым адресом, которого еще нет в "списке живых", если этот адрес "ответит" - значит устройство подключено. Если уже подключенное устройство 3 раза не отвечает - считается, что его больше нет.  В среднем на полный поиск нового устройства отводится не больше секунды при скорости 115200.

Share this post


Link to post
Share on other sites
22 минуты назад, mantech сказал:

Устройство при получении своего адреса выдает соотв. ответ.

А адреса на 200 устройств вы вручную распределяли? Тогда это неинтересно :)

Share this post


Link to post
Share on other sites
20 минут назад, AHTOXA сказал:

А адреса на 200 устройств вы вручную распределяли?

Тут не в интересе дело. Адрес разделен на 3 бита - группа устройств и 5 бит адрес. Группа задается при прошивке, адрес 2мя способами - конфигурация через терминал или джамперы. Всякую муть типа, широковещательное чудо-юдо с 48, 64 битными уникальными кодами, таблицы хэшей и пр... были отвергнуты сразу по причине ненадежности и значительному усложнению кода. Данный протокол предназначался для 8 и 32х битных контроллеров...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now