Разработки ecoins для STM32

Разработки как правило универсальны для архитектур AVR,SAM3,SAMD21,ESP,STM32.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#61

Сообщение ecoins » 15.01.2021{, 21:36}

Сегодня не получается - завтра.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#62

Сообщение ecoins » 16.01.2021{, 23:50}

Потерял много времени при прошивки STM32F103C(R,V) одновременно на разных ядрах (STM32-Master и STM32duino)
и обнаружил некоторые особенности .
1.После прошивки загрузчика (Maple) программа STM32CubeProgrammer перестает соединяться через ST-Link порт SWD.
В STM32-master программы через USB грузятся(STM32duino bootloader) нормально.
2.Если соединиться через UART (перемычку Boot0 переставляем к Vcc), и очистить память, то контроллер через ST-Link порт SWD подключается к контроллеру нормально (перемычка Boot0 к GND) и можно работать и STM32duino.
3.Можно работать и через ST-Link порт SWD и с прошитым загрузчиком, но для этого перемычку Boot0 переставляем к Vcc. Нормально работает (программа может затереть загрузчик), но после отключения питания программа запустится только если перемычка Boot0 к GND.
-------------------
Много времени потратил, не все понятно, может кому будет полезно, может кто-то объяснит...
-------------------
Программа STM32CubeProgrammer хорошо, но много к ней и претензий - программа молодая и наверное будут обновления.

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Разработки ecoins для STM32

#63

Сообщение slon-genia » 17.01.2021{, 13:17}

Получилось вывести на консоль информацию. Проблема была в том, что в настройках arduino ide нужно было включить USBCDC. После этого компорт видится через usb шнурок даже без кнопки RST и соответственно выводится вся информация по плате. Теперь можно пробовать работать с блоками. ecoins, у меня к вам просьба выложить недостающие библиотеки к вашему тестовому примеру (RT_HW_MCP23017.h, RT_HW_LCD_HD44780.h, RT_HW_DHTx.h) в этой ветке форума. Пришлось искать в другой вашей ветке. Думаю, что для начинающих, таких как я будет полезно и отбросит много лишних вопросов. Прикрепил файл с содержимым в консоле.
Вложения
консоль.txt
(3.4 КБ) 54 скачивания

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#64

Сообщение ecoins » 17.01.2021{, 16:51}

slon-genia писал(а):
17.01.2021{, 13:17}
Получилось вывести на консоль информацию. Проблема была в том, что в настройках arduino ide нужно было включить USBCDC. После этого компорт видится через usb шнурок даже без кнопки RST и соответственно выводится вся информация по плате. Теперь можно пробовать работать с блоками. ecoins, у меня к вам просьба выложить недостающие библиотеки к вашему тестовому примеру (RT_HW_MCP23017.h, RT_HW_LCD_HD44780.h, RT_HW_DHTx.h) в этой ветке форума. Пришлось искать в другой вашей ветке. Думаю, что для начинающих, таких как я будет полезно и отбросит много лишних вопросов. Прикрепил файл с содержимым в консоле.
Рад Вашим успехов. Нюансов много (внешних и скрытых) с STM32, если их описывать сразу, то только еще больше запутывать и распутывать.
Намой взгляд лучший путь поддержки - идти вместе с "вперед идущим". В итоге все получается.
Привести в порядок есть что, что много усилий уходит сейчас на поддержку многоплатформенной (AVR,ESP8266,ESP32,DUE,STM32F1,STM32F4,STM32F7,STM32H7), м многоядерной (STM32-Master, STM32duino) системы.
Многое взаимосвязанно, чтобы убрать или ослабить эту связь (сделать блоки универсальными) требуется усилия.
Требуется время. Думали в начале месяца завершим работу, но нужно еще некоторое время.
Потом все выложим в предварительно собранном и удобном виде.
------
Успехов.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#65

Сообщение ecoins » 24.01.2021{, 18:33}

Получили новые контроллеры^
1. STM32F407VG DevEBox;
2. STM32H7743VI WeAct Studio;
0010_Новые контроллеры.jpg
Начали увлеченно заниматься.
STM32H7 - она с маленьким дисплеем и камерой.
Но тут стало понятно, что некоторым пользователем требуется обещанная библиотека, которая работает и на ядре STM32F-master(Clark).
Интересное откладываем и начинаем выкладывать текущую версию - RT_HW_BASE.h ver.4.01d.
Пока идет работа над ней, в первом посте не будем ничего менять.
Материалов много - потому будет несколько сообщений.
Последний раз редактировалось ecoins 24.01.2021{, 18:43}, всего редактировалось 1 раз.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#66

Сообщение ecoins » 24.01.2021{, 18:42}

Новая версия библиотеки RT_HW_BASE.h ver.4.01d.
Теперь она не только мультиплатформенная, но и для STM32 мультиядерная - поддерживает ядро от Clark и от STM32(STM32duno).
Данные о поддерживаемых контроллерах в таблице.
СпойлерПоказать
0031_Поддерживаемые контроллеры.jpg
0031_Поддерживаемые контроллеры_л2.jpg
0031_Поддерживаемые контроллеры.pdf
(188.81 КБ) 82 скачивания
Появился новый любопытный контроллер SeeeDuino XIAO - на него обратил внимание Rovki, и он же прислал экземпляр на тестирование.
Контроллер не из дешевых, но очень и очень интересный - рекомендуем.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#67

Сообщение ecoins » 24.01.2021{, 18:49}

Файлы библиотек, пользовательских блоков и теста.
0030_RT_00_HW_BASE_v4.01d.zip
(264.82 КБ) 98 скачиваний
0032_Пользовательские блоки.zip
(334.66 КБ) 111 скачиваний
->Там несколько сгруппированных библиотек ПБ.
0040_BASE_401_BIG_Test_01_240121_ALL.zip
(531.78 КБ) 95 скачиваний
->файл нужно распаковать и библиотеки поместить в директорию libraries.
Это софт поддерживает не только STM32 - позже (ведутся работы над дополнительными функциями) будет выложен и в ветке "Разработки ecoins".
Последний раз редактировалось ecoins 25.01.2021{, 20:10}, всего редактировалось 2 раза.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#68

Сообщение ecoins » 24.01.2021{, 19:06}

Стенд на котором испытывалось:
1.STM32F103C(BLUEPILL_103C) - 128мБайт.
2.Загрузка череp USB, для ядра от Кларка выбираем плату Generic STM32F103CB series.
3.В тесте:
кнопка, светодиод, аналоговый вход, выход PWM, еще 4-е светодиода, UART1->KaScada, UART3->дисплей Nextion 8", USB - вывод пользовательских параметров, UART2- свободен.
2-е шины i2c - (в тесте задействована одна);
3-SPI->сдвиговый регистр HC595;
4. 2 дисплея на i2c -16x2, 20x4;
5. 2 16-разрядных регистра MCP23017;
6.Сенсор DS1820. Если использовать блок ecoins, то библиотеку OneWire.h лучше убрать - устанавливается более совершенная библиотека.
Как альтернатива - можно использовать блок DS1820 FLProg, или просто отключить плату.
7.Сенсор DHT22.
------------------
Можно еще подключить 3-устройства по SPI (например LCD), и много-много устройств через i2c, но с "правильными" библиотеками.
------------------
Тест написана таким образом, что любую плату ниже "Диспетчер", можно отключить.
-----------------
Все работает шустро - не нагруженный цикл loop() занимает менее 16 мкс.
0043_DSView-210124-175016.jpg
Внешний вид стенда:
0042_Стенд общий вид.jpg
0041_Стенд контроллер.jpg

Evgeniy1966
Рядовой
Сообщения: 3
Зарегистрирован: 31.05.2021{, 16:56}
Репутация: 0
Имя: ЕВГЕНИЙ

Разработки ecoins для STM32

#69

Сообщение Evgeniy1966 » 05.06.2021{, 07:52}

Добрый день .Работал в FLP НЕ РАЗУ НЕ ПРОГРАМИСТ есть удачные проекты.
Решил сделать полётный контролер для планера на STM103 но в FL с этим пока полная засада.
Поиски привели к вам ,есть некоторые не понятки.
1 Как я понял какой контроллер указать в FL неважно.
2 Использовать ВСТРОЕНЫЕ и ПОЛИЗОВАТЕЛЬСКИЕ блоки FL с вашими разработками.
3 Возможно в вашей разработки использовать дисплей OLED0.96 или LCD5110.
Спасибо.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#70

Сообщение ecoins » 05.06.2021{, 09:50}

Evgeniy1966 писал(а):
05.06.2021{, 07:52}
Решил сделать полётный контролер для планера на STM103 но в FL с этим пока полная засада.
Поиски привели к вам ,есть некоторые не понятки.
1 Как я понял какой контроллер указать в FL неважно.
2 Использовать ВСТРОЕНЫЕ и ПОЛИЗОВАТЕЛЬСКИЕ блоки FL с вашими разработками.
3 Возможно в вашей разработки использовать дисплей OLED0.96 или LCD5110.
Спасибо.
Здорово, что Вы собираетесь делать проект на STM32 в среде FLProg. На мой взгляд это наиболее перспективное и с технической точки зрения правильное направление.
По вопросам:
1.Контроллер в FLProg можно указать любой, мы обычно выбираем MEGA2560.
2.Встроенные блоки FLProg использовать можно. Есть особенности при использовании стандартных блоков, которые работают с пинами и с интерфейсами i2c и SPI. В большинстве случаев они е проявляются, но иногда... Наши библиотеки и блоки снимают эти проблемы.
3.Дисплей OLED 0.96 работает через i2c и проблем не должно быть.
Дисплей LCD5110 имеет интерфейс SPI - если использовать аппаратный интерфейс, то могут выплыть нюансы, в том числе ошибки компиляции. В планах есть разработка библиотек и блоков под эти типы дисплеев.
-------------
Еще бы обратил внимание на наш диспетчер, который настоятельно рекомендуем к использованию в проектах.
В последнее время платы на STM32F103C подскочили в цене, а на STM32F411 снизились. Возможно имеет смысл сразу делать проект на STM32F4.
------------
Успехов.

Evgeniy1966
Рядовой
Сообщения: 3
Зарегистрирован: 31.05.2021{, 16:56}
Репутация: 0
Имя: ЕВГЕНИЙ

Разработки ecoins для STM32

#71

Сообщение Evgeniy1966 » 05.06.2021{, 12:59}

ecoins писал(а):
05.06.2021{, 09:50}
Дисплей OLED 0.96 работает через i2c и проблем не должно быть.
Этот просто праздник, значит 5110 не нужен
ecoins писал(а):
05.06.2021{, 09:50}
В последнее время платы на STM32F103C подскочили в цене
Просто они есть в наличии а 411 ещё купить надо .
Спасибо за быстрый ответ

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#72

Сообщение ecoins » 13.07.2021{, 13:45}

В первом посте обновлены библиотеки, тестовые примеры, добавлена инструкция по загрузке в STM32.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#73

Сообщение ecoins » 13.07.2021{, 13:50}

Некоторые наброски из переписки с одним из пользователей, могут оказаться полезны:
===================================================================================
Используются только описание контролеров, которые прописаны в библиотеке RT_HW_BASE.h
Например для контроллера GENERIC STM32F103C - такой контроллер в ядре о Кларка (STM32-master)
1. В файле RT_HW_BASE_01_02_BOARD_DEFINED.hpp строки 196-202.
По этим строкам идентифицируется выбранный в Arduino IDE плата, выбирается используемое для проекта ядро - RT_HW_CORE_STM32.
2. По выбранному ядру в файле RT_HW_02_00_BOARD_CORE.hpp
задействован код, поддерживающий выбранное ядро - строки 251-295.
3.Непосредственно плата описана в файле RT_HW_BASE_03_20_BOARD_STM32F1.hpp - строки 1-101.
Здесь описаны пины, интерфейсы и разное полезное.
-----------
В проекте FLProg для простоты (и удобства) выбираете плату Arduino Mega 2560 и забываете об этом.
При загрузке из Arduino IDE выбираете используемую Вами плату (из списка - выложен в форуме) и больше ничего.
----------
Ваша плата с STM32F411 тоже будет работать - укажите BlackPill F411CE(ядро STM32duino).
--------
Можете грузить пример непосредственно из примеров RT_HW_BASE.h.
Пример FLProg_Test01_xxxxx будет моргать светодиодом и выведет на консоль параметры платы.
=================================================================================
Консоль соответствует монитору порта.
В Arduino IDE выбрать плату BlackPill F411CE из среды STM32duino.
Поменять параметр U(S)ART support на "Enabled (generic Serial).
Если прошивка через SWD, то значение COM порта будет присвоено после загрузки (посмотреть можно в диспетчере устройств).
================================================================================

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#74

Сообщение ecoins » 13.07.2021{, 14:44}

Пример загрузки:
1.Тест FLProg
FPROG_Test01_BOARD_v02_130721.zip
(417.95 КБ) 43 скачивания
2.Arduino IDE. Монитор порта не должен быть подключен , иначе не сможет загрузить.
Загрузка теста_1.PNG
3.Настройки в Arduino IDE
Загрузка теста_2.jpg
4.Смотрим порты. У нас 51.
Загрузка теста_3.PNG
Загрузка теста_3.PNG (5.95 КБ) 685 просмотров
5.Результат в мониторе порта (возможно перед входом придется нажать Reset, обычно только первый раз).
Загрузка теста_4.PNG

