STM32 новичку в ARM что к чему

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Вымогатель припоя
Аватара пользователя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Сообщение Andrew Martin »

Сырец ещё - нужно баги вычёсывать :dont_know:
Реклама
Электрический кот
Аватара пользователя
Сообщения: 1031
Зарегистрирован: Чт июн 20, 2013 00:00:58
Откуда: москва, м.Сходненская

Сообщение Mishany »

кому интересно выкладываю образ диска от отладочной платы там есть практически все, от примеров и пустых проектов для Keil, до схем плат(много) и драйверов...
https://drive.google.com/file/d/0B8vg64 ... sp=sharing
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1273
Зарегистрирован: Вт фев 01, 2011 17:56:40
Откуда: г. Жуковка, Брянская обл.

Сообщение Alexey_N »

О спасибо, заценим!
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
Электрический кот
Аватара пользователя
Сообщения: 1031
Зарегистрирован: Чт июн 20, 2013 00:00:58
Откуда: москва, м.Сходненская

Сообщение Mishany »

я только половину этой темы прочел, очень много всего интересного написано...
Реклама
Эиком - электронные компоненты и радиодетали
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Чт ноя 12, 2015 08:13:38

Сообщение Skitalec777 »

Здравствуйте!

Помогите, пожалуйста, новичку в микроконтроллерах советом.

Приступая к изучению ARM, я решил купить плату Stm32f4-discovery, поскольку именно данную плату чаще всего хвалят. О цене микроконтроллеров для конечного устройства я не задумывался, поскольку именно ARM позиционируют себя как недорогие микроконтроллеры. Я даже встречал утверждение, что дешевле только даром.

Однако я был неприятно удивлен, когда обнаружил, что, например, если STM32F030K6 стоит около 60 руб, то уже STM32F407VG, на базе которой я и хотел купить отладочную плату, стоит около 500 руб. :shock:

В связи с этим у меня возникло несколько вопросов. Я понимаю, что разница в цене в данном случае оправдана и определяется техническими характеристиками данных микроконтроллеров. Но покупать необходимо отладочную плату именно с тем микроконтроллером, который планируется использовать в конечном устройстве, или разработку устройства можно вести на любой отладочной плате, а в конечном устройстве использовать другой микроконтроллер?

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

Еще я обнаружил в одной из статей такую классификацию STM32:
STM32W – предназначены для беспроводных решений;
STM23L1 – предназначены для устройств с батарейным питанием;
STM32F0 – сильный конкурент на рынке 8/16 – битных решений, за счёт 32-битной архитектуры и низкой цены;
STM32F1 – основная линейка компании ST (широкий спектр устройств с различной периферией);
STM32F3 – основное назначение промышленная автоматизация (DSP+обработка аналоговых сигналов);
STM32F2 – особенностью данного микропроцессора является высокая производительность, это современное устройство с широким функционалом;
STM32F4 – предназначен для обработки звука, математических операций (DSP+высокая производительность);
Данная классификация условная или каждый микроконтроллер является узкоспециализированным? И почему STM32F1 заявлен флагманом данной линейки, но все стремятся работать с STM32F4?

Заранее спасибо за ответы!
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Сообщение scorpi_0n »

