Fluffy 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Понимаю, что темы выбора МК всем уже надоели, но все же попрошу помощи. Дело значит такое. Почти везде, где приходилось работать с встраиваемыми МПС (ПЛК не в счет ессна, там все свое), дело обходилось теми или иными вариациями х86, следовательно либо был простой программинг в PC-стиле на каком-нить TC++ 3.1/Borland Builder 6.0 (если железо PC-подобное), либо ваяние программ для х86 на ассемблере (сейчас как раз очередной виток такой деятельности на новом месте работы, под проприетарное железо, только не бейте и не ругайте за некрофилию - так надо). Работал ранее с AVR (была необходимость три года назад сделать несколько мини-проектиков, выбрал их как наипростейшие, наидоступнейшие и т.д.). Сейчас вот мыслю пробовать входить в мир ARM. Не то, чтобы я любитель посамодельничать (как раз не любитель), и для работы необходимости особой в этом пока нет, но все же надо развиваться, и есть уже пара наметок, которые хотелось бы реализовать на будущее и выгодно подсунуть начальству, тем упростив себе работу. Соответственно стоит вопрос "с чего начать". Стартеркиты не предлагать, т.к. придется (по крайней мере сначала) рассчитывать только на свои средства и делать самому отладочную плату (ну может только печатку закажу через контору на заводе, и то не факт). Будем считать, что сделать плату - не проблема. Вопрос - на чем конкретно ее делать? Из заголовка следует, что кое-что я уже почитал тут (и не тут). Атмеловские АРМы меня притягивали поначалу (вообще отношение Атмела к потребителям мне нравится). Но посмотрел я, что они остановились в развитии, и вообще слабоваты, и решил копнуть в другое. Требования такие - внешняя шина (памяти вдруг воткнуть придется, или еще что периферийное), внутренний RTC (вот как-то уже надо), USB device (ясно дело, что надо бы с DMA...), АЦП, таймеры с ШИМ, i2c, UART, SD/MMC. Есть задумки на Эзернет, но пока на будущее. Где-то так. Как-то сразу отпали Тексасы (чего-то достать сложновато и дороговато) и Самсунги (полистал доки и не вставило). Смотрел в сторону мотороловских i.mx, очень они хороши, но тоже не очень доставаемы (понятно, что серии у меня пока никакой нет, но все же). Встряли в меня STM32 (особенно понравился F103, у него прямо все хорошо и контроллер внешней памяти есть) и LPC2468/78 (второй все же получше, а стоят одинаково). Примерно сопоставив их, пришел к выводу, что STM32 кагбе получше для задач управления объектами (и аналоговая часть посильнее), а LPC2468/78 помощнее в части connection. Само собой у первого Кортекс-М3, что и перспективно и быстро работает, но и АРМ7 еще не умер. По цене и доступности примерно равноценны, STM32 подешевле несколько. Отсутствие Эзернета у STM32 можно решить потом внешним контроллером, ЮСБ-хост в общем вряд ли мне пригодится. Короче, вопрос "что лучше" сложный. По существу дело стоит главным образом за наличием средств программирования/отладки и проблемностью конкретных кристаллов. Еррату читал на оба, в принципе не испугался. Что касается мнения опытных по поводу сабжей - наличие у LPC всего двух каналов ДМА лично меня не пугает, т.к. у Эзернета и ЮСБ, как я понял, свои контроллеры ДМА, следовательно два канала GPDMA остаются для SD/MMC и, например, I2S. Для АЦП/ЦАП и прочего ДМА не особо и нужно вроде (поправьте, если не так). Про STM32 вроде никто гадости и не пишет. Т.е. вроде и тот и тот можно не бояться. По "средствам" - как мне показалось из чтения инета, для программирования/отладки LPC надо иметь, например, Вигглер и IAR. А вот с STM32 будут всякие бяки. Сразу оговорюсь - я не лентяй с лозунгом "пусть все само заработает", но сейчас как-то напрягся по жизни ( ), поэтому все же не хотелось бы, как в былые студенческие годы, просиживать часами за поиском недокументированных козявок. Хотелось бы иметь наиболее простой и удобный с точки зрения ARM-старта микроконтроллер. Вот кто это для меня - LPC2478 или все же STM32? P.S.: предполагаемые применения своих идей такие: сервер с интерфейсом RS-232 (IPC@CHIP не предлагать, готовые решения типа ADAMовских Ethernet-RS-232 преобразователей по ряду причин нас не устраивают); дистанционные измерители напряжений и токов; некое подобие ПЛК (без CoDeSys и прочих заморочек). Как-то так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Т.е. вроде и тот и тот можно не бояться. По "средствам" - как мне показалось из чтения инета, для программирования/отладки LPC надо иметь, например, Вигглер и IAR. А вот с STM32 будут всякие бяки. Работаю с обоими и обоими доволен. Только про IAR и Wiggler давно забыл. Пользуюсь CodeSourcery и OpenOCD с отладчиком на FT2232. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Гость MALLOY2 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба А вот с STM32 будут всякие бяки. Нету никак бяк, все работает нормально, только для связки IAR & Wiggler нужена еще программа H-JTAG. P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fluffy 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Работаю с обоими и обоими доволен. Только про IAR и Wiggler давно забыл. Пользуюсь CodeSourcery и OpenOCD с отладчиком на FT2232. Спасибо! А чем плохи IAR и Вигглер? Что имеется в виду под "отладчиком на FT2232" - все же JTAG? Я бы тоже хотел поработать с обоими, но все же это будет слишком. И вот вы, как человек опытный, что бы все же из двух выбрали? Так ли сильно STM32 со своим кортексом быстрее, и так ли сильно ускоряет работу развитая система ПДП в LPC? Нету никак бяк, все работает нормально, только для связки IAR & Wiggler нужена еще программа H-JTAG. Я уже не помню, что там писали, что-то было неприятное, но я даже не запомнил что - какие-то мелочи. Но они могут быть не одиноки. P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT. А что это за прога? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artur_off 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT. Поддержку LPT убрали в версии 1.0 Preview, в версии 1.0 Release поддержку LPT вернули. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Хм, испугался, неужто iMX стали действительно недоставаемыми. Зашел на DigiKey. Не, все в порядке, лежат. Реально iMX25 был бы лучший среди этой ботвы. Сравните 200 против 400 ног. Именно когда неизвестнео чего надо и че придется делать проблема ног встает на первый план. А точнее проблема мультиплекирования функций на ногах. iMX-ы в этом плане сильно снижают риски, а в малоногих придется ломать голову над оптимальным распределением и жертвовать периферией. С другого плана важна проблема софта. Заявленые применения как сервер или PLC довольно серьезные вещи и на рынке есть куча предложений которые будут морально давить. Чтобы не пролететь в такой ситуации могут понадобиться такие фишки которые самому уже никак не написать с обозримым бюджетом и временем Надо будет юзать Линукс либо надеяться что его можно заюзать для поддержки духа. И тут чипы на ARM7 и Cortex-M3 будут совсем плохим выбором. А насчет средств разработки и отладки то все LPC, STM32 и iMX-ы поддерживает и Keil и IAR и с использованием одного и того же JTAG адаптера типа J-Link, U-Link и еще кучи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Гость MALLOY2 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба А что это за прога? Это прослойка между IAR и Wiggler, так как прямая поддержка виглера с его драйверами в IAR это полный отстой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба А чем плохи IAR и Вигглер? Да ничем они не плохи, просто я с ними не работаю, да и LPT порта в компьютерах уже днём с огнём не найти, а платы расширения ставить лень. Что имеется в виду под "отладчиком на FT2232" - все же JTAG? Здесь брал. И вот вы, как человек опытный, что бы все же из двух выбрали? Так ли сильно STM32 со своим кортексом быстрее, и так ли сильно ускоряет работу развитая система ПДП в LPC? Оба хороши каждый под свои задачи. Не могу за Вас решить что выбрать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fluffy 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Хм, испугался, неужто iMX стали действительно недоставаемыми. Зашел на DigiKey. Не, все в порядке, лежат. Ну лежат-то они лежат, но все равно доставаемость любых моторол - не очень. Мы еще на MPC55хх заглядывались, как бы в рамках "помечтать". Реально iMX25 был бы лучший среди этой ботвы. Не спорю. Сравните 200 против 400 ног. Это как раз менее существенно - ног и так хватит, кроме того мы BGA даже на работе для своих плат не используем (ограничения нашего производителя, а к нему мы определенным образом привязаны), а как я дома буду с ней возиться? Именно когда неизвестнео чего надо и че придется делать проблема ног встает на первый план. А точнее проблема мультиплекирования функций на ногах. Согласен. iMX-ы в этом плане сильно снижают риски, а в малоногих придется ломать голову над оптимальным распределением и жертвовать периферией. Ну все же 160 I/o-pins (у ЛПЦ) - уже гут. С другого плана важна проблема софта. Заявленые применения как сервер или PLC довольно серьезные вещи и на рынке есть куча предложений которые будут морально давить. Чтобы не пролететь в такой ситуации могут понадобиться такие фишки которые самому уже никак не написать с обозримым бюджетом и временем Проясню ситуацию. Во-первых я пока не собираюсь внедрять свои идеи на работе - это пока лишь мечты и планы. Но если я их внедрю, то это будет именно локальное внедрение у нас, на рынок мы с этим выходить не будем. А во-вторых - это лишь приблизительные применения, само собой ни о каком полноценном ПЛК речи не идет. Надо будет юзать Линукс либо надеяться что его можно заюзать для поддержки духа. И тут чипы на ARM7 и Cortex-M3 будут совсем плохим выбором. Его-то и хотелось поюзать (хотя есть и другие ОСи). И я не думаю, что все так уж плохо - AFAIK первые АРМ-линуксы именно с прицелом на ARM7TDMI деланы, так что все нормально должно быть с точки зрения поддержки ядра ОС. Конечно у АРМ9 есть кэш, ММУ и все такое.... Но ИМХО пока не осилю, а уж потом могу и перейти. А насчет средств разработки и отладки то все LPC, STM32 и iMX-ы поддерживает и Keil и IAR и с использованием одного и того же JTAG адаптера типа J-Link, U-Link и еще кучи. Все эти Линки - это хорошо, но хочу для начала сделать Вигглер (проще и дешевле). Он для всех пойдет? Насчет поддержки со стороны IDE - так оно вроде и есть, но сложилось свое ИМХО, что Кейл как-то сориентирован на ЛПЦ - много у них про него написано на сайте. Ну или я чего натупил. :) Это прослойка между IAR и Wiggler, так как прямая поддержка виглера с его драйверами в IAR это полный отстой. Ага. Буду знать. Сенкс. Да ничем они не плохи, просто я с ними не работаю, да и LPT порта в компьютерах уже днём с огнём не найти, а платы расширения ставить лень. А у меня ЛПТ есть. Здесь брал. Ага, спасибо. Оба хороши каждый под свои задачи. Не могу за Вас решить что выбрать. Я и не прошу решить за меня, не подумайте. Просто хочется услышать ваше мнение как человека, имеющего опыт. Я-то только по UM да даташитам сужу, и то уже голова пухнет, путаю одно с другим. А так вы может подскажете в стиле "вот с этим мне было проще/интереснее". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SergeyDDD 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Хм, испугался, неужто iMX стали действительно недоставаемыми. Зашел на DigiKey. Не, все в порядке, лежат. Реально iMX25 был бы лучший среди этой ботвы. Сравните 200 против 400 ног. Именно когда неизвестнео чего надо и че придется делать проблема ног встает на первый план. А точнее проблема мультиплекирования функций на ногах. iMX-ы в этом плане сильно снижают риски, а в малоногих придется ломать голову над оптимальным распределением и жертвовать периферией. С другого плана важна проблема софта. Заявленые применения как сервер или PLC довольно серьезные вещи и на рынке есть куча предложений которые будут морально давить. Чтобы не пролететь в такой ситуации могут понадобиться такие фишки которые самому уже никак не написать с обозримым бюджетом и временем Надо будет юзать Линукс либо надеяться что его можно заюзать для поддержки духа. И тут чипы на ARM7 и Cortex-M3 будут совсем плохим выбором. А насчет средств разработки и отладки то все LPC, STM32 и iMX-ы поддерживает и Keil и IAR и с использованием одного и того же JTAG адаптера типа J-Link, U-Link и еще кучи. А Вы лично работаете с iMX25? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fluffy 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба А Вы лично работаете с iMX25? Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала. Склоняюсь к ЛПЦ2478. Еще бы кто прояснил мои догадки по части ПДП. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SergeyDDD 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала. Склоняюсь к ЛПЦ2478. Еще бы кто прояснил мои догадки по части ПДП. Симметрон официальный представитель Freescale Убедите их в серьезности намерений - дадут образцы бесплатно Я покупал iMX25 и DDRII в Rainbow Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
M_Andrey 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Вот кто это для меня - LPC2478 или все же STM32? У STM есть STM32F107 c Ethernet, но нет внешней шины, но зато ПДП с гибкой длиной буфера передачи = 0..65535. У LPC2478 есть все, но длина буфера передачи ПДП кратна 2!!! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andr2I 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала. Однако, iMX233 в TQFP корпусе и стоит теже 10$ что и LPC2478... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fluffy 0 3 июля, 2010 Опубликовано 3 июля, 2010 · Жалоба Симметрон официальный представитель Freescale Убедите их в серьезности намерений - дадут образцы бесплатно Я покупал iMX25 и DDRII в Rainbow Мы с ними еще не работали. Можно, конечно, попробовать. Но все же БГА..... А 233-й бедноват. У STM есть STM32F107 c Ethernet, но нет внешней шины, но зато ПДП с гибкой длиной буфера передачи = 0..65535. У LPC2478 есть все, но длина буфера передачи ПДП кратна 2!!! Ну это фиг с ним. А вот внешняя шина - обязательна. Однако, iMX233 в TQFP корпусе и стоит теже 10$ что и LPC2478... Хм. Я вроде другие чуть цены видел - 16 баксов. Ну все равно он не очень подходит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться