|
Максимально безпроблемный комплект CAN для AVR |
|
|
|
Nov 19 2013, 16:10
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
Добрый день! Сразу скажу, все темы в этом разделе прочитал, их тут немного. Что-то уже обсуждалось, но лет 3-8 назад  Может ситуация изменилась к 2014-му году, тогда прошу подсказать! Задумал кое-какую домашнюю автоматизацию на CAN сделать. Устройств порядка 20-30. Опыта в схемотехнике почти нет, только по готовой схеме платы рисовал и ЛУТил. Паять буду паяльником, так что ARM-ы и 32битные AVR, увы, отпадают. Очень хочется использовать atmega в DIP-корпусе, чтобы была возможность устройства перепрошивать уже установленные (вытаскивая аврку из панельки ). Так что ATMEGA16M1 и AT90CAN32 очень нежелательный вариант. Про Микрочиповские MCP2551 и MCP2515 тут все категорически пишут, что с кучей багов чипы. Не уверен, что осилю качественно обойти все грабли. Может это уже неактуально в 2014-м? Или они ничего не меняли? Так же неясно по связке SJA1000T + TJA1041. Там errata есть, но меньше или прямо совсем всё шикарно? И сколько примерно кода занимает библиотека работы с SJA1000T, если не секрет? Цена у китайцев очень радует $0.5 за контроллер и $0.5 за драйвер. Для меня это пока фаворит. AT90CAN32-16AU или ATMEGA16M1-AU тоже рассматриваю. Я так понимаю, с ними лучше использовать ATA6660. А там с глючностью хорошо или тоже есть, но поменьше, чем у MCP? Про младшие АРМы, кстати, тоже в какой-то ветке писали что у LPC именно реализация плохая с кучей багов. А к STM32F105R8 это относится? LQFP64 с горем пополам всё-таки можно будет припаять. Хотя, программатор и плата выйдет подороже и платформу менять таки не очень хочется. Может появились ещё какие-то варианты? p.s. Ещё важный момент - логистика. В нашей деревне ничего не купишь, а если купишь, ни в жизнь не продашь. Поэтому все варианты с "взять всего понемногу" и посмотреть, будут стоить необоснованно дорого и растянутся на полгода. Планирую определиться с платформой и заказать через алибабу сразу 30 комплектов. Это и то растянется на 1.5-2 месяца. Почта РФ, блин
Сообщение отредактировал пай-мальчик - Nov 19 2013, 16:45
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 28)
|
Nov 20 2013, 04:27
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
Уж не знаю, все это или только часть. Как минимум 6 аппаратных багов. http://ww1.microchip.com/downloads/en/DeviceDoc/80179g.pdfХотя, документ 2007-го года. Может быть сейчас если сделать заказ, придёт какая-нибудь В10 ревизия, уже вылизанная? А SJA и TJA например наоборот, стали глючными. Я поэтому и задал вопрос, что хочу узнать что с годами поменялось?
|
|
|
|
|
Nov 20 2013, 05:49
|

Знающий
   
Группа: Свой
Сообщений: 738
Регистрация: 13-01-11
Из: Минск
Пользователь №: 62 210

|
Цитата(пай-мальчик @ Nov 20 2013, 07:27)  Уж не знаю, все это или только часть. Как минимум 6 аппаратных багов. http://ww1.microchip.com/downloads/en/DeviceDoc/80179g.pdfХотя, документ 2007-го года. начнем с того, что их там не 6, а 5. Из них 3 были исправлены еще до 2007г, столкнуться с двумя оставшимися практически не реально, причем приведены простые шаги, как их избежать совсем. Это полный список багов, про которые все массово категорически пишут? Цитата(пай-мальчик) Про Микрочиповские MCP2551 и MCP2515 тут все категорически пишут, что с кучей багов чипы.
|
|
|
|
|
Nov 22 2013, 07:46
|
Частый гость
 
Группа: Участник
Сообщений: 121
Регистрация: 27-04-09
Из: Украина
Пользователь №: 48 342

|
AVR - это так, для ознакомления, последнее время стоимость авров практически равна стм32, а у последних намного выше функционал. И ещё минус к атмелю, баснословно дорогие программирующе-отладочные устройства (программатор и отладчики по жетагу). Для стм32 есть куча свободных клонов, можно и самому повторить, а если напряг то и купить, стоит очень демократично. У стм32 встроенный КАН контроллер, это минус один корпус, да и по цене приятно. Запаять QFP64 - не проблема, если использовать тоненькое жало и паять под увеличительным стеклом (я так делаю, так как зрение не 100%), и всё паяется и работает, так что "не так страшен чёрт, как его малюют"
|
|
|
|
|
Nov 22 2013, 14:00
|
Частый гость
 
Группа: Участник
Сообщений: 121
Регистрация: 27-04-09
Из: Украина
Пользователь №: 48 342