По большому счёту да. Лучше иметь отладочные платы с разными МК. Тут есть некоторые нюансы. Разные серии СТМ32 имеют разные ядра и отличаются даже по набору команд. Даже МК в одной линейке могут отличаться по периферии но только по количеству или функционалу. Между линейками могут быть различия и по набору регистров и по функцтоналу. Но в целом это не настолько глобально как кажется на первый взгляд. Всё это Кортекс а М0 или М4 или М0+ не столь уж важно. Первоначально нужно отличать что ядро это Кортекс что СТМ просто прикупила на него лицензию. А вот периферия уже чисто от СТМ и к Кортексу никакого отношения не имеет. Поэтому периферия в общем случае схожа хоть в М3 хоть в М4 хоть в М0 хоть в СТМ8. Всё это запутанно на первый взгляд но со временем придёт понимание и осознание что к чему. Сначала появились F10X потом F2XX потом F4xx и т.д. Естественно что менялась и периферия при общих основных принципах. Потом появились F0XX и F3XX где увеличился функционал SPI и таймеров. Т.е. зная эти незначительные отличия и дополнительные фишки можно спокойно перетаскивать код с F4 на F0 и обратно и даже на СТМ8. Это если не юзалась специфика ядра или фишки периферии. Иначе перенос будет неполным, трудноватым или вообще невозможным.
Если заинтересовала F030 лучше взять отладочную под F030 или под F051. Между ними разница минимальная но у F051 ресурс флэша больше. Просто не юзать в F051 то чего нет в F030. TIM2 например. Отладить всё как положено а потом залить в F030 и поправить по мелочам не переживая за ресурс флэша. Для начинающего это будет правильнее. Но можно сделать плату или купить переходник под ДИП запаять F030 и программировать и отлаживать через отладчик Дискавери с F407 оставив F407 на потом.
Реклама
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

Skitalec777 писал(а):Или необходимо иметь отладочные платы с разными микроконтроллерами и использовать их в зависимости от поставленной задачи?
Можно вообще никакую не покупать. Купите программатор, самый дешевый МК и запаяйте его на простейшую плату. Чтобы разобраться, как оно работает и чего может, этого хватит. Дальше уже сами увидите, что вам нужно для ваших задач. Правда, иногда довольно интересно наблюдать, что народ ваяет из отладочных плат. Вчера, например, разглядывал любительское радио (частоты до 900кгц), сделанное из отладочной платы и нескольких кондеров с катушками.

Изображение

Хоть для меня радио и темный лес, но идея цифровать эфир армом и делать всю обработку в софте выглядит весьма интересной.
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Чт ноя 12, 2015 08:13:38

Сообщение Skitalec777 »

scorpi_0n писал(а):По большому счёту да. Лучше иметь отладочные платы с разными МК. Тут есть некоторые нюансы. Разные серии СТМ32 имеют разные ядра и отличаются даже по набору команд. Даже МК в одной линейке могут отличаться по периферии но только по количеству или функционалу. Между линейками могут быть различия и по набору регистров и по функцтоналу. Но в целом это не настолько глобально как кажется на первый взгляд. Всё это Кортекс а М0 или М4 или М0+ не столь уж важно. Первоначально нужно отличать что ядро это Кортекс что СТМ просто прикупила на него лицензию. А вот периферия уже чисто от СТМ и к Кортексу никакого отношения не имеет. Поэтому периферия в общем случае схожа хоть в М3 хоть в М4 хоть в М0 хоть в СТМ8. Всё это запутанно на первый взгляд но со временем придёт понимание и осознание что к чему. Сначала появились F10X потом F2XX потом F4xx и т.д. Естественно что менялась и периферия при общих основных принципах. Потом появились F0XX и F3XX где увеличился функционал SPI и таймеров. Т.е. зная эти незначительные отличия и дополнительные фишки можно спокойно перетаскивать код с F4 на F0 и обратно и даже на СТМ8. Это если не юзалась специфика ядра или фишки периферии. Иначе перенос будет неполным, трудноватым или вообще невозможным.
Если заинтересовала F030 лучше взять отладочную под F030 или под F051. Между ними разница минимальная но у F051 ресурс флэша больше. Просто не юзать в F051 то чего нет в F030. TIM2 например. Отладить всё как положено а потом залить в F030 и поправить по мелочам не переживая за ресурс флэша. Для начинающего это будет правильнее. Но можно сделать плату или купить переходник под ДИП запаять F030 и программировать и отлаживать через отладчик Дискавери с F407 оставив F407 на потом.
Большое Вам спасибо за Ваш, как обычно, подробный и развернутый ответ. К слову сказать, когда-то именно Ваш пост заставил меня посмотреть в сторону ARM, за что я Вам благодарен вдвойне. Однако, я думаю, что Вы лукавили, когда сказали:
scorpi_0n писал(а):Нет. Опыта практически нет.
Слишком уж у Вас для человека без опыта глубокие и структурированные познания в области AVR. Это комплимент, если что.

