|
Прошу совета в выборе mcu. |
|
|
|
Aug 28 2014, 13:25
|
Группа: Новичок
Сообщений: 9
Регистрация: 27-08-14
Пользователь №: 82 660

|
Здраввствуйте! Выбираю для изучения контроллер с ядром Cortex-M4. Подскажите пожалуйста, что на сегодня выглядит наиболее привлекательно? Очень интересует поддержка со стороны производителя и комьюнити. По форуму заметно что STM32F4 почему-то наиболее поплярен, но все таки решил спросить совета. Прошу прощения за такой вопрос.
|
|
|
|
|
Aug 28 2014, 18:41
|

Гуру
     
Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463

|
Семейство STM32F1хх никак не старенькое, оно проще, как в архитектуре, командах, отладке. Освоил от F1 ... до F4 - все там на своём месте. Семейство STM32F4хх достаточно навороченное, сложное как по архитектуре так и по доп командам, отладке и тп. Софтверно-философская совместимость семейств есть, но доп регистры, расширения, заставили ломать голову, писать, отлаживать пришлось немного иначе. Сразу за STM32F4хх это семейство браться без опыта с младшими не советовал бы, видел многих кто так и не освоил до нужного уровня F4, хотя с семейством F1 справляется. Хотя все от способностей конкретного чела зависит.
|
|
|
|
|
Aug 28 2014, 21:53
|

Профессионал
    
Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634