дрон
Рядовой
Сообщения: 94
Зарегистрирован: 09.11.2017{, 19:25}
Репутация: 2
Откуда: Москва
Имя: Андрей

Разработки ecoins для STM32

#75

Сообщение дрон » 13.07.2021{, 15:27}

ecoins писал(а):
13.07.2021{, 13:45}
В первом посте обновлены библиотеки, тестовые примеры, добавлена инструкция по загрузке в STM32.
Здравствуйте, не увидел инструкции.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#76

Сообщение ecoins » 13.07.2021{, 15:41}

дрон писал(а):
13.07.2021{, 15:27}
Здравствуйте, не увидел инструкции.
Спасибо. Поправил. В первом посте файл v02_Дружим с....

Отправлено спустя 1 час 49 минут 3 секунды:
Вопрос:
"Теперь о пинах.. Вопрос открыт. Не могу понять как их назначать.
Инфа из монитора дала общую картину по 411..
Подскажите.. или объясните, как обращаться с пинами?"
------
Ответ:
1.Из инфа из монитора в разделе "Name pins можно получить соответствие номеров пинов их наименованию.
Например PA3=195, PB0=200, PC13=31.
Эти значения можно использовать как номера пинов.
Это способ не удобен.
Тем более, что STM32duino в новой версии уже меняло нумерацию.
2.Напрямую указывать буквенное обозначение пинов в FLProg сейчас нельзя, но можно делать это через блоки "09.Выбор пользовательских параметров->Тестовые пины".
Там три врзможности - с привязкой к типу контроллеров (полезно при тестировании разынх контроллеров), без привязки - можно указывать перечень пинов через запятую и через внешнюю строковую переменную (тоже через запятую).
Например: PA0,PA6,PC13
Можно комбинировать (хотя особого смысла нет): PA1,PB9,32,PB13
Пока можно указывать только доступные обозначения - если указать не существующее обозначение, например PE7, то выскочит ошибка компиляции.
Со временем и это сделаем, нужно немного повозиться по работе со строковыми переменными.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#77

Сообщение ecoins » 14.07.2021{, 20:05}

А кому-нибудь интересно на форуме тема работы с контроллерами на STM32?
Есть да, то отзовитесь - было бы весьма уместно обменяться опытом, видением развития этого направления.
Уже в FLProg успешно удается работать с STM32F1, STM32F4, на очереди STM32H7 с дисплеем и видеокамерой.
Поглядываем на STM32MP157 -
https://aliexpress.ru/item/400077417474 ... hweb201603_
хороший аналог Raspberry, подороже, но гораздо лучше для промышленных применений 2 процессора А7 (650мГц) - хорошо будет работать Linux, +1 процессор M4 (209мГц) - для внешней периферии, как раз под проекты на FLProg.
Интересный обзор

Отзовитесь, если кому интересно - могли бы объединить усилия и достичь значимых совместных результатов.

Masterli
Рядовой
Сообщения: 13
Зарегистрирован: 04.11.2020{, 20:52}
Репутация: 1
Откуда: Москва
Имя: Владимир

Разработки ecoins для STM32

#78

Сообщение Masterli » 20.07.2021{, 17:19}

ecoins писал(а):
14.07.2021{, 20:05}
А кому-нибудь интересно на форуме тема работы с контроллерами на STM32?
Есть да, то отзовитесь - было бы весьма уместно обменяться опытом, видением развития этого направления.
Работа с STM32 в флпрог особенно важна, у данных контроллеров очень много преимуществ перед AVR, а если учитывать то, что есть возможность их программирования из этой замечательной среды, то однозначно нужно продолжать развитие этого направления :smile9:

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

Разработки ecoins для STM32

#79

Сообщение ecoins » 20.07.2021{, 20:01}

Masterli писал(а):
20.07.2021{, 17:19}
Работа с STM32 в флпрог особенно важна, у данных контроллеров очень много преимуществ перед AVR, а если учитывать то, что есть возможность их программирования из этой замечательной среды, то однозначно нужно продолжать развитие этого направления
Понял, спасибо.
Будет возможность - потестируйте.

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Разработки ecoins для STM32

#80

Сообщение slon-genia » 20.07.2021{, 22:06}

Однозначно, STM32 хотелось бы видеть. Только хотелось бы использовать все его апаратные возможности.

Ответить

Вернуться в «Команда ecoins»