fixik_papus: (Default)
[personal profile] fixik_papus
"...или бегством к незнакомому стремиться?"
(с) надеюсь, все помнят, кто

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

Свалилось предложение разработать небольшой специализированный электронный блочочек.
К предложению приложена схема "прототипа" 30-летней давности. Формата А1 - куча "рассыпухи" на древних чипах серии К140 и К155, с АЦП последовательного приближения тоже на "рассыпухе" и гальванической изоляцией на трансформаторах ТИМ-5В. Для понимания алгоритма, так сказать.
(живьем "образец" еще не видел)
Серия будет 36 штук, плюс несколько "в запас".

Ныне всю эту требуху можно и нужно выкинуть и воткнуть микроконтроллер. Особенно учитывая требование "какого-нибудь интерфейса" (дословно из ТЗ) для подключения к ПЛК и панели. (в ПЛК и панель тоже предстоит влезть, но это проще).

Вот тут, собственно, и встал вопрос из заголовка.
Такими делами я не занимался лет 12. Или даже 13. И с той далекой молодости остались навыки по обращению с 8-битными контроллерами тех времен (80х51, AVR, PIC). Вспомнить их, как начнешь делать - несложно.

Но беглый обзор нынешнего состояния дел в области микроконтроллеростроения показал наличие просто замечательной (на бумаге) штуковины под названием STM32.
Для нашего простенького приборчика, по прикидкам, хватит и останется самого простого и дешевого представителя семейства - STM32F030F4 ценой в розницу 2 (два) доллара. И за эти два доллара - полноценное 32-битное ядро ARM и полный фарш периферии.

Но!
С одной стороны -
"Красиво на бумаге" - это одно. А "опыт работы" - это другое.
Понятно, что Си - он и в Африке Си. Тем более хорошо знакомая среда от Keil.
Но всяческих нюансов всегда вылезет немало. С соответствующими непредсказуемыми бяками и задержками.

С другой стороны -
вымирание 8-битных процессоров очевидно и неизбежно; а возможность освоить что-то новое и перспективное за чужой счет - всегда полезна.
Да и жене объяснить вечер за программатором "я тут не просто самообразованием занимаюсь, а деньги в семью зарабатываю" - всяко проще.

Предложение нужно выдать в понедельник. Сижу в раздумьях...

Если у кого есть опыт работы с STM32 - буду рад услышать. Особенно - о проблемах и недостатках, о которых производители почему-то не любят упоминать...
Page 1 of 3 << [1] [2] [3] >>
Date: 17 Mar 2016 21:19 (UTC)

From: [identity profile] gray-bird.livejournal.com
Бюджет есть?
Если надо написать нечто специфическое в незнакомой архитектуре, формулируешь и за малый прайсТЗ нанимаешь в инете исполнителя.
Под готовое ТЗ и при адекватном тестировании это будет быстро и нормально.
Date: 17 Mar 2016 21:28 (UTC)

From: [identity profile] toster666.livejournal.com
Как мне кажется, стм32 сейчас - это новый стандарт или прорыв, каким были в свое время авр.
Потом, отладчик для авр (если покупать целиком :) ) - под 10 тыс.
Отладчик для стм32 - 2.5 тыс. Фирменный, вроде есть еще китайские клоны за 1 долл, но мне таким было бы неприятно пользоваться.
CubeMX - генерит очень глючный код, но что то полезное в нем есть :)
В целом конечно стм32 гораздо сложнее авр-ок.
Date: 17 Mar 2016 21:48 (UTC)

From: [identity profile] stifff.livejournal.com
Качаешь STM32CubeMX, конфигурируешь в несколько нажатий мыши.
Генерируешь проект в Keil (в бесплатный лимит ещё и FreeRTOS запихнуть можешь)
Пару вечеров поизучать нужные HAL ручки
И золотой ключик в кармане.

Для простоты можно взять какую-нибудь плату из разряда discovery/nucleo

Сейчас всё стало гораздо проще
Date: 17 Mar 2016 21:51 (UTC)

From: [identity profile] dz.livejournal.com
На всякий случай - богатый источник готовых модулей на stm: http://www.starterkit.ru/

