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

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

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#101

Сообщение Oleg » 23.08.2021{, 14:55}

Нет, Компилируется если в IDE взять из примеров например Blink и загружается только STLINKом или Serial . Flprogовские скетчи не грузяться ошибка при компиляции.

Отправлено спустя 47 минут 36 секунд:
Взял пример из А_STM32_Examples все грузиться без проблем. Как только беру пример из RT_HW_BASE ошибка компиляции

Отправлено спустя 7 минут 28 секунд:
11
Вложения
STM32 загрука.png

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

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

#102

Сообщение slon-genia » 23.08.2021{, 15:53}

Oleg писал(а):
23.08.2021{, 14:55}
Нет, Компилируется если в IDE взять из примеров например Blink и загружается только STLINKом или Serial . Flprogовские скетчи не грузяться ошибка при компиляции.
Давайте с нуля попробуем. Для начала я бы посоветовал скачать портативную версию FLprog, и на неё установить ядро и библиотеку. Я так делал 3 дня назад. Старый ноутбук на AMD. Далее- у вас проблемы с компиляцией, или проблемы в загрузке? Попробуйте в IDE нажать "галочку" для компиляции. Если проблем при компиляции не будет, то вопрос к загрузке. Отпишите про результат.

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#103

Сообщение Oleg » 23.08.2021{, 16:14}

При нажатии галочки скетчей из FLPROG . Именно компиляция. Я работаю в портативной 7.3.8

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

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

#104

Сообщение ecoins » 23.08.2021{, 16:29}

Oleg писал(а):
23.08.2021{, 16:14}
При нажатии галочки скетчей из FLPROG . Именно компиляция. Я работаю в портативной 7.3.8
Попробуйте из Arduino IDE откомпилировать такой скетч:
//----
#include "RT_HW_BASE.h"
setup(){}
loop(){}
//----
Полагаю, что тоже ошибки будут.
Тогда что-то у Вас лишнее установлено ... Wire.h; Старая версия RT_HW_BASE.h ....

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#105

Сообщение Oleg » 23.08.2021{, 16:35}

sketch_aug23a:2:9: error: expected constructor, destructor, or type conversion before ';' token
setup(){}
^
sketch_aug23a:3:8: error: expected constructor, destructor, or type conversion before ';' token
loop(){}
^
sketch_aug23a:2:7: error: ISO C++ forbids declaration of 'setup' with no type [-fpermissive]
setup(){}
^
E:\PortableFLProg_7-3-8_Win64\sketch_aug23a\sketch_aug23a.ino: In function 'int setup()':
sketch_aug23a:2:7: error: new declaration 'int setup()'
In file included from sketch\sketch_aug23a.ino.cpp:1:0:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:32:6: error: ambiguates old declaration 'void setup()'
void setup();
^
E:\PortableFLProg_7-3-8_Win64\sketch_aug23a\sketch_aug23a.ino: At global scope:
sketch_aug23a:3:6: error: ISO C++ forbids declaration of 'loop' with no type [-fpermissive]
loop(){}
^
E:\PortableFLProg_7-3-8_Win64\sketch_aug23a\sketch_aug23a.ino: In function 'int loop()':
sketch_aug23a:3:6: error: new declaration 'int loop()'
In file included from sketch\sketch_aug23a.ino.cpp:1:0:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\cores\maple/Arduino.h:33:6: error: ambiguates old declaration 'void loop()'
void loop();
^
Несколько библиотек найдено для "Wire.h"
Используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire
Не используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\WireSlave
exit status 1
expected constructor, destructor, or type conversion before ';' token

Отправлено спустя 1 минуту 11 секунд:
11
Вложения
111111.jpg

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

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

#106

Сообщение ecoins » 23.08.2021{, 16:45}

Немного не так поняли.
Прикладываю скетч
Test_for_STM32.ino
(60 байт) 25 скачиваний

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#107

Сообщение Oleg » 23.08.2021{, 16:54}

