Страница 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
CraCk писал(а): 17 дек 2020, 22:07 Такое можно завести в флпрог? Только недостаток, нет развязки входов.
https://a.aliexpress.com/_AfZnCz
оно ужо там есть

Разработки 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], если бы я знал что предложить :smile37: ...

Разработки 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" , и оно скомпилировалось :D что за фигня то???
осталось только попробовать поставить нормальную версию, а не портативную... но это уже завтра

Разработки 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], Я не знал что так можно. Спасибо за наводку :smile9:

Разработки 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, может у Вас с программатором что-то или еще бывают нюансы...