Я тоже хочу на stm переехать - похоже, экономически это очень даже обосновано. Но навскидку - там всё существенно более муторно, чем в avr. Одна только конфигурация clock-ов - семь вёрст, и всё лесом. Действительно, есть генератор конфигураций, но я только чтобы в нём галки выставить потратил полдня. Пока отложил...

По идее, на него ставится вот это: http://www.ethernut.de/en/download/index.html

Но, опять же, сконфирурировать с ethernet-ом у меня пока не вышло. А это привлекательно.

Впрочем, для связи с ПЛК хватит модбаса по 485...
Date: 17 Mar 2016 21:56 (UTC)

From: [identity profile] stifff.livejournal.com
С генератором (котоырй STM32CubeMX) в простых случаях все очень просто. Намного проще, чем писать руками. Плюс оно и библиотеки HAL подтягивает и периферию инициализирует.
И тот же FreeRTOS одной галкой включается

К avr не хватало такой лентяйки
Date: 17 Mar 2016 22:02 (UTC)

From: [identity profile] wormball.livejournal.com
Штирлиц знал, что запоминается только начало и конец..
Date: 17 Mar 2016 22:42 (UTC)

From: [identity profile] curious-2009.livejournal.com
Как раз сегодня френд писал - http://kincajou.livejournal.com/3883538.html
Date: 18 Mar 2016 01:58 (UTC)

From: [identity profile] Юрий Рыженко (from livejournal.com)

Задачи не знаю, но взял бы stm32f103.
Все же запас по памяти, перефирии и мегагерцам не так много стоит, но душу греет.

Date: 18 Mar 2016 05:06 (UTC)

From: [identity profile] 100-kitaizev.livejournal.com
Данный вопрос стоит вешать на хабр или гиктаймс, всё-таки там тусуется намного больше людей по теме...
Date: 18 Mar 2016 05:26 (UTC)

From: [identity profile] riseofdeath.livejournal.com
Систему есть смысл ставить, когда в ней есть смысл. А то видел, когда народ пихал ее просто так, причем в серьезные проекты.
Date: 18 Mar 2016 05:55 (UTC)

From: [identity profile] nivanych.livejournal.com
> вымирание 8-битных процессоров очевидно и неизбежно

Бывает удобно нечто с 8 ножками.
А STM'ки 32-битные такие бывают?...
Вроде, меньше, чем 48 ножек, там не бывает.
Что уже не так уж страшно, конечно.
Но 8 ножек же удобнее, если бОльшего и не надо!
Вот что FPGA'шек таких не бывает, это печаль.
Date: 18 Mar 2016 05:59 (UTC)

From: [identity profile] fixik-papus.livejournal.com
Я там не писатель. Я там читатель.
Да и народ там ныне в основном по теме смартфонов и интернета.
Edited Date: 18 Mar 2016 06:16 (UTC)
Date: 18 Mar 2016 06:00 (UTC)

From: [identity profile] fixik-papus.livejournal.com
TSSOP20. Физический размер чуть больше текста "TSSOP20" на Вашем мониторе :)
Date: 18 Mar 2016 06:01 (UTC)

From: [identity profile] extracomplex.livejournal.com
Разрабатывал устройства и на базе AVR8 (MegaAVR) и на STM32Fxxx.
Главное различие: AVR8 расчитан на гораздо более грубое питание, в целом он более живучий.
STM32 более "нежные" чипы. Требуется куча bypass cap, хорошо фильтрованное питание, согласование по ногам IO и т.п.

AVR8 хорошо подходит для простых алгоритмов. Ноги IO выдерживают ток до 20mA сильно сокращают "обвязку".
STM32 хорошо работает в коммуникационных задачах, где нужны сетевые стеки, пожирающие килобайты оперативки.

С точки зрения программиста сейчас 90% кода генерится Wizard-ом автоматически, под обе архитектуры.
STM32 ближе к ПК, у него единое адресное пространство на все.
AVR8 архитектурно имеет 3 вида памяти ROM, RAM, EEPROM. Каждая адресуется с нуля своим набором команд. Это добавляет отказоусточивости (код только в ROM) и гемора программисту.
Date: 18 Mar 2016 06:01 (UTC)