E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'void RT_HW_BASE::i2cWrite(const uint8_t*, uint8_t, uint8_t)':
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:341:103: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:344:104: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==1){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire1.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'uint8_t RT_HW_BASE::i2cSendBytes(const uint8_t*, uint8_t, uint8_t, uint8_t)':
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:404:82: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){if(qnt>32) {qnt=32;}; Wire.beginTransmission(adr); Wire.write(arr,qnt); return Wire.endTransmission();}
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:407:83: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==1){if(qnt>32) {qnt=32;}; Wire1.beginTransmission(adr); Wire1.write(arr,qnt); return Wire1.endTransmission();}
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
Несколько библиотек найдено для "Wire.h"
Используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire
Не используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\WireSlave
exit status 1
Ошибка компиляции для платы Generic STM32F103C6/fake STM32F103C8.

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

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

#108

Сообщение ecoins » 23.08.2021{, 17:19}

Наверное становится понятнее:
1. Попробуйте совсем простой тест без библиотеки
Test_for_STM32_Wire.ino
(81 байт) 23 скачивания
2.Потом вот этот (из примеров Arduino IDE)
i2c_scanner_wire_STM32.ino
(2.03 КБ) 22 скачивания
----
И выбирайте вместо Generic STM32F103C6/fake STM32F103C8. Generic STM32F103C series
Наверное получим полезную информацию...

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#109

Сообщение Oleg » 23.08.2021{, 17:59}

Спасибо
Но уже завтра
Буду на работе

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

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

#110

Сообщение ecoins » 23.08.2021{, 19:05}

Oleg писал(а):
23.08.2021{, 17:59}
Спасибо
Но уже завтра
Буду на работе

Поизучали ядро STM32F1 (от Roger).
Пока немного непонятна реализация, но выводы конкретные:
1. Выбирать Generic STM32F103C series можно (и нужно).
2. Выбирать Generic STM32F103C6/fake STM32F103C8 нельзя.
---
Успехов.

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#111

Сообщение Oleg » 24.08.2021{, 08:23}

Добрый день. Да с этими скетчами компилируется и загружается . С i2c_scanner_wire_STM32.ino файлом прилагаю скрин.
Вложения
222.png

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#112

Сообщение Oleg » 24.08.2021{, 08:59}

Убрал из папки E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries папку WireSlave не помогло прилагаю . Компилировал из примера RT_ HW_BASE Flprog_Test01_


E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'void RT_HW_BASE::i2cWrite(const uint8_t*, uint8_t, uint8_t)':
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:341:103: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:344:104: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==1){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire1.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'uint8_t RT_HW_BASE::i2cSendBytes(const uint8_t*, uint8_t, uint8_t, uint8_t)':
E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:404:82: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){if(qnt>32) {qnt=32;}; Wire.beginTransmission(adr); Wire.write(arr,qnt); return Wire.endTransmission();}
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from E:\PortableFLProg_7-3-8_Win64\ideV7\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);

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

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

#113

Сообщение ecoins » 24.08.2021{, 13:33}

Видимо у Вас система так сконфигурирована, что в начале цепляется за другой источник Wire.h, а затем уже из STM32.
Из видимых возможных причин:
1.Возможно, что библиотеку RT_HW_BASE.h лучше устанавливать не ставить не в ideV7/librarires, а
в ideV7/portable/sketchbook/libraries
2.Уточните какой контроллер Вы в итоге выбираете - правильно STM32F103C series

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#114

Сообщение Oleg » 24.08.2021{, 14:02}

STM32F103CB с 128kB flash

Отправлено спустя 10 минут 49 секунд:
Не получается.



e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'void RT_HW_BASE::i2cWrite(const uint8_t*, uint8_t, uint8_t)':
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:341:103: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:344:104: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==1){ if(qnt>32) {qnt=32;} if(i2cCheckBusState(RT_HW_I2C_STATE_MASTER,bus)) {Wire1.write(arr,qnt);}};
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'uint8_t RT_HW_BASE::i2cSendBytes(const uint8_t*, uint8_t, uint8_t, uint8_t)':
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:404:82: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==0){if(qnt>32) {qnt=32;}; Wire.beginTransmission(adr); Wire.write(arr,qnt); return Wire.endTransmission();}
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);
^
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:407:83: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
if(bus==1){if(qnt>32) {qnt=32;}; Wire1.beginTransmission(adr); Wire1.write(arr,qnt); return Wire1.endTransmission();}
^
In file included from E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/Wire.h:42:0,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_02_00_BOARD_CORE.hpp:268,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE.h:14,
from e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:1:
E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire/utility/WireBase.h:123:12: error: initializing argument 1 of 'size_t WireBase::write(uint8*, int)' [-fpermissive]
size_t write(uint8*, int);