|
Цитата ATSAM4SA16B О... как вспомню, сколько (два) дней я искал, как включить в этом процессоре FPU, вместо того, чтобы прочесть документацию! А в остальном Atmel удобен... но как-то само собой новые проекты подходят под STM32xxx... Где не хватит 180 МГц + FPU от STM32F429, поставим Renesas R7S721 с его 400 МГц. Под задачу лучше выбирать (с оглядкой на то, под что есть опыт).
Сообщение отредактировал Genadi Zawidowski - Aug 28 2014, 21:54
|
|
|
|
|
Aug 29 2014, 04:58
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(Cree @ Aug 28 2014, 19:25)  Здраввствуйте! Выбираю для изучения контроллер с ядром Cortex-M4. Подскажите пожалуйста, что на сегодня выглядит наиболее привлекательно? Очень интересует поддержка со стороны производителя и комьюнити. По форуму заметно что STM32F4 почему-то наиболее поплярен, но все таки решил спросить совета. Прошу прощения за такой вопрос. Выбирают всегда исходя из потребностей задачи. Какие у вас потребности? Сколько ОЗУ/флеша нужно? Важна скорость или малое потребление? Какая и сколько периферии? И т.п. По этим критериям и выбирать. Маэйнстрим производителей M3/M4: NXP,ST,TI,ATMEL. Из их поделий и нужно выбирать. А на форумы не смотрите. Подавляющее большинство их обитателей - чайники, а для чайников самый главный критерий - дешёвая(бесплатная) отладка. Поэтому они и выбирают ST. Если Вы профессиональный разработчик и у Вас в планах - делать свои платы, а не использовать только отладки, то цена её не играет роли. Цитата(Genadi Zawidowski @ Aug 29 2014, 03:53)  А в остальном Atmel удобен... но как-то само собой новые проекты подходят под STM32xxx... Где не хватит 180 МГц + FPU от STM32F429, поставим Renesas R7S721 с его 400 МГц. Почему-то большинство народу смотрит только на саму цифру в МГц и совсем не думает, что за ней скрывается. И как работает prefetch и кеш, и какая ширина шины до флеш и какова её частота. А ведь может оказаться что эти 180МГц будут тратиться на тупое ожидание данных из флеш. И окажется что Tiva (TI) на 120МГц с 256-битной шиной к флеши гораздо быстрее ST со 128-битной. А может вперёд выйдет Atmel с вдвое большим чем у ST L1-кешем команд. А ведь есть ещё и периферия. И хроническое отсутствие буферов в UARTах и SPI у STM32, резко ужесточит требования к латентности обслуживания периферии (а значит - сожрёт МГц и увеличит потребление). PS: Мы, для своей новой разработки скорей всего выберем Tiva. Из-за требований к кол-ву периферии, интенсивности работы с ней (все UART и SPI имеют FIFO у Tiva), удобству DMA-контроллера для работы с периферией (у STM32 получается затык с его большой потребностью к каналам DMA, ограниченностью их кол-ва и жёсткой привязкой каналов к периферии). А лишние +60МГц STM32 думаю нивелируются удвоенной шириной шины к флеш у Tiva (хоть и почти без кеша  (( ). А раньше мы жили исключительно на NXP...
|
|
|
|
|
Aug 29 2014, 07:02
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(jcxz @ Aug 29 2014, 07:58)  PS: Мы, для своей новой разработки скорей всего выберем Tiva. Из-за требований к кол-ву периферии, интенсивности работы с ней (все UART и SPI имеют FIFO у Tiva), удобству DMA-контроллера для работы с периферией (у STM32 получается затык с его большой потребностью к каналам DMA, ограниченностью их кол-ва и жёсткой привязкой каналов к периферии). А лишние +60МГц STM32 думаю нивелируются удвоенной шириной шины к флеш у Tiva (хоть и почти без кеша  (( ). А раньше мы жили исключительно на NXP... В свое время перепробовал и TI, и NXP, и ST Не будет между ними значительного отрыва в быстродействии. Уж поверьте. А запарить там цифрами ширины шины и проч. они могут, в этом они мастера.  Сходите на http://www.eembc.org/coremark/index.php и просто сравните и проанализируйте. Только многоядерность и частота ядра может продвинуть параметр CoreMark/MHz далеко вперед. Да, в первых STM32 с FIFO была проблема. Но она решается DMA. В последних STM32 каналов DMA вполне достаточно. Важнее, ИМХО, качество сопровождающего железа софта. И тут у Tiva все печально. Из RTOS предлагается только какая-то доморощенная TI-RTOS с файловой системой стянутой у FatFS, TCP стек тоже напоминает LwIP. Т.е. все то же на чем пасутся и все остальные типа ST, Atmel, NXP... Пречисляют много других осей, но интеграцию своего SDK с ними не предлагают. Имеют достаточно сильные прикладные библиотеки, но на Tiva не портируют, а продвигают свои DSP. Ассортимент самих Tiva очень узкий. Сейчас в плане софта лидирует Freescale с их семейством Kinetis. Буквально на днях они выпустили новую версию SDK для Kinetis куда входят готовые адаптации со всеми драйверами для RTOS: uCOS-II, uCOS-III, FreeRTOS и MQX. Также туда входят все те же LwIP, FatFS. Продолжается развитие их библитек для управления двигателями, подключения к облакам, медицинские библиотеки, библиотеки для радиопротоколов и ZigBee, визуальные eGUI, интерактивный рекордер-осциллограф FreeMASTER и проч. Также для Kinetis есть самая работоспособная адаптированная версия ucLinux.
|
|
|
|
|
Aug 29 2014, 07:37
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlexandrY @ Aug 29 2014, 13:02)  Не будет между ними значительного отрыва в быстродействии. Уж поверьте. Нам и не нужно. Нужно чтобы Tiva не уступал или не сильно уступал STM32 и всё. А это так и есть на требуемой задаче. Для нас важнее - наличие необходимой периферии. Цитата(AlexandrY @ Aug 29 2014, 13:02)  Да, в первых STM32 с FIFO была проблема. Но она решается DMA. В последних STM32 каналов DMA вполне достаточно. Как раз недостаточно. Так как все каналы у STM32 сильно привязаны к запросам периферии, и когда нужно 5 UART + 2 SPI + 1/2 I2C + чтоб ещё резерв остался (и всё это одновременно), то тут всё равно придётся с частью периферии без DMA работать. А у Tiva гораздо легче с зависимостью DMA-каналов от периферии. Да к тому-же при 16 байт FIFO в UART, гораздо легче и без DMA работать. Цитата(AlexandrY @ Aug 29 2014, 13:02)  Важнее, ИМХО, качество сопровождающего железа софта. Из RTOS предлагается только какая-то доморощенная TI-RTOS с файловой системой стянутой у FatFS, TCP стек тоже напоминает LwIP. Т.е. все то же на чем пасутся и все остальные типа ST, Atmel, NXP... Это как раз неважно. Любая ОС легко переносится между всеми M3/M4-ядрами. А прочие библиотеки мы практически не используем, хватит уже наступать на грабли оставленные написателями халявного софта. Цитата(Genadi Zawidowski @ Aug 29 2014, 13:16)  У Renesas R7S721 нет внутри FLASH. А что об prefetch/Icache думать? включаем их при инициализации и тупо смотрим осцилографом, сколько времени занимает вычисление FIR фильтра. Тут мегагерцы ядра почти всегда пропорциональны. Это хорошо когда нужно только FIR-фильтры считать. Но в прикладном ПО такого практически не бывает, а всё гораздо сложнее. И на осциллографе ничего не проанализируешь.
|
|
|
|
|
Aug 29 2014, 08:59
|

Гуру
     
Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463

|
Соглашусь с AlexandrY, ведь исторически TI проморгал и потерял время для развития своих M3/M4, теперь догоняет и обвешивает халявным софтом. Причем минимальным, зато в рекламу TI вкладывается хорошо. Из перечисленных TI, NXP, ST я выбрал ST; причем их линейка от STM8 понравилась из-за хорошей софтподдержки. На сегодня у меня много успешных проектов в серии с STM32Fxx. С NXP, M3 есть проекты двух летней давности, но ушёл от NXP по многим причинам. Freescale хорош, но его малая доля на нашем рынке ... и пока, их процы не решаюсь пользовать. QUOTE (jcxz @ Aug 29 2014, 11:36)  Глюки в железе CPU + баги HAL? Нет уж, увольте. Лучше просто refmanual. Переносимость не нужна - не Hello world пишем. FatFS - не нужна, а TCP-стек свой есть. Переписать MAC-уровень думаю будет не проблема. Так если FatFS - не нужна, а TCP-стек свой есть - тогда Microchip, будет подешевле для ваших проектов. На худой конец у того же TI - 430 семейство.
|
|
|
|
|
Aug 30 2014, 04:00
|
Группа: Новичок
Сообщений: 9
Регистрация: 27-08-14
Пользователь №: 82 660

|
Большое спасибо всем! Вниматель прочел все посты и очень благодарен за помощь! К сожалению или к счастью мне дали во временное пользование вот такую плату http://www.wvshare.com/product/Open1788-Standard.htm с NXP (Cortex-M3 правда) и китайский дебагер J-link, тем самым лишили меня возможности выбирать. Не знаю насколько страшен LPC1788, буду надеяться, что контроллер не слишком плохой. Цитата(Aner @ Aug 29 2014, 10:57)  А вы у себя не находите странность? Задаете вопрос и сами отвечаете на него. Нужность или ненужность M4 никак не связана с FAT и TCP. Тут ничего странного нет, просто jcxz использовал риторическую форму вопроса, представляющую собой вопрос, ответ на который заранее известен, или вопрос, на который даёт ответ сам спросивший.
|
|
|
|
|
Sep 7 2014, 18:19
|
Группа: Новичок
Сообщений: 9
Регистрация: 27-08-14
Пользователь №: 82 660

|
Спасибо большое всем!
Вот у меня еще есть такой бестолковый вопрос. Пошел добывать драйверы и CMSIS для контроллера. На lpcware имеется архив с драйверами lpc177x_8x_08132012.zip но как я понял из того что пишут разработчики - товарищи из NXP на него забили и эти драйверы более необновляются. CMSIS Core там соответствует версии 2.10. Предлагают качать LPCOpen для Keil/IAR либо для ихнего LPCXpresso. А что если я хочу исользовать что-то другое, то как быть? Можно ли будет "подогнать" эти драйверы? Прошу прощения за такой вопрос, немного запутался с драйверами и toolchain-ами.
Глянул как выглядит IDE Keil, это какой-то "привет" из 90-х годов. У них там чтоли прогресс остановился уже?
|
|
|
|
|
Sep 8 2014, 07:44
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(Cree @ Sep 7 2014, 21:19)  Глянул как выглядит IDE Keil, это какой-то "привет" из 90-х годов. У них там чтоли прогресс остановился уже? IAR тоже не меняет UI своего IDE уже десяток лет. А вот Freescale для своей серии Kinetis постоянно выкладывает что-то новое. На прошлой неделе выложили бесплатную Kinetis Design Studio IDE без ограничений кода! Поддерживает JTAG отладчик JLink. Все навороты современной IDE, мощный SDK, визуальный конфигуратор, Add-On-ы для известных RTOS и проч.
|
|
|
|
|
Sep 8 2014, 15:36
|
Группа: Новичок
Сообщений: 9
Регистрация: 27-08-14
Пользователь №: 82 660

|
Цитата(Aner @ Sep 8 2014, 06:36)  Давно остановился, посему пользую иар, а те кто еще тогда подсел на кейл просто не хоят слезать с него из-за наработаного. Понять их можно. IAR тоже смотрел - страшный динозавр. А почем бы не Eclipse + GNU компилятор с плаганами для MCU? Есть какие-то сложности? Для меня вообще и Eclipse не верх совершенсто, но хоть не Юрский период. Цитата(AlexandrY @ Sep 8 2014, 07:44)  IAR тоже не меняет UI своего IDE уже десяток лет.
А вот Freescale для своей серии Kinetis постоянно выкладывает что-то новое. На прошлой неделе выложили бесплатную Kinetis Design Studio IDE без ограничений кода! Поддерживает JTAG отладчик JLink. Все навороты современной IDE, мощный SDK, визуальный конфигуратор, Add-On-ы для известных RTOS и проч. В Freescale молодцы, сделали IDE на базе Eclipse да еще бесплатную. Но к сожалению у меня контроллер не Fresscale(( Разработчики в NXP тоже сделали свою IDE на базе Eclipse, но к сожалению она платная, а бесплатная с ограничением.
Сообщение отредактировал Cree - Sep 8 2014, 15:37
|
|
|
|
|
Sep 8 2014, 17:25
|

Знающий
   
Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467

|
Цитата(AlexandrY @ Sep 8 2014, 03:44)  А вот Freescale для своей серии Kinetis постоянно выкладывает что-то новое. На прошлой неделе выложили бесплатную Kinetis Design Studio IDE без ограничений кода! Поддерживает JTAG отладчик JLink. Все навороты современной IDE, мощный SDK, визуальный конфигуратор, Add-On-ы для известных RTOS и проч. Оба на! А вот это серьезная заявка на победу.. Наверное, gcc под ним, но все равно. Будет кандидат #1 вместо СТМ32. Спасибо за инфо.
--------------------
Верить нельзя никому, даже себе. Мне - можно.
|
|
|
|
|
Sep 9 2014, 05:46
|
Знающий
   
Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163

|
Цитата IAR тоже смотрел - страшный динозавр. А почем бы не Eclipse + GNU компилятор с плаганами для MCU? Есть какие-то сложности? Для меня вообще и Eclipse не верх совершенсто, но хоть не Юрский период. Сложности есть: code completion работает через задницу и список файлов в проекте нужно руками задавать. Eclipse совсем не фонтан, IAR мне симпатичнее. Я для себя настроил Sublime Text для работы с иаровскими проектами. Пробовал Visual Studio, но внешний вид хромает.
|
|
|
|
|
Sep 10 2014, 02:25
|
Группа: Новичок
Сообщений: 9
Регистрация: 27-08-14
Пользователь №: 82 660

|
Цитата(andrewlekar @ Sep 9 2014, 06:46)  Сложности есть: code completion работает через задницу и список файлов в проекте нужно руками задавать. Eclipse совсем не фонтан, IAR мне симпатичнее. Я для себя настроил Sublime Text для работы с иаровскими проектами. Пробовал Visual Studio, но внешний вид хромает. Сlion от Jetbrains похоже будет самой лучшей IDE. Работал c intellij idea когда-то. Sublime Text тоже использовал, но потом ушел на Atom. Цитата(A. Fig Lee @ Sep 8 2014, 18:25)  Наверное, gcc под ним, но все равно. А чем GCC плох? Я прочел что оптимизирует и компилирует довольно неплохо. Судя по всему почти все разработчики контроллеров берут за основу его.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|