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

Выбор между STM32F103 и LPC2478

Понимаю, что темы выбора МК всем уже надоели, но все же попрошу помощи.

 

Дело значит такое. Почти везде, где приходилось работать с встраиваемыми МПС (ПЛК не в счет ессна, там все свое), дело обходилось теми или иными вариациями х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 будут всякие бяки. Сразу оговорюсь - я не лентяй с лозунгом "пусть все само заработает", но сейчас как-то напрягся по жизни ( :wacko: ), поэтому все же не хотелось бы, как в былые студенческие годы, просиживать часами за поиском недокументированных козявок. Хотелось бы иметь наиболее простой и удобный с точки зрения ARM-старта микроконтроллер. Вот кто это для меня - LPC2478 или все же STM32?

 

P.S.: предполагаемые применения своих идей такие: сервер с интерфейсом RS-232 (IPC@CHIP не предлагать, готовые решения типа ADAMовских Ethernet-RS-232 преобразователей по ряду причин нас не устраивают); дистанционные измерители напряжений и токов; некое подобие ПЛК (без CoDeSys и прочих заморочек). Как-то так.

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


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

Т.е. вроде и тот и тот можно не бояться. По "средствам" - как мне показалось из чтения инета, для программирования/отладки LPC надо иметь, например, Вигглер и IAR. А вот с STM32 будут всякие бяки.

Работаю с обоими и обоими доволен. Только про IAR и Wiggler давно забыл. Пользуюсь CodeSourcery и OpenOCD с отладчиком на FT2232.

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


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

Гость MALLOY2
А вот с STM32 будут всякие бяки.

Нету никак бяк, все работает нормально, только для связки IAR & Wiggler нужена еще программа H-JTAG.

 

P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT.

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


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

Работаю с обоими и обоими доволен. Только про IAR и Wiggler давно забыл. Пользуюсь CodeSourcery и OpenOCD с отладчиком на FT2232.

 

Спасибо!

 

А чем плохи IAR и Вигглер? Что имеется в виду под "отладчиком на FT2232" - все же JTAG?

 

Я бы тоже хотел поработать с обоими, но все же это будет слишком. И вот вы, как человек опытный, что бы все же из двух выбрали? Так ли сильно STM32 со своим кортексом быстрее, и так ли сильно ускоряет работу развитая система ПДП в LPC?

 

Нету никак бяк, все работает нормально, только для связки IAR & Wiggler нужена еще программа H-JTAG.

 

Я уже не помню, что там писали, что-то было неприятное, но я даже не запомнил что - какие-то мелочи. Но они могут быть не одиноки.

 

P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT.

 

А что это за прога?

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


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

P.S. H-JTAG нужно брать 9.2 в более поздних убрана поддержка LPT.

Поддержку LPT убрали в версии 1.0 Preview, в версии 1.0 Release поддержку LPT вернули.

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


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

Хм, испугался, неужто iMX стали действительно недоставаемыми.

Зашел на DigiKey. Не, все в порядке, лежат.

 

Реально iMX25 был бы лучший среди этой ботвы.

Сравните 200 против 400 ног.

Именно когда неизвестнео чего надо и че придется делать проблема ног встает на первый план.

А точнее проблема мультиплекирования функций на ногах.

iMX-ы в этом плане сильно снижают риски, а в малоногих придется ломать голову над оптимальным распределением и жертвовать периферией.

 

С другого плана важна проблема софта.

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

Чтобы не пролететь в такой ситуации могут понадобиться такие фишки которые самому уже никак не написать с обозримым бюджетом и временем

Надо будет юзать Линукс либо надеяться что его можно заюзать для поддержки духа. И тут чипы на ARM7 и Cortex-M3 будут совсем плохим выбором.

 

А насчет средств разработки и отладки то все LPC, STM32 и iMX-ы поддерживает и Keil и IAR и с использованием одного и того же JTAG адаптера типа J-Link, U-Link и еще кучи.

 

 

 

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


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