|
Цитата(Vasily_ @ Nov 22 2013, 13:37)  Дракоша ну очень дорогой, аж целых 44евро.  Не знаю, как на счёт вышеприведённой суммы, но вот более дорого: цена_драгон
|
|
|
|
|
Nov 23 2013, 04:16
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
У меня под AVR уже есть usbasp за $3 и в шкафу jtag ice 1 валяется за $7, не пригождался ещё. У ARM для данной задачи есть фатальный минус - ATMEGA будет в DIP-панельках. Захотел поменять функционал, выключил питание, вытащил чип и перепрошил на рабочем месте. А не со стремянки с ноутбуком под потолком в сортире  Кстати, тут другой нюанс вылез. На алибабе написал где-то 50 продаванам и они разделились на два лагеря. У одних цена за SJA1000 $0.5-0.7 и столько же за tja1041, другие тельняшку на груди рвут, что не может быть таких цен и это всё китайские подделки и меньше 1.5 баксов за чип - это фантастика. Пока как-то вторым не верю, но может зря? Но где гарантии, что мне за 1.5 бакса не продадут те же самые, что у первых по $0.6 продаются?
Сообщение отредактировал пай-мальчик - Nov 23 2013, 04:16
|
|
|
|
|
Nov 23 2013, 18:27
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(ZASADA @ Nov 23 2013, 21:44)  вы способны с первой попытки написать программу, позволяющую самообновляться по CAN интерфейсу? или для начала придется 100500 раз программатором прошивку перезаливать и отлаживать? Я вот читаю и вижу обычное дело. Для разработки берется не тот микроконтроллер, для которого есть дешевые стартовые наборы именно с CAN и библиотеки для CAN, а тот, на котором что-то делалось "вчера" и который на пол-копейки дешевле... А то, что при таком подходе сил будет затрачено немеряно, так это будет потом... Ведь AVR никогда не предназначался ни для станков, ни для автомобилей... А вот НЕК-Реннесас делался именно для автомобилей с их CAN-интерфейсами... А значит там и примеры и библиотеки и все прочее должно быть...
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Nov 23 2013, 19:48
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Предлагаю взглянуть на ATtiny87/167 (корпус SOIC-20), у которой, хоть и нету CAN, зато есть LIN. У вас же оно для-дома-для-семьи и расстояния короткие. Зачем вам с CAN связываться, когда в нем черт ногу сломит? А LIN уже давно конкурирует с CAN и, на мой взгляд, вполне успешно. Опять же Тинька дешевая, а если 20-30 штук покупать, то этот аспект весьма существенен. И программирование там предельно примитивное, а с АРМами и Ренесасами вам полгода книжки читать, чтобы только светодиодиком поморгать, а не то что CAN программировать  . В корпусе DIP она не бывает (ныне в DIP-корпусе редко какой МК встретишь), но SOIC-20 тоже хороший вариант - паяльником легко паяется, всего по 10 ножек с каждой стороны. JTAG тиньки не поддерживают, но ваш usbasp для них вполне годится. Только надо штырьки под ISP прямо на плате распаять, чтобы при програмировании не отпаивать. Впрочем, корпус SOIC-20 можно поверх панельки DIP-20 припаять, а потом втыкать в другую панельку, как DIP.
|
|
|
|
|
Nov 23 2013, 20:01
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(Xenia @ Nov 23 2013, 21:48)  SOIC-20 тоже очень хорошее решение - паяльником легко паяется, На кардачах, тут http://wikimapia.org/#lang=en&lat=50.4...mp;z=19&m=bпокупается платка, в нее запаивается soiс, и дальше уже проводами. Только надо кондер по питанию припаять прямо на эту платку, хотя бы электролит на пару мелкофарад. Но, в свете последних событий, я бы подумал, а стоит ли заниматься электроникой? Может начать с воровства шапок? В перспективе можно спереть и продать целую страну!
|
|
|
|
|
Nov 23 2013, 21:24
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555