From: [identity profile] fixik-papus.livejournal.com
Этот подход имеет один очевидный минус:
архитектура так и останется для себя - незнакомой
А учиться на не-ответственных, но оплачиваемых проектах - милое дело (под это дело можно еще и простенький отладчик прикупить)
Date: 18 Mar 2016 06:02 (UTC)

From: [identity profile] fixik-papus.livejournal.com
В этом проекте и так запас 100-кратный по всему :)
Date: 18 Mar 2016 06:04 (UTC)

From: [identity profile] fixik-papus.livejournal.com
А еще систему есть смысл ставить, чтобы поиграться с системой на данном железе и среде разработки :)
Date: 18 Mar 2016 06:06 (UTC)

From: [identity profile] kiltum.livejournal.com
Если что, можешь обращаться. Кактусы ел и ем.
Date: 18 Mar 2016 06:06 (UTC)

From: [identity profile] gray-bird.livejournal.com
Не, я имел ввиду найти кого-то, кто уже умеет работать с системой и поработать "рядом" совместно.
Т.е. научится основным приемам и получить в качестве примера собранную архитектуру проекта, который уже потом самостоятельно допиливать.

Основное время будет тратится на попытки разобраться в незнакомой методологии работы, а при наличии человека которые знает краткий путь к цели - все сильно упростится. Потратить на это часть денег имхо выгодное вложение.
Date: 18 Mar 2016 06:07 (UTC)

From: [identity profile] kiltum.livejournal.com
Минимальное у стм - tssop20. Это что паять руками еще можно. Но есть и qfn.
Date: 18 Mar 2016 06:11 (UTC)

From: [identity profile] tan-maun-ei.livejournal.com
Около года назад так же переезжал с AVR на STM32F4. Могу сказать следующее: для начального изучения периферии (если заниматься вечерами и не использовать конфигураторы) уйдёт 2-3 недели. Из недостатков увидел только один: несовместимость выходов (и части входов) с уровнями TTL.
Date: 18 Mar 2016 08:11 (UTC)

From: [identity profile] zurabob.livejournal.com
Я работаю и с stm32, и с AVR - переползание на стм заняло несколько полных дней. Но это нужно, только если действительно есть желание дальше разрабатывать на них, иначе зачем тратить время?
8битники вполне живы и будут еще долго жить на несложных проектов. Даже камни с жутким для кодинга на С ядром 8051 выпускают новые, не говоря уж о AVR, STM8,...
По стм:
- корпус с шагом 0.5 менее приятно паять, чем AVR с шагом 0.8 или 1.27;
- 3.3В питания неудобно сопрягать с 5в периферией, если надо конечно;
- китайский STLINK за 3 бакса на али работает отлично, отладка и загрузка быстры и надежны;
- STM32CubeMX для несложных проектов лучше использовать только для визуальной конфигурации ножек, лень в изучении даташита может аукнуться неожиданным поведением индусского кода;
- удобны только базовые функции CMSIS, дальше риск индусского кода и двойного изучения: даташита и поведения функции;

Date: 18 Mar 2016 08:30 (UTC)

From: [identity profile] ikaktys.livejournal.com
ну почитать таам есть немного

https://geektimes.ru/search/?q=stm32
Date: 18 Mar 2016 08:40 (UTC)

From: [identity profile] ikaktys.livejournal.com
https://geektimes.ru/post/255334/

Нельзя просто так взять и поморгать светодиодом на STM32


гыгы
Date: 18 Mar 2016 08:43 (UTC)

From: [identity profile] kiltum.livejournal.com
Можно и нужно!

https://habrahabr.ru/users/kiltum/topics/

А если ЧСВ меряться, то можно и это приплести. https://multik.org/stm32book/

Все мое, если чего :)
Page 1 of 3 << [1] [2] [3] >>

Profile

fixik_papus: (Default)
fixik_papus

January 2023

M T W T F S S
      1
2345678
9101112131415
16171819202122
232425262728 29
3031     

Style Credit

Expand Cut Tags

No cut tags
Page generated 5 Mar 2026 02:29
Powered by Dreamwidth Studios