^
Несколько библиотек найдено для "Wire.h"
Используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\Wire
Не используется: E:\PortableFLProg_7-3-8_Win64\ideV7\hardware\Arduino_STM32-master\STM32F1\libraries\WireSlave
exit status 1
Ошибка компиляции для платы Generic STM32F103C series.

Отправлено спустя 1 час 1 минуту 28 секунд:
Ждем?

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

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

#115

Сообщение ecoins » 24.08.2021{, 15:29}

Сложный случай - без Вашего компьютера разобраться не просто.
Может давайте попробуем с чистого листа?
-----
1.Скачиваете с сайта Arduino.cc версию Arduino IDE 1.8.15 zip - это версия portable.
2. Скачиваете отсюда https://github.com/rogerclarkmelbourne/Arduino_STM32 - зеленая кнопка.
3.Устанавливаете Arduino IDE.
4.Копируете в папку hardware папку Arduino_STM32-master - не архив!!!, который скачали с таким же именем, а папку внутри архива.
5.Запускаете arduino.exe.
6.В меню Файл выбираете - Новый, т.е. создайте новую программу.
7. Перед setup(){
набнрите единственную строку
#include "RT_HW_BASE.h"
8.Выберите контроллер Arduino Nano и компилируйте.
9.Если все нормально, выберите контроллер STM32F103C series и компилируйте.
Ошибок не должно быть.

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#116

Сообщение Oleg » 24.08.2021{, 16:03}

sketch_aug24b:1:10: fatal error: RT_HW_BASE.h: No such file or directory
#include "RT_HW_BASE.h"
^~~~~~~~~~~~~~
compilation terminated.
exit status 1
RT_HW_BASE.h: No such file or directory

Отправлено спустя 16 минут 43 секунды:
Не добавили библиотеку RT_HW_BASE . Добавил. Теперь Nano компилируется , STM нет


exec: "/bin/arm-none-eabi-g++": file does not exist
Ошибка компиляции для платы Generic STM32F103C series.

Отправлено спустя 14 минут 31 секунду:
Так НАНО и в 7.3.8 тоже компилируется
Вложения
7.3.8.jpg

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

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

#117

Сообщение ecoins » 24.08.2021{, 17:31}

Oleg писал(а):
24.08.2021{, 16:35}
Ошибка компиляции для платы Generic STM32F103C series.

Отправлено спустя 14 минут 31 секунду:
Так НАНО и в 7.3.8 тоже компилируется
Nano компилируется, а STM32F103C нет:
1.либо версия Ardduino_STM32-master очеь старая (вряд-ли);
2.Либо что-то не так...
Дело в том, что библиотека RT_HW_BASE.h самостоятельно почти ничего не делает.
Из активных команд для STM32F1 (для ядра от Clark), последствия которых могут проявляться исходя из того, что вы присылаете
это строка 299 в файле RT_HW_BASE_02_00_BOARD_CORE.hpp
#include <Wire.h>
3. Arduino IDE может выводить гораздо больше информации по компиляции (меняется в настройках) - если бы я её видел, лучше бы мог понять,
что происходи у Вас на компьютере.
----
Ситуация не приятная и тревожная - хотелось бы разобраться.

starshoy81
Лейтенант
Сообщения: 530
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

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

#118

Сообщение starshoy81 » 25.08.2021{, 00:30}

ecoins, какие то проблемы в компиляторе у пользователя. Судя по строчкам:
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp: In member function 'void RT_HW_BASE::i2cWrite(const uint8_t*, uint8_t, uint8_t)':
e:\PortableFLProg_7-3-8_Win64\ideV7\portable\sketchbook\libraries\RT_00_HW_BASE_v6.54\src\RT_HW_BASE_13_05_Link_i2c.cpp:341:103: error: invalid conversion from 'const uint8_t* {aka const unsigned char*}' to 'uint8* {aka unsigned char*}' [-fpermissive]
Возможно надо сносить ИДЕ и ставить по новой.

Аватара пользователя
Oleg
Сержант
Сообщения: 200
Зарегистрирован: 17.09.2015{, 13:04}
Репутация: 1
Откуда: Беларусь
Имя: Олег

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

#119

Сообщение Oleg » 25.08.2021{, 08:13}

Добрый день . Продолжаем. Вот расширил настройки компиляции.

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Oleg\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Oleg\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Oleg\Documents\Arduino\libraries -fqbn=Arduino_STM32-master:STM32F1:genericSTM32F103C:device_variant=STM32F103CB,upload_method=STLinkMethod,cpu_speed=speed_72mhz,opt=osstd -ide-version=10815 -build-path C:\Users\Oleg\AppData\Local\Temp\arduino_build_385269 -warnings=more -build-cache C:\Users\Oleg\AppData\Local\Temp\arduino_cache_420776 -prefs=build.warn_data_percentage=75 -verbose C:\Users\Oleg\Downloads\FPROG_Test01_eis_ino\FPROG_Test01_eis_ino.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Oleg\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Oleg\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Oleg\Documents\Arduino\libraries -fqbn=Arduino_STM32-master:STM32F1:genericSTM32F103C:device_variant=STM32F103CB,upload_method=STLinkMethod,cpu_speed=speed_72mhz,opt=osstd -ide-version=10815 -build-path C:\Users\Oleg\AppData\Local\Temp\arduino_build_385269 -warnings=more -build-cache C:\Users\Oleg\AppData\Local\Temp\arduino_cache_420776 -prefs=build.warn_data_percentage=75 -verbose C:\Users\Oleg\Downloads\FPROG_Test01_eis_ino\FPROG_Test01_eis_ino.ino
Using board 'genericSTM32F103C' from platform in folder: C:\Program Files (x86)\Arduino\hardware\Arduino_STM32-master\STM32F1
Using core 'maple' from platform in folder: C:\Program Files (x86)\Arduino\hardware\Arduino_STM32-master\STM32F1
Detecting libraries used...
/bin/arm-none-eabi-g++ -c -g -Os -w -DDEBUG_LEVEL=DEBUG_NONE -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -fno-use-cxa-atexit -DBOARD_generic_stm32f103c -DVECT_TAB_ADDR=0x8000000 -DERROR_LED_PORT=GPIOC -DERROR_LED_PIN=13 -w -x c++ -E -CC -mcpu=cortex-m3 -DF_CPU=72000000L -DARDUINO=10815 -DARDUINO_GENERIC_STM32F103C -DARDUINO_ARCH_STM32F1 -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DSERIAL_USB -DGENERIC_BOOTLOADER -DMCU_STM32F103CB -mthumb -march=armv7-m -D__STM32F1__ -DMCU_STM32F103CB -mthumb -march=armv7-m -D__STM32F1__ "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\system/libmaple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\system/libmaple/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\system/libmaple/stm32f1/include" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\system/libmaple/usb/stm32f1" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\system/libmaple/usb/usb_lib" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\cores\\maple" "-IC:\\Program Files (x86)\\Arduino\\hardware\\Arduino_STM32-master\\STM32F1\\variants\\generic_stm32f103c" "C:\\Users\\Oleg\\AppData\\Local\\Temp\\arduino_build_385269\\sketch\\FPROG_Test01_eis_ino.ino.cpp" -o nul
exec: "/bin/arm-none-eabi-g++": file does not exist
Ошибка компиляции для платы Generic STM32F103C series.

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

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

#120

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

starshoy81 писал(а):
25.08.2021{, 00:30}
Возможно надо сносить ИДЕ и ставить по новой.
Спасибо, присоединяюсь к тому, что надо обновить среду... Собственно это и рекомендовал...

Ответить

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