STM32 новичку в ARM что к чему
- Сообщения: 606
- Зарегистрирован: Вт июн 25, 2013 18:45:07
- Реклама
кому интересно выкладываю образ диска от отладочной платы там есть практически все, от примеров и пустых проектов для Keil, до схем плат(много) и драйверов...
https://drive.google.com/file/d/0B8vg64 ... sp=sharing
https://drive.google.com/file/d/0B8vg64 ... sp=sharing
О спасибо, заценим!
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
я только половину этой темы прочел, очень много всего интересного написано...
- Сообщения: 24
- Зарегистрирован: Чт ноя 12, 2015 08:13:38
Здравствуйте!
Помогите, пожалуйста, новичку в микроконтроллерах советом.
Приступая к изучению ARM, я решил купить плату Stm32f4-discovery, поскольку именно данную плату чаще всего хвалят. О цене микроконтроллеров для конечного устройства я не задумывался, поскольку именно ARM позиционируют себя как недорогие микроконтроллеры. Я даже встречал утверждение, что дешевле только даром.
Однако я был неприятно удивлен, когда обнаружил, что, например, если STM32F030K6 стоит около 60 руб, то уже STM32F407VG, на базе которой я и хотел купить отладочную плату, стоит около 500 руб.
В связи с этим у меня возникло несколько вопросов. Я понимаю, что разница в цене в данном случае оправдана и определяется техническими характеристиками данных микроконтроллеров. Но покупать необходимо отладочную плату именно с тем микроконтроллером, который планируется использовать в конечном устройстве, или разработку устройства можно вести на любой отладочной плате, а в конечном устройстве использовать другой микроконтроллер?
Или необходимо иметь отладочные платы с разными микроконтроллерами и использовать их в зависимости от поставленной задачи?
Еще я обнаружил в одной из статей такую классификацию STM32:
Заранее спасибо за ответы!
Помогите, пожалуйста, новичку в микроконтроллерах советом.
Приступая к изучению ARM, я решил купить плату Stm32f4-discovery, поскольку именно данную плату чаще всего хвалят. О цене микроконтроллеров для конечного устройства я не задумывался, поскольку именно ARM позиционируют себя как недорогие микроконтроллеры. Я даже встречал утверждение, что дешевле только даром.
Однако я был неприятно удивлен, когда обнаружил, что, например, если STM32F030K6 стоит около 60 руб, то уже STM32F407VG, на базе которой я и хотел купить отладочную плату, стоит около 500 руб.
В связи с этим у меня возникло несколько вопросов. Я понимаю, что разница в цене в данном случае оправдана и определяется техническими характеристиками данных микроконтроллеров. Но покупать необходимо отладочную плату именно с тем микроконтроллером, который планируется использовать в конечном устройстве, или разработку устройства можно вести на любой отладочной плате, а в конечном устройстве использовать другой микроконтроллер?
Или необходимо иметь отладочные платы с разными микроконтроллерами и использовать их в зависимости от поставленной задачи?
Еще я обнаружил в одной из статей такую классификацию STM32:
Данная классификация условная или каждый микроконтроллер является узкоспециализированным? И почему STM32F1 заявлен флагманом данной линейки, но все стремятся работать с STM32F4?STM32W – предназначены для беспроводных решений;
STM23L1 – предназначены для устройств с батарейным питанием;
STM32F0 – сильный конкурент на рынке 8/16 – битных решений, за счёт 32-битной архитектуры и низкой цены;
STM32F1 – основная линейка компании ST (широкий спектр устройств с различной периферией);
STM32F3 – основное назначение промышленная автоматизация (DSP+обработка аналоговых сигналов);
STM32F2 – особенностью данного микропроцессора является высокая производительность, это современное устройство с широким функционалом;
STM32F4 – предназначен для обработки звука, математических операций (DSP+высокая производительность);
Заранее спасибо за ответы!
- Реклама
- Сообщения: 616
- Зарегистрирован: Вс ноя 01, 2015 13:13:49
По большому счёту да. Лучше иметь отладочные платы с разными МК. Тут есть некоторые нюансы. Разные серии СТМ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 на потом.
Если заинтересовала F030 лучше взять отладочную под F030 или под F051. Между ними разница минимальная но у F051 ресурс флэша больше. Просто не юзать в F051 то чего нет в F030. TIM2 например. Отладить всё как положено а потом залить в F030 и поправить по мелочам не переживая за ресурс флэша. Для начинающего это будет правильнее. Но можно сделать плату или купить переходник под ДИП запаять F030 и программировать и отлаживать через отладчик Дискавери с F407 оставив F407 на потом.
- Сообщения: 6452
- Зарегистрирован: Пт сен 13, 2013 13:11:31
Можно вообще никакую не покупать. Купите программатор, самый дешевый МК и запаяйте его на простейшую плату. Чтобы разобраться, как оно работает и чего может, этого хватит. Дальше уже сами увидите, что вам нужно для ваших задач. Правда, иногда довольно интересно наблюдать, что народ ваяет из отладочных плат. Вчера, например, разглядывал любительское радио (частоты до 900кгц), сделанное из отладочной платы и нескольких кондеров с катушками.Skitalec777 писал(а):Или необходимо иметь отладочные платы с разными микроконтроллерами и использовать их в зависимости от поставленной задачи?

Хоть для меня радио и темный лес, но идея цифровать эфир армом и делать всю обработку в софте выглядит весьма интересной.
- Сообщения: 24
- Зарегистрирован: Чт ноя 12, 2015 08:13:38
Большое Вам спасибо за Ваш, как обычно, подробный и развернутый ответ. К слову сказать, когда-то именно Ваш пост заставил меня посмотреть в сторону ARM, за что я Вам благодарен вдвойне. Однако, я думаю, что Вы лукавили, когда сказали: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 на потом.
Слишком уж у Вас для человека без опыта глубокие и структурированные познания в области AVR. Это комплимент, если что.scorpi_0n писал(а):Нет. Опыта практически нет.
А на STM32 бывают переходники DIP? Что-то на Алиэкспресс я таких не нашел? Может они имеют какое-то особое название? А так-то совет a5021 мне очень понравился:
Было бы интересно попробовать!a5021 писал(а):Купите программатор, самый дешевый МК и запаяйте его на простейшую плату.
Fasmarm обновился, баг с dwarf исправлен, теперь корректно дизассемблируется 
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- Сообщения: 24
- Зарегистрирован: Чт ноя 12, 2015 08:13:38
- Сообщения: 616
- Зарегистрирован: Вс ноя 01, 2015 13:13:49
Примерно такое
http://ru.aliexpress.com/item/Turn-DIP1 ... 35181.html
но только TSSOP20 --> DIP или LQFP32--> DIP. Недостающее распаивается навесом. Кварц можно для начала и не распаивать но если нужен то лучше распаять сразу. Если делать неспеша думаючи и аккуратно то всё получается достаточно удобно и мило.
http://ru.aliexpress.com/item/Turn-DIP1 ... 35181.html
но только TSSOP20 --> DIP или LQFP32--> DIP. Недостающее распаивается навесом. Кварц можно для начала и не распаивать но если нужен то лучше распаять сразу. Если делать неспеша думаючи и аккуратно то всё получается достаточно удобно и мило.
А можно попробовать вот такие:Ссылкаscorpi_0n писал(а):Примерно такое
2 Skitalec777
Нет, кварц не обязательно. Минимально - подать питание. Но обычно достаточно: кнопка ресет (рис.21 даташита), кварц (рис.16), и питание (рис.12 + стабилизатор).
Нет, кварц не обязательно. Минимально - подать питание. Но обычно достаточно: кнопка ресет (рис.21 даташита), кварц (рис.16), и питание (рис.12 + стабилизатор).
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- Сообщения: 616
- Зарегистрирован: Вс ноя 01, 2015 13:13:49
Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
- Сообщения: 606
- Зарегистрирован: Вт июн 25, 2013 18:45:07
Лепота!Alexey_N писал(а):Fasmarm обновился, баг с dwarf исправлен, теперь корректно дизассемблируется
Теперича будем вычёсывать новые баги
- Сообщения: 606
- Зарегистрирован: Вт июн 25, 2013 18:45:07
Отладчики и программаторы лишние. Заливайте по UARTscorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
- Сообщения: 6452
- Зарегистрирован: Пт сен 13, 2013 13:11:31
Можно и по уарт, но тогда, если какой ступор произойдет, то выяснять причину придется посредством спиритического сеанса. Программатор/отладчик нужен для быстрого установления "глупых" и примитивных ошибок, которые на начальном этапе весьма вероятны.
Кнопка ресет очень даже нужная, меня, например, начинающего в этом деле, уже один раз спасла, когда stm32f103 после мною написанного кривого кода впал в ступор и st-link utility не хотела подключаться к нему. Не зря она присутствует в планшетах и т.п. Конечно, ее можно заменить процедурой выкл/вкл питания, но это будет уже изврат.scorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- Сообщения: 616
- Зарегистрирован: Вс ноя 01, 2015 13:13:49
Для этого есть опция в отладчике Under Reset. А если по незнанию МК загнать в Level2 то и кнопка уже не поможет.
- Сообщения: 6452
- Зарегистрирован: Пт сен 13, 2013 13:11:31
На планшете аккум не отцепить, а на макетке питание сбросить ничуть не сложнее нажатия кнопки. Резет лишний здесь.Alexey_N писал(а):Кнопка ресет очень даже нужная, меня, например, начинающего в этом деле, уже один раз спасла, [...] Не зря она присутствует в планшетах и т.п.scorpi_0n писал(а):Кнопка на ресет лишняя. Это атавизм. Зачем она нужна если есть отладчик?