А на STM32 бывают переходники DIP? Что-то на Алиэкспресс я таких не нашел? Может они имеют какое-то особое название? А так-то совет a5021 мне очень понравился:
a5021 писал(а):Купите программатор, самый дешевый МК и запаяйте его на простейшую плату.
Было бы интересно попробовать!
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1273
Зарегистрирован: Вт фев 01, 2011 17:56:40
Откуда: г. Жуковка, Брянская обл.

Сообщение Alexey_N »

Fasmarm обновился, баг с dwarf исправлен, теперь корректно дизассемблируется 8)
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Чт ноя 12, 2015 08:13:38

Сообщение Skitalec777 »

В даташите нашел такое:

Изображение

Это и есть схема минимальной обвязки для STM32F030?
Вымогатель припоя
Аватара пользователя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Сообщение scorpi_0n »

Примерно такое
http://ru.aliexpress.com/item/Turn-DIP1 ... 35181.html
но только TSSOP20 --> DIP или LQFP32--> DIP. Недостающее распаивается навесом. Кварц можно для начала и не распаивать но если нужен то лучше распаять сразу. Если делать неспеша думаючи и аккуратно то всё получается достаточно удобно и мило.
Опытный кот
Аватара пользователя
Сообщения: 725
Зарегистрирован: Вт апр 26, 2011 13:58:36
Откуда: Ростовская область

Сообщение amv2000 »

scorpi_0n писал(а):Примерно такое
А можно попробовать вот такие:Ссылка
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1273
Зарегистрирован: Вт фев 01, 2011 17:56:40
Откуда: г. Жуковка, Брянская обл.

Сообщение Alexey_N »

2 Skitalec777
Нет, кварц не обязательно. Минимально - подать питание. Но обычно достаточно: кнопка ресет (рис.21 даташита), кварц (рис.16), и питание (рис.12 + стабилизатор).
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
Вымогатель припоя
Аватара пользователя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Сообщение scorpi_0n »

Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
Вымогатель припоя
Аватара пользователя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Сообщение Andrew Martin »

Alexey_N писал(а):Fasmarm обновился, баг с dwarf исправлен, теперь корректно дизассемблируется 8)
Лепота! :)))
Теперича будем вычёсывать новые баги :kill:
Вымогатель припоя
Аватара пользователя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Сообщение Andrew Martin »

scorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
Отладчики и программаторы лишние. Заливайте по UART 8)
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

Можно и по уарт, но тогда, если какой ступор произойдет, то выяснять причину придется посредством спиритического сеанса. Программатор/отладчик нужен для быстрого установления "глупых" и примитивных ошибок, которые на начальном этапе весьма вероятны.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1273
Зарегистрирован: Вт фев 01, 2011 17:56:40
Откуда: г. Жуковка, Брянская обл.

Сообщение Alexey_N »

scorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
Кнопка ресет очень даже нужная, меня, например, начинающего в этом деле, уже один раз спасла, когда stm32f103 после мною написанного кривого кода впал в ступор и st-link utility не хотела подключаться к нему. Не зря она присутствует в планшетах и т.п. Конечно, ее можно заменить процедурой выкл/вкл питания, но это будет уже изврат.
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
Вымогатель припоя
Аватара пользователя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Сообщение scorpi_0n »

Для этого есть опция в отладчике Under Reset. А если по незнанию МК загнать в Level2 то и кнопка уже не поможет.
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

Alexey_N писал(а):
scorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
Кнопка ресет очень даже нужная, меня, например, начинающего в этом деле, уже один раз спасла, [...] Не зря она присутствует в планшетах и т.п.
На планшете аккум не отцепить, а на макетке питание сбросить ничуть не сложнее нажатия кнопки. Резет лишний здесь.
Ответить

Вернуться в «ARM»