Страница 11 из 12
Разработки ecoins для STM32
Добавлено: 05 май 2022, 00:45
ecoins
Один из пользователей прислал мне сенсор SHT31 и попросил сделать блок.
Блок (и библиотека C++ к нему) сделан и добавлен в библиотеку блоков.
Продолжаю выкладывать промежуточные версии в этой ветке.
RT_00_HW_BASE_v6.98_04.05.22.zip
EIS.01.СИСТЕМА вер.2.18 (04.05.22).zip
Test_SHT31.zip
Test SHT31.PNG.png
Консоль SHT31.PNG
20220505_002610.jpg
Разработки ecoins для STM32
Добавлено: 16 июн 2023, 07:11
nick2015
Разработки ecoins для STM32
Добавлено: 19 июн 2023, 08:51
nick2015
Нашёл неточность на платах BlackPill, распиновка на плате для разъёма SWD, шелкография сверху платы не верная, нужно ориентироваться на нижнюю шелкографию.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 04:08
Alazawr
Здравствуйте! Не получается загрузить ничего, что сделано в flprog, в stm32f103c8t6. Всё сделано по инструкции из первого поста в теме. Пример blink загружается.
Вот код ошибки:
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:152:2: error: #error This version of SoftwareSerial supports only 20, 16 and 8MHz processors
#error This version of SoftwareSerial supports only 20, 16 and 8MHz processors
^~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'bool SoftwareSerial::listen()':
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:208:23: error: 'SREG' was not declared in this scope
uint8_t oldSREG = SREG;
^~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:208:23: note: suggested alternative: 'SING'
uint8_t oldSREG = SREG;
^~~~
SING
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:209:5: error: 'cli' was not declared in this scope
cli();
^~~
In file included from C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:42:0,
from c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:43:
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'void SoftwareSerial::setTX(uint8_t)':
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\variants\generic_stm32f103c/variant.h:4:49: error: invalid conversion from 'gpio_dev*' to 'uint8_t {aka unsigned char}' [-fpermissive]
#define digitalPinToPort(P) ( PIN_MAP[P].gpio_device )
~~~~~~~~~~~~~^~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:384:18: note: in expansion of macro 'digitalPinToPort'
uint8_t port = digitalPinToPort(tx);
^~~~~~~~~~~~~~~~
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\variants\generic_stm32f103c/variant.h:6:44: error: base operand of '->' is not a pointer
#define portOutputRegister(port) ( &(port->regs->ODR) )
^
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:385:27: note: in expansion of macro 'portOutputRegister'
_transmitPortRegister = portOutputRegister(port);
^~~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'void SoftwareSerial::setRX(uint8_t)':
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\variants\generic_stm32f103c/variant.h:4:49: error: invalid conversion from 'gpio_dev*' to 'uint8_t {aka unsigned char}' [-fpermissive]
#define digitalPinToPort(P) ( PIN_MAP[P].gpio_device )
~~~~~~~~~~~~~^~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:395:18: note: in expansion of macro 'digitalPinToPort'
uint8_t port = digitalPinToPort(rx);
^~~~~~~~~~~~~~~~
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\variants\generic_stm32f103c/variant.h:7:44: error: base operand of '->' is not a pointer
#define portInputRegister(port) ( &(port->regs->IDR) )
^
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:396:26: note: in expansion of macro 'portInputRegister'
_receivePortRegister = portInputRegister(port);
^~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'void SoftwareSerial::begin(long int)':
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:407:31: error: 'table' was not declared in this scope
for (unsigned i=0; i<sizeof(table)/sizeof(table[0]); ++i)
^~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:407:31: note: suggested alternative: 'tanl'
for (unsigned i=0; i<sizeof(table)/sizeof(table[0]); ++i)
^~~~~
tanl
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:423:9: error: 'digitalPinToPCICR' was not declared in this scope
if (digitalPinToPCICR(_receivePin))
^~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:423:9: note: suggested alternative: 'digitalPinToPort'
if (digitalPinToPCICR(_receivePin))
^~~~~~~~~~~~~~~~~
digitalPinToPort
In file included from C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:30:0,
from c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:43:
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:425:46: error: 'digitalPinToPCICRbit' was not declared in this scope
*digitalPinToPCICR(_receivePin) |= _BV(digitalPinToPCICRbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:425:46: note: suggested alternative: 'digitalPinToPort'
*digitalPinToPCICR(_receivePin) |= _BV(digitalPinToPCICRbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:426:8: error: 'digitalPinToPCMSK' was not declared in this scope
*digitalPinToPCMSK(_receivePin) |= _BV(digitalPinToPCMSKbit(_receivePin));
^~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:426:8: note: suggested alternative: 'digitalPinToPort'
*digitalPinToPCMSK(_receivePin) |= _BV(digitalPinToPCMSKbit(_receivePin));
^~~~~~~~~~~~~~~~~
digitalPinToPort
In file included from C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:30:0,
from c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:43:
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:426:46: error: 'digitalPinToPCMSKbit' was not declared in this scope
*digitalPinToPCMSK(_receivePin) |= _BV(digitalPinToPCMSKbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:426:46: note: suggested alternative: 'digitalPinToPort'
*digitalPinToPCMSK(_receivePin) |= _BV(digitalPinToPCMSKbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'void SoftwareSerial::end()':
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:441:7: error: 'digitalPinToPCMSK' was not declared in this scope
if (digitalPinToPCMSK(_receivePin))
^~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:441:7: note: suggested alternative: 'digitalPinToPort'
if (digitalPinToPCMSK(_receivePin))
^~~~~~~~~~~~~~~~~
digitalPinToPort
In file included from C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:30:0,
from c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:43:
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:442:45: error: 'digitalPinToPCMSKbit' was not declared in this scope
*digitalPinToPCMSK(_receivePin) &= ~_BV(digitalPinToPCMSKbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:442:45: note: suggested alternative: 'digitalPinToPort'
*digitalPinToPCMSK(_receivePin) &= ~_BV(digitalPinToPCMSKbit(_receivePin));
^
C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\cores\maple/wirish.h:102:25: note: in definition of macro '_BV'
#define _BV(bit) (1 << (bit))
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'virtual size_t SoftwareSerial::write(uint8_t)':
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:477:21: error: 'SREG' was not declared in this scope
uint8_t oldSREG = SREG;
^~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:477:21: note: suggested alternative: 'SING'
uint8_t oldSREG = SREG;
^~~~
SING
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:478:3: error: 'cli' was not declared in this scope
cli(); // turn off interrupts for a clean txmit
^~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:482:26: error: 'XMIT_START_ADJUSTMENT' was not declared in this scope
tunedDelay(_tx_delay + XMIT_START_ADJUSTMENT);
^~~~~~~~~~~~~~~~~~~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp: In member function 'virtual void SoftwareSerial::flush()':
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:525:21: error: 'SREG' was not declared in this scope
uint8_t oldSREG = SREG;
^~~~
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:525:21: note: suggested alternative: 'SING'
uint8_t oldSREG = SREG;
^~~~
SING
c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial\SoftwareSerial.cpp:526:3: error: 'cli' was not declared in this scope
cli();
^~~
Несколько библиотек найдено для "Ethernet.h"
Используется: c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\Ethernet
Не используется: c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\libraries\Ethernet
Несколько библиотек найдено для "SPI.h"
Используется: C:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\hardware\Arduino_STM32-master\STM32F1\libraries\SPI
Не используется: c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SPI
Несколько библиотек найдено для "SoftwareSerial.h"
Используется: c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\SoftwareSerial
Не используется: c:\Users\Rex-013M\Desktop\PortableFLProg_8-2-1_Win32\ideV8\portable\sketchbook\libraries\Esp32-SoftwareSerial
exit status 1
Ошибка компиляции для платы Generic STM32F103C series.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 07:06
ecoins
Alazawr писал(а): 14 ноя 2023, 04:08
Здравствуйте! Не получается загрузить ничего, что сделано в flprog, в stm32f103c8t6. Всё сделано по инструкции из первого поста в теме. Пример blink загружается.
Вот код ошибки:
Без Вашего проекта сложно разобраться.
Предположительно: у Вас проект больше чем 32кБайт - попробуйте в Arduino IDE выбрать плату BlackPill F103CB(or C8 with 128K).
С уважением, Энвер.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 08:00
Alazawr
[ref]ecoins[/ref], да какой там проект, генератор и выход на встроенный светодиод, получается типо аналог блинка, а выбрано и так на 128К. Выставляю такие же настройки как при прошивке блинка, а он выдает ошибку компиляции
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 09:29
ecoins
У нас грузятся и большие проекты на STM32, т.к. софт работает.
Как Вам лучше помочь? Может Вы что предложите?
С уважением, Энвер.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 10:11
Alazawr
[ref]ecoins[/ref], если бы я знал что предложить

...
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 10:42
ecoins
Пришлите тот самый простой проект и фото выбора параметров в Arduino IDE, можно в личку. Вечером или завтра с утра посмотрю и постараюсь разобраться.
С уважением, ecoins.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 10:43
ecoins
Отправлял из метро, получилось много повторов

, сразу исправить не получилось.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 10:50
Alazawr
[ref]ecoins[/ref], хорошо, вечером дома буду, скину
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 21:11
ecoins
Проверил проект - у меня компилируется без ошибок.
Dump.JPG
А у Вас версия FLProg 8.2.3?
Отправлено спустя 3 минуты 29 секунд:
P.S. Исходя из характера ошибок может имеет смысл переустановить FLProg.
Разработки ecoins для STM32
Добавлено: 14 ноя 2023, 21:47
Alazawr
[ref]ecoins[/ref], только что попробовал на другом компе, тоже самое
версия 8.2.3(портативная)
попробовал просто пустой проект, тоже самое
перенёс в корень диска, тоже самое
в пустом проекте, уже в ардуиноИДЕ, удалил строку: #include "flprogUtilites.h" , и оно скомпилировалось

что за фигня то???
осталось только попробовать поставить нормальную версию, а не портативную... но это уже завтра
Разработки ecoins для STM32
Добавлено: 15 ноя 2023, 03:50
ecoins
Alazawr писал(а): 14 ноя 2023, 21:47
в пустом проекте, уже в ардуиноИДЕ, удалил строку: #include "flprogUtilites.h" , и оно скомпилировалось что за фигня то???
осталось только попробовать поставить нормальную версию, а не портативную... но это уже завтра
Мы работаем с портативной версией.
Сейчас в FLProg есть некоторые проблемы связанные с переходом на несколько измененную архитектуру - разработчик над этим работает.
С библиотекой "flprogUtilites.h" проблемы возникали.
Её использование можно отключить в FLProg:
Dump2.JPG
При этом генераторы надо будет использовать другие - из пользовательских блоков.
Пример ниже:
eis_PC13.flp
Test_PC13.png
----
Несмотря на возникающие трудности освоение FLProg в том числе и с STM32(STM32F1,STM32F4,STM32H7), Raspberry Pi Pico(RP2040) открывают большие возможности для автоматизации разного уровня сложности.
----
А над возникающими проблемами автор работает и в обозримом времени они буду преодолены.
С уважением, ecoins.
Разработки ecoins для STM32
Добавлено: 15 ноя 2023, 07:57
Alazawr
[ref]ecoins[/ref], Я не знал что так можно. Спасибо за наводку

Разработки ecoins для STM32
Добавлено: 18 мар 2024, 13:12
Mazur
[ref]ecoins[/ref], если писать код на родном фреемворке для стм 32 что бы подключить дс18б20 то датчик подключается только к уарту ?
не получится написать код для любого пина ?
2024-03-18_171150.png
Разработки ecoins для STM32
Добавлено: 18 мар 2024, 13:23
ecoins
Mazur писал(а): 18 мар 2024, 13:12
ecoins, если писать код на родном фреемворке для стм 32 что бы подключить дс18б20 то датчик подключается только к уарту ?
не получится написать код для любого пина ?
Не вполне понял вопрос, попробую ответить.
1.DS1820 подключается к любому из доступных пинов - мы проверяли на блоках ecoins(DS1820).
2.Работать можно в среде FLProg.
3.Что понимается Вами под родным фреймворке для стм32? Уточните.
С уважением, ecoins.
Разработки ecoins для STM32
Добавлено: 18 мар 2024, 13:48
Mazur
в флпроге используется фреемворк ардуино
в стм стм32кубеиде
Разработки ecoins для STM32
Добавлено: 18 мар 2024, 14:13
ecoins
Mazur писал(а): 18 мар 2024, 13:48
в флпроге используется фреемворк ардуино
в стм стм32кубеиде
Понятно. В этой среде и работает.
Разработки ecoins для STM32
Добавлено: 20 апр 2024, 16:59
ecoins
viewtopic.php?t=9039&start=120#:~:text= ... 0%BB%D1%83
Был вопрос(сущностное содержание) "Не получается запустить blink" на STM32H743V.
А Вы попробуйте на других STM, может у Вас с программатором что-то или еще бывают нюансы...