Перейти к содержанию

STM32 для чайника


ART_ME

Рекомендуемые сообщения

я бы еще добавил, что данный код забыл сделать оверсэмплинг хотябы по 50 точкам. А без этого показаниям АЦП можно доверять с точностью погоды на марсе

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

8 часов назад, COKPOWEHEU сказал:

Что тут скажешь. Код пока понятный, даже форматирование есть. Из наиболее очевидных минусов - бейсик вместо языка программирования и goto без надобности.

 

Там есть еще Си и паскаль.

Но приведенный мной пример показывает, что, как это ни парадоксально, не всегда язык не имеет значение.

Любопытно, что у дельты аналогичная структура (см. ниже) является элементом языка, а у МЕ - нет.

Не знаю из каких соображений это сделано, но получается так, что МЕ пошла по пути панельщиков - изобрела собственные языки - бэйсикоподобный, сиподобный и паскалеподобный. Последний - нонсенс, панельщики применяют VB-подобный.

Снимок.JPG

8 часов назад, COKPOWEHEU сказал:

Зачем используется программный UART когда на STM-ке куча аппаратных?

Затем, что "скрипач не нужен". Цикловой автомат в ПЛК является типичным.

Хотя в библиотеке есть и UART на прерываниях. Если сможете внятно объяснить, какие преимущество в данной задаче у аппаратного UART перед программным, я поставлю аппаратный.

8 часов назад, COKPOWEHEU сказал:

На какой частоте у вас работает ядро? Насколько эта частота стабильна? Используется ли страховка на случай остановки кварца? Используется ли собака (watchdog)? Точно ли для такой задачи нужен ARM контроллер? Судя по коду достаточно ардуины.

Дык весь прикол в том и состоит, что я как бы не не могу ответить на Ваши вопросы, и тем не менее МК работает.

И этот факт как раз и является самым ценным для "чайника".

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

8 часов назад, COKPOWEHEU сказал:

А что, IDE для вас непременный атрибут программиста? Кто программирует в обычном текстовом редакторе и компилирует makefile'ом для вас не человек уже?

Вопрос явно не ко мне! Ведь отнюдь не я оскорблял окружающих только за то, что они пользуются не тем IDE, а меня. Причем упорно продолжают это делать.

Изменено пользователем ART_ME

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

2 часа назад, ART_ME сказал:

Но приведенный мной пример показывает, что, как это ни парадоксально, не всегда язык не имеет значение.

Язык не имеет значения до того момента когда понадобиться показать код другому или воспользоваться чужими наработками. Лучшим в такой ситуации оказывается наиболее распространенный язык, а для низкоуровневого программирования (работа с ядром и периферией, контроллеры) это Си. Еще программист должен понимать Ассемблер. Не обязательно на профессиональном уровне, не обязательно на нем писать, но понимать что нагенерировал компилятор, и как контроллер вообще работает, надо. Впрочем, это относится только к программистам: конфигураторам, собирающим что-то из готовых блоков, это не нужно, им хватит Ардуины или Лего. Вот только не надо пытаться применить такой подход для мало-мальски сложных разработок.

2 часа назад, ART_ME сказал:

Затем, что "скрипач не нужен". Цикловой автомат в ПЛК является типичным.

Потому что контроллер - штука принципиально последовательная. Пока принимается или передается байт по программному UART, он не может заниматься ничем другим - мерять АЦП, отслеживать другие UART, управлять устройствами. Думаете, аппаратные модули были придуманы только чтобы усложнить топологию и задрать цену?

2 часа назад, ART_ME сказал:

Дык весь прикол в том и состоит, что я как бы не не могу ответить на Ваши вопросы, и тем не менее МК работает.

И этот факт как раз и является самым ценным для "чайника".

До чайника вам еще далеко, это вам уже сказали. Чайник многого не знает, но знает об этом и стремится исправиться. Воинствующее невежество называется иначе.

Вы же даже не знаете насколько нагрузили контроллер и какой функционал в него еще влезет, не можете оценить скорость реакции на внешние события, да и саму реакцию тоже. Что произойдет если по кварцу таракан мокрыми лапами пробежит? Схема зависнет или просто снизит точность временных интервалов? А если ошибка в коде (не обязательно вашем, возможно, библиотечном) приведет к зацикливанию - сумеет ли контроллер из него выбраться?

2 часа назад, ART_ME сказал:

Вопрос явно не ко мне! Ведь отнюдь не я оскорблял окружающих только за то, что они пользуются не тем IDE, а меня. Причем упорно продолжают это делать.

Вы спросили про выбор IDE, а не, скажем, компилятора. Хотя информация о компиляторе важнее: разные IDE можно настроить на один и тот же компилятор, а сам он определяет диалект языка и доступные библиотеки. А сама IDE - вопрос только удобства самого программиста, какие панельки или подсказки ему приятнее видеть. А вас не столько оскорбляют, сколько пытаются продемонстрировать недостатки вашего подхода. Вместо того чтобы спорить, посмотрите в инете примеры устройств на таких же контроллерах и оцените, представляете ли как они работают, смогли ли бы повторить и будет ли ваш инструмент мешать или помогать вам.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