Гость MALLOY2
А что это за прога?

 

Это прослойка между IAR и Wiggler, так как прямая поддержка виглера с его драйверами в IAR это полный отстой.

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


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

А чем плохи IAR и Вигглер?

Да ничем они не плохи, просто я с ними не работаю, да и LPT порта в компьютерах уже днём с огнём не найти, а платы расширения ставить лень.

Что имеется в виду под "отладчиком на FT2232" - все же JTAG?

Здесь брал.

И вот вы, как человек опытный, что бы все же из двух выбрали? Так ли сильно STM32 со своим кортексом быстрее, и так ли сильно ускоряет работу развитая система ПДП в LPC?

Оба хороши каждый под свои задачи. Не могу за Вас решить что выбрать.

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


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

Хм, испугался, неужто 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 да даташитам сужу, и то уже голова пухнет, путаю одно с другим. А так вы может подскажете в стиле "вот с этим мне было проще/интереснее".

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


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

Хм, испугался, неужто iMX стали действительно недоставаемыми.

Зашел на DigiKey. Не, все в порядке, лежат.

 

Реально iMX25 был бы лучший среди этой ботвы.

Сравните 200 против 400 ног.

Именно когда неизвестнео чего надо и че придется делать проблема ног встает на первый план.

А точнее проблема мультиплекирования функций на ногах.

iMX-ы в этом плане сильно снижают риски, а в малоногих придется ломать голову над оптимальным распределением и жертвовать периферией.

 

С другого плана важна проблема софта.

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

Чтобы не пролететь в такой ситуации могут понадобиться такие фишки которые самому уже никак не написать с обозримым бюджетом и временем

Надо будет юзать Линукс либо надеяться что его можно заюзать для поддержки духа. И тут чипы на ARM7 и Cortex-M3 будут совсем плохим выбором.

 

А насчет средств разработки и отладки то все LPC, STM32 и iMX-ы поддерживает и Keil и IAR и с использованием одного и того же JTAG адаптера типа J-Link, U-Link и еще кучи.

 

А Вы лично работаете с iMX25?

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


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

А Вы лично работаете с iMX25?

 

Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала.

 

Склоняюсь к ЛПЦ2478. Еще бы кто прояснил мои догадки по части ПДП.

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


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

Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала.

 

Склоняюсь к ЛПЦ2478. Еще бы кто прояснил мои догадки по части ПДП.

 

Симметрон официальный представитель Freescale

Убедите их в серьезности намерений - дадут образцы бесплатно

 

Я покупал iMX25 и DDRII в Rainbow

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


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

Вот кто это для меня - LPC2478 или все же STM32?

 

У STM есть STM32F107 c Ethernet, но нет внешней шины, но зато ПДП с гибкой длиной буфера передачи = 0..65535. У LPC2478 есть все, но длина буфера передачи ПДП кратна 2!!!

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


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

Он-то с ним работает, точно (благо личность известная). А вот мне его где купить? В Диджикее заказывать неохота... Опять же АРМ9. Опять же BGA. И стоит немало. Не, лучше попроще что для начала.

 

Однако, iMX233 в TQFP корпусе и стоит теже 10$ что и LPC2478...

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


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

Симметрон официальный представитель Freescale

Убедите их в серьезности намерений - дадут образцы бесплатно

Я покупал iMX25 и DDRII в Rainbow

 

Мы с ними еще не работали. Можно, конечно, попробовать. Но все же БГА..... А 233-й бедноват.

 

У STM есть STM32F107 c Ethernet, но нет внешней шины, но зато ПДП с гибкой длиной буфера передачи = 0..65535. У LPC2478 есть все, но длина буфера передачи ПДП кратна 2!!!

 

Ну это фиг с ним. А вот внешняя шина - обязательна.

 

Однако, iMX233 в TQFP корпусе и стоит теже 10$ что и LPC2478...

 

Хм. Я вроде другие чуть цены видел - 16 баксов. Ну все равно он не очень подходит.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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