|
Цитата(Xenia @ Nov 23 2013, 23:48)  А LIN уже давно конкурирует с CAN и, на мой взгляд, вполне успешно. Это где конкурирует? LIN дополняет! К тому же у LIN сильное ограничение на длину шины. Кроме того LIN вроде кроме как в автомобилях и не используют нигде. Цитата(Xenia @ Nov 23 2013, 23:48)  Зачем вам с CAN связываться, когда в нем черт ногу сломит? CAN не такой сложный, как кажется. И сделано там все достаточно логично и удобно. (что нельзя сказать о протоколах верхнего уровня, но их использовать не обязательно) Автору - посмотрите серию LPC11C00 там даже со встроенным PHY есть.
|
|
|
|
|
Nov 24 2013, 12:40
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
Цитата(KRS @ Nov 24 2013, 05:24)  Автору - посмотрите серию LPC11C00 там даже со встроенным PHY есть. Спасибо, на них натыкался раньше, но смутило какое-то C_CAN, причём так и не удалось нагуглить чем это отличается от просто CAN. Если не трудно, подскажите, насколько оно будет совместимым с CAN на SJA1000. И трансиверы встроенные на 32 узла Вдруг в итоге понадобится не 20-30 устройств, а 34. Лучше буду изначально закладывать 128. У NXP отметил LPC1751FBD80, но там уже LQFP80, с которым очень не хочется связываться. Цена за чип, с учетом характеристик, просто разрывает atmega, что греха таить...  p.s. А LIN это вообще не та опера. Медленно и master-slave. Мультимастерность это условие обязательное и необсуждаемое.
Сообщение отредактировал пай-мальчик - Nov 24 2013, 12:42
|
|
|
|
|
Nov 25 2013, 04:34
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
имел опыт работы с AT90CAN128 - проблем никаких, скачал фирменную библиотечку и использовал ее. на уровне обмена пакетами за 1,5 часа все сделал, даже не вникая при этом в устройство самого встроенного CAN-контроллера. пробовал MCP2551 в связке с ATMEGA8 - найденные в сети либы не пошли (точнее, мне не понравилось то, как они написаны), пришлось тупо по даташиту писать низкоуровневый обмен по SPI, после чего обмен сообщениями так же за 1,5 часа сделал. багов не встречал, но при написании своих программ опирался на даташиты и ерраты. если все-таки в основу брать AVR, то я бы советовал остановиться на AT90CAN32 - по всем параметрам нормальный МК, и паяется вполне нормально 40-ваттным паяльником  в качестве драйвера физического уровня подойдет любой, не обязательно атмеловский.
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Nov 25 2013, 08:32
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555

|
Цитата(пай-мальчик @ Nov 24 2013, 16:40)  но смутило какое-то C_CAN, причём так и не удалось нагуглить чем это отличается от просто CAN. Если не трудно, подскажите, насколько оно будет совместимым с CAN на SJA1000. И трансиверы встроенные на 32 узла  да там просто есть библиотека во флеше, где есть реализация каких то частоей CAN_OPEN или еще чего то... (я с ней не разбирался), поэтому вроде и назвали С_CAN а так можно использовать как обычный CAN, естественно данные на SJA1000 будут передаваться (у нас без проблем в сети работают и SJA100 и CAN128 и STM32 и LPC11C14) да еще по железу модуль не совсем обычный - он 16 битный (что не очень удобно) и доступ к Message Object через два интерфейса. Но это всего лишь можно считать "другим" описанием регистров. Со встроенным трансивером мы не используем, внешний драйвер действительно лучше! Но в серии LPC11 есть и такие и такие. Кроме того это все таки ARM, возможностей больше чем у CAN128 да и дешевле они, и ног меньше!
|
|
|
|
|
Nov 25 2013, 09:35
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
Большое спасибо за советы. Надо брать и AT90CAN32 и ARM. AVR на первое время, а дальше разобраться с ARMами таки.
|
|
|
|
|
Dec 4 2013, 16:05
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 19-10-13
Пользователь №: 78 801

|
Цитата(syoma @ Dec 4 2013, 23:25)  Второе - брать АРМ. Я, например для нового проекта в прошлом году перешел на STM32F103. Хоть и не панельные, но паяются микроволной легко и JTAG шнурок решает все. Также в случае с обновлениями легче заменить саму платку, чем контроллер - в домашней автоматизации они будут врядли больше пары пачек сигарет К сожалению, заказал уже десяток AT90CAN32 и 20 MCP2515-I/SO через алибабу. После этого начал по АРМам вентилировать и увидел, что на банальном ебее STM32F103RBT6 стоят всего на полдоллара дороже, со всеми их плюсами. И TJA1041 при покупке 50 штук продаются по $0.75. И дебаггеры по 8-11 баксов. epic fail  ARM тоже заказал. Надо сейчас искать любителей AVR и сливать им это добро.
|
|
|
|
|
Jan 18 2014, 12:14
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(ARV @ Dec 4 2013, 20:20)  когда 3,3-вольтовый ARM со своими слаботочными выводами обрастет кучей транзисторов и т.п. обвеса, окажется, что при своей дороговизне AVR не так уж и плох, особенно для простых задач  Кто вам это сказал?? The GPIOs (general purpose input/outputs) can sink or source up to ±8 mA, and sink or source up to ±20 mA (with a relaxed VOL/VOH) except PC13, PC14 and PC15 which can sink or source up to ±3mA. Стандартные характеристики, как для аврки, за исключением нескольких пинов и питания 3.3В! PS. Я не знаю, почему автор не остановился на RS-485, который ничуть не хуже кана, при этом уарты есть в любом мк, и ненадо писать сложные протоколы...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|