14 минуты назад, COKPOWEHEU сказал:

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

 

А я и не пытаюсь и не планирую пытаться заниматься мало-мальски сложными разработками. 

Хотя на самом деле все просто: при работе с панелью омрона я буду писать код для STM32 на Си, а при работе с дельтой - на бэйсике. Догадались почему?

14 минуты назад, COKPOWEHEU сказал:

Пока принимается или передается байт по программному UART, он не может заниматься ничем другим - мерять АЦП, отслеживать другие UART, управлять устройствами. Думаете, аппаратные модули были придуманы только чтобы усложнить топологию и задрать цену?

 

А Вы думаете я от балды указал секундный таймаут в коде?

14 минуты назад, COKPOWEHEU сказал:

До чайника вам еще далеко, это вам уже сказали.

Ба! А ведь Вы правы. По определению "чайник" - это новичок, который пытается делать вид, что он Гуру, несмотря на терминальную стадию ФГМ.

А я нигде и никогда не заявлял, что я гуру в STM32. 

 

 

 

 

Изменено пользователем ART_ME

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

30 минут назад, COKPOWEHEU сказал:

Что произойдет если по кварцу таракан мокрыми лапами пробежит?

Ничего не произойдет. Мокрый хитин = мертвый таракан. А мертвые тараканы не бегают.

30 минут назад, COKPOWEHEU сказал:

А если ошибка в коде (не обязательно вашем, возможно, библиотечном) приведет к зацикливанию - сумеет ли контроллер из него выбраться?

Как бы Вам так попроще объяснить.... Вот, к примеру,  произошла ошибка кода в Вашем планшете с allwinner. Какая Вам радость того, что из-за этой ошибки планшет не завис, а ушел на хардресет?

Изменено пользователем ART_ME

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, ART_ME сказал:

А Вы думаете я от балды указал секундный таймаут в коде?

И что он дает?

 

8 минут назад, ART_ME сказал:

Ничего не произойдет.

Как раз совсем наоборот. Может хватит бравировать своим невежеством?

Изменено пользователем BARS_
Ссылка на комментарий
Поделиться на другие сайты

31 минуту назад, COKPOWEHEU сказал:

Вы спросили про выбор IDE, а не, скажем, компилятора. Хотя информация о компиляторе важнее: разные IDE можно настроить на один и тот же компилятор...

Возможно Вам это покажется святотатством, но меня совершенно не интересует компилятор. И по очень простой причине - мощности STM32 настолько превышают мои текущие потребности (именно по этой причине я им и заинтересовался!!!) , что объем и скорость исполнения кода меня совершенно не волнуют. 

35 минут назад, COKPOWEHEU сказал:

А сама IDE - вопрос только удобства самого программиста....

А вот это для меня и есть самое главное, и скорее всего именно потому, что я не программист. Да-да, в данном случае для меня МЕ как  винда для домозяйки. :D

40 минут назад, COKPOWEHEU сказал:

сколько пытаются продемонстрировать недостатки вашего подхода.

Кто пытаются-то? "Цифровики" что ли?   :lol:

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, BARS_ сказал:
  1. Цитата
    1 час назад, ART_ME сказал:

     

     

     

Давайте без истерик , присущих ART_ME, разберемся .

Во первых он решил "создать" "нуль-модемное" соединение.

Нуль-модемное соединение , это соединение терминалов без модема , по RS232 .

Это не реализовано ART_ME- ибо в примере от микроС просто UART, так к тому же софтовый .

Софтовый и к тому же просто пример, без обработок ошибок, выставленный AS IS.

Используется софт от микроС, компиляторы в нем не имеют ничего общего ни с Basic ни C ни с Pascal.

  Ну и "фишки" микроС - закрытые библиотеки , узкозаточенные , ни грамма не оптимальные и глючные.

Ну это все мелочи , если не запамятовал - болезный использует F0 чип, чип где аппаратная реализация UART имеет массу плюшек.

 Здесь и аппаратная поддержка модбас, авто-определение скорости , аппаратная обработка ошибок.

Вменяемая реализация UART ( как многие пишут на CMSIS) вместе с инициализацией пинов и самого модуля UART занимает десяток строк.

 

Выводы сами сделаете?

 

9 часов назад, ART_ME сказал:

 

А вот это для меня и есть самое главное, и скорее всего именно потому, что я не программист. Да-да, в данном случае для меня МЕ как  винда для домозяйки. :D

 

Ты не только не программист , ты пока полный нуль во всем .

И просто обязан сидеть и слушать, а не испражнять фекалии на окружающих...

Изменено пользователем dosikus
Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, ART_ME сказал:

Ба! А ведь Вы правы. По определению "чайник" - это новичок, который пытается делать вид, что он Гуру, несмотря на терминальную стадию ФГМ.

