"...или бегством к незнакомому стремиться?"
(с) надеюсь, все помнят, кто
Универсальный вопрос на любую тему: от неудобных ботинок до эмиграции.
Я же сейчас озадачился им вот по какому поводу.
Свалилось предложение разработать небольшой специализированный электронный блочочек.
К предложению приложена схема "прототипа" 30-летней давности. Формата А1 - куча "рассыпухи" на древних чипах серии К140 и К155, с АЦП последовательного приближения тоже на "рассыпухе" и гальванической изоляцией на трансформаторах ТИМ-5В. Для понимания алгоритма, так сказать.
(живьем "образец" еще не видел)
Серия будет 36 штук, плюс несколько "в запас".
Ныне всю эту требуху можно и нужно выкинуть и воткнуть микроконтроллер. Особенно учитывая требование "какого-нибудь интерфейса" (дословно из ТЗ) для подключения к ПЛК и панели. (в ПЛК и панель тоже предстоит влезть, но это проще).
Вот тут, собственно, и встал вопрос из заголовка.
Такими делами я не занимался лет 12. Или даже 13. И с той далекой молодости остались навыки по обращению с 8-битными контроллерами тех времен (80х51, AVR, PIC). Вспомнить их, как начнешь делать - несложно.
Но беглый обзор нынешнего состояния дел в области микроконтроллеростроения показал наличие просто замечательной (на бумаге) штуковины под названием STM32.
Для нашего простенького приборчика, по прикидкам, хватит и останется самого простого и дешевого представителя семейства - STM32F030F4 ценой в розницу 2 (два) доллара. И за эти два доллара - полноценное 32-битное ядро ARM и полный фарш периферии.
Но!
С одной стороны -
"Красиво на бумаге" - это одно. А "опыт работы" - это другое.
Понятно, что Си - он и в Африке Си. Тем более хорошо знакомая среда от Keil.
Но всяческих нюансов всегда вылезет немало. С соответствующими непредсказуемыми бяками и задержками.
С другой стороны -
вымирание 8-битных процессоров очевидно и неизбежно; а возможность освоить что-то новое и перспективное за чужой счет - всегда полезна.
Да и жене объяснить вечер за программатором "я тут не просто самообразованием занимаюсь, а деньги в семью зарабатываю" - всяко проще.
Предложение нужно выдать в понедельник. Сижу в раздумьях...
Если у кого есть опыт работы с STM32 - буду рад услышать. Особенно - о проблемах и недостатках, о которых производители почему-то не любят упоминать...
(с) надеюсь, все помнят, кто
Универсальный вопрос на любую тему: от неудобных ботинок до эмиграции.
Я же сейчас озадачился им вот по какому поводу.
Свалилось предложение разработать небольшой специализированный электронный блочочек.
К предложению приложена схема "прототипа" 30-летней давности. Формата А1 - куча "рассыпухи" на древних чипах серии К140 и К155, с АЦП последовательного приближения тоже на "рассыпухе" и гальванической изоляцией на трансформаторах ТИМ-5В. Для понимания алгоритма, так сказать.
(живьем "образец" еще не видел)
Серия будет 36 штук, плюс несколько "в запас".
Ныне всю эту требуху можно и нужно выкинуть и воткнуть микроконтроллер. Особенно учитывая требование "какого-нибудь интерфейса" (дословно из ТЗ) для подключения к ПЛК и панели. (в ПЛК и панель тоже предстоит влезть, но это проще).
Вот тут, собственно, и встал вопрос из заголовка.
Такими делами я не занимался лет 12. Или даже 13. И с той далекой молодости остались навыки по обращению с 8-битными контроллерами тех времен (80х51, AVR, PIC). Вспомнить их, как начнешь делать - несложно.
Но беглый обзор нынешнего состояния дел в области микроконтроллеростроения показал наличие просто замечательной (на бумаге) штуковины под названием STM32.
Для нашего простенького приборчика, по прикидкам, хватит и останется самого простого и дешевого представителя семейства - STM32F030F4 ценой в розницу 2 (два) доллара. И за эти два доллара - полноценное 32-битное ядро ARM и полный фарш периферии.
Но!
С одной стороны -
"Красиво на бумаге" - это одно. А "опыт работы" - это другое.
Понятно, что Си - он и в Африке Си. Тем более хорошо знакомая среда от Keil.
Но всяческих нюансов всегда вылезет немало. С соответствующими непредсказуемыми бяками и задержками.
С другой стороны -
вымирание 8-битных процессоров очевидно и неизбежно; а возможность освоить что-то новое и перспективное за чужой счет - всегда полезна.
Да и жене объяснить вечер за программатором "я тут не просто самообразованием занимаюсь, а деньги в семью зарабатываю" - всяко проще.
Предложение нужно выдать в понедельник. Сижу в раздумьях...
Если у кого есть опыт работы с STM32 - буду рад услышать. Особенно - о проблемах и недостатках, о которых производители почему-то не любят упоминать...
Tags:
no subject
Если надо написать нечто специфическое в незнакомой архитектуре, формулируешь и за малый прайсТЗ нанимаешь в инете исполнителя.
Под готовое ТЗ и при адекватном тестировании это будет быстро и нормально.
no subject
Потом, отладчик для авр (если покупать целиком :) ) - под 10 тыс.
Отладчик для стм32 - 2.5 тыс. Фирменный, вроде есть еще китайские клоны за 1 долл, но мне таким было бы неприятно пользоваться.
CubeMX - генерит очень глючный код, но что то полезное в нем есть :)
В целом конечно стм32 гораздо сложнее авр-ок.
no subject
Генерируешь проект в Keil (в бесплатный лимит ещё и FreeRTOS запихнуть можешь)
Пару вечеров поизучать нужные HAL ручки
И золотой ключик в кармане.
Для простоты можно взять какую-нибудь плату из разряда discovery/nucleo
Сейчас всё стало гораздо проще
no subject
Я тоже хочу на stm переехать - похоже, экономически это очень даже обосновано. Но навскидку - там всё существенно более муторно, чем в avr. Одна только конфигурация clock-ов - семь вёрст, и всё лесом. Действительно, есть генератор конфигураций, но я только чтобы в нём галки выставить потратил полдня. Пока отложил...
По идее, на него ставится вот это: http://www.ethernut.de/en/download/index.html
Но, опять же, сконфирурировать с ethernet-ом у меня пока не вышло. А это привлекательно.
Впрочем, для связи с ПЛК хватит модбаса по 485...
no subject
И тот же FreeRTOS одной галкой включается
К avr не хватало такой лентяйки
no subject
no subject
no subject
Задачи не знаю, но взял бы stm32f103.
Все же запас по памяти, перефирии и мегагерцам не так много стоит, но душу греет.
no subject
no subject
no subject
Бывает удобно нечто с 8 ножками.
А STM'ки 32-битные такие бывают?...
Вроде, меньше, чем 48 ножек, там не бывает.
Что уже не так уж страшно, конечно.
Но 8 ножек же удобнее, если бОльшего и не надо!
Вот что FPGA'шек таких не бывает, это печаль.
no subject
Да и народ там ныне в основном по теме смартфонов и интернета.
no subject
no subject
Главное различие: AVR8 расчитан на гораздо более грубое питание, в целом он более живучий.
STM32 более "нежные" чипы. Требуется куча bypass cap, хорошо фильтрованное питание, согласование по ногам IO и т.п.
AVR8 хорошо подходит для простых алгоритмов. Ноги IO выдерживают ток до 20mA сильно сокращают "обвязку".
STM32 хорошо работает в коммуникационных задачах, где нужны сетевые стеки, пожирающие килобайты оперативки.
С точки зрения программиста сейчас 90% кода генерится Wizard-ом автоматически, под обе архитектуры.
STM32 ближе к ПК, у него единое адресное пространство на все.
AVR8 архитектурно имеет 3 вида памяти ROM, RAM, EEPROM. Каждая адресуется с нуля своим набором команд. Это добавляет отказоусточивости (код только в ROM) и гемора программисту.
no subject
архитектура так и останется для себя - незнакомой
А учиться на не-ответственных, но оплачиваемых проектах - милое дело (под это дело можно еще и простенький отладчик прикупить)
no subject
no subject
no subject
no subject
Т.е. научится основным приемам и получить в качестве примера собранную архитектуру проекта, который уже потом самостоятельно допиливать.
Основное время будет тратится на попытки разобраться в незнакомой методологии работы, а при наличии человека которые знает краткий путь к цели - все сильно упростится. Потратить на это часть денег имхо выгодное вложение.
no subject
no subject
no subject
8битники вполне живы и будут еще долго жить на несложных проектов. Даже камни с жутким для кодинга на С ядром 8051 выпускают новые, не говоря уж о AVR, STM8,...
По стм:
- корпус с шагом 0.5 менее приятно паять, чем AVR с шагом 0.8 или 1.27;
- 3.3В питания неудобно сопрягать с 5в периферией, если надо конечно;
- китайский STLINK за 3 бакса на али работает отлично, отладка и загрузка быстры и надежны;
- STM32CubeMX для несложных проектов лучше использовать только для визуальной конфигурации ножек, лень в изучении даташита может аукнуться неожиданным поведением индусского кода;
- удобны только базовые функции CMSIS, дальше риск индусского кода и двойного изучения: даташита и поведения функции;
no subject
https://geektimes.ru/search/?q=stm32
no subject
Нельзя просто так взять и поморгать светодиодом на STM32
гыгы
no subject
https://habrahabr.ru/users/kiltum/topics/
А если ЧСВ меряться, то можно и это приплести. https://multik.org/stm32book/
Все мое, если чего :)