Снова мимо. Человек, не разбирающийся, разбираться не собирающийся, но считающий что все знает лучше - ламер.

9 часов назад, ART_ME сказал:

Как бы Вам так попроще объяснить.... Вот, к примеру,  произошла ошибка кода в Вашем планшете с allwinner. Какая Вам радость того, что из-за этой ошибки планшет не завис, а ушел на хардресет?

Планшет? Его и вручную перезагрузить недолго. Я говорил про что-то более ответственное. Скажем, инкубатор для яиц - нехорошо если зависнет и зажарит.

9 часов назад, ART_ME сказал:

А вот это для меня и есть самое главное, и скорее всего именно потому, что я не программист.

Кто пытаются-то? "Цифровики" что ли?   :lol:

Тогда что вы тут пытаетесь доказать? Это форум для разработчиков электроники, а не для любителей играть в кубики. И если ваш круг задач ограничивается миганием диодом то никакая платформа не сложная, ни AVR, ни PIC, ни ARM, ни х86 - подобных примеров везде навалом. В слово "цифровики" вы пытаетесь вложить какой-то негативный смысл, но я пока не понимаю какой и зачем.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

11 минуту назад, COKPOWEHEU сказал:

Я говорил про что-то более ответственное. Скажем, инкубатор для яиц - нехорошо если зависнет и зажарит.

 

У меня такое ощущение, что это просто очередной "успешный" мэнагер  решил "попасть в струю".

Ноль образования , максимум амбиций...

 

Ссылка на комментарий
Поделиться на другие сайты

вот, наверное.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

главное не здесь. Надоел уже

Изменено пользователем mail_robot

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

Трoлю пофик на содержание.Главное срач развести. Лишнее подтверждение бессмысленности субьекта как собеседника

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Ссылка на комментарий
Поделиться на другие сайты

Ввиду окончания исследования кратко о результате.

Как это ни печально, но на сегодня STM32 оказался не готов к практическому использованию.

Причина одна: для такого применения нет соответствующего IDE.

Ближе всех к нужному IDE подошел MikroE - они создали свой Built-in Routines, у остальных изготовителей даже попытки этого не обнаружено.

Но, к сожалению, MikroE лишь замахнулся на полноценный продукт, но дальше этого не пошел.

Непригоден STM32 и для любителей - такие параметры просто не нужны в быту.

Теперь стало понятно, почему китайцы пошли на демпинг.

Так что положил я свои STM32 в красивую коробочку, пусть лежат до лучших времен, т.к. часы на мк меня ни капли не интересуют.

ЗЫ. Агрессивным онанистам - я не буду читать ответы, так что обсирать по привычке меня здесь грязью не имеет никакого смысла. 

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

3 hours ago, ART_ME said:

Как это ни печально, но на сегодня STM32 оказался не готов к практическому использованию.

Причина одна: для такого применения нет соответствующего IDE.

Ближе всех к нужному IDE подошел MikroE - они создали свой Built-in Routines, у остальных изготовителей даже попытки этого не обнаружено.

 

Попробуйте Arduino IDE, его можно настроить под STM32. Эта среда как раз для начинающих. А так для вашей цели лучше подходит сама плата ардуино (arduino compatible), китайский клон такой платы стоит пару долларов, зачем вам сам stm32?

См https://geektimes.ru/post/277928/

 

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, ART_ME сказал:

Как это ни печально, но на сегодня STM32 оказался не готов к практическому использованию.

Ага, пойди расскажи это десяткам тысяч людей, использующих эти МК

 

3 часа назад, ART_ME сказал:

Причина одна: для такого применения нет соответствующего IDE.

О нет, причина как раз в ленивом пользователе IDE. Те же десятки тысяч людей по всему миру существующие IDE устраивают. Не кажется странным?

 

3 часа назад, ART_ME сказал:

Непригоден STM32 и для любителей - такие параметры просто не нужны в быту.

Это какие там такие параметры, что в быту не нужны? Озвучь, чего словами разбрасываться! А заодно и укажи то, что для любителей пригодно!

 

3 часа назад, ART_ME сказал:

часы на мк меня ни капли не интересуют

А ты даже такое не сделаешь.

 

3 часа назад, ART_ME сказал:

Агрессивным онанистам

Какая самокритика! Не ожидал даже.

10 минут назад, bobbjenkins сказал:

Попробуйте Arduino IDE, его можно настроить под STM32

Нет, нет и нет. Лучше сразу настроить мозги под нормальные IDE. Иначе потом будет крайне сложно...

Ссылка на комментарий
Поделиться на другие сайты

Начинаю осваивать STM32 в связке CubeMX и CoIDE v2. Примитивнейший вопрос назрел, как присвоить значение порту целиком, среди HAL_GPIO такой функции не нашел, или просто туплю:D (хочу подключить дисплей с параллельной шиной, FSMC не предлагать, использую 48 ногий контроллер)

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...