Size: a a a

2021 March 22

П

Петр in STM32
Turunchuk
Орнул с класса LED.  Не смотрите,  автор вас плохому научит. Ну и оффтоп, конечно.
так это тупо пример, что работает...
источник

П

Петр in STM32
хотя реализация в л.сл костыльная, конечно
источник

П

Петр in STM32
но других способов не встречал
источник

ДС

Дмитрий Семенов... in STM32
источник

ДС

Дмитрий Семенов... in STM32
С++ оправдан только для крупных проектов, где надо несколько одинаковых объектов класса делать, например опрос одинаковых датчиков на разных шинах
Не забывать про static везде где это можно ну и всякое такое
У меня main переименован в cpp, переходит в отдельную функцию, где лежит весь код и которую не трогает куб
Если что-то надо перегенерировать - генерится .с файлик, из него все изменения переносятся в .срр и .с удаляется
Вообще можно и от комментов куба зачистить, мне просто так проще копипастить
А все библы лежат в отдельной папке, которая заинклюжена в настройках проекта - так удобнее между проектами переносить
Вообще можно их статично в одно место положить и во все проекты инклюдить одинаковый код, но я пока такую магию не освоил))
источник

VK

Valentin Kornienko in STM32
источник

VK

Valentin Kornienko in STM32
Дмитрий Семенов
С++ оправдан только для крупных проектов, где надо несколько одинаковых объектов класса делать, например опрос одинаковых датчиков на разных шинах
Не забывать про static везде где это можно ну и всякое такое
У меня main переименован в cpp, переходит в отдельную функцию, где лежит весь код и которую не трогает куб
Если что-то надо перегенерировать - генерится .с файлик, из него все изменения переносятся в .срр и .с удаляется
Вообще можно и от комментов куба зачистить, мне просто так проще копипастить
А все библы лежат в отдельной папке, которая заинклюжена в настройках проекта - так удобнее между проектами переносить
Вообще можно их статично в одно место положить и во все проекты инклюдить одинаковый код, но я пока такую магию не освоил))
В смысле "только для крупных проектов"?
источник

VK

Valentin Kornienko in STM32
источник

VK

Valentin Kornienko in STM32
Gregory Shetintcev
Есть магистры кода, которые умеют startup файлы stm32 на c++ ?))
источник

ДС

Дмитрий Семенов... in STM32
Valentin Kornienko
В смысле "только для крупных проектов"?
Ну может не очень грамотно выразился
Ну например IMU-шки, там дофигища методов, через структуры передавать очень больно
источник

VK

Valentin Kornienko in STM32
Дмитрий Семенов
Ну может не очень грамотно выразился
Ну например IMU-шки, там дофигища методов, через структуры передавать очень больно
Нет никаких причин НЕ использовать С++, если только у вас не Attiny 13:D
источник

VK

Valentin Kornienko in STM32
Шаблоны это компайлтайм. STL не сильно обширно использовать, это да. Есть альтернатива в виде ETL, которая под железки заточена.
источник

ДС

Дмитрий Семенов... in STM32
Valentin Kornienko
Нет никаких причин НЕ использовать С++, если только у вас не Attiny 13:D
Ну или L0, например)
источник

VK

Valentin Kornienko in STM32
Дмитрий Семенов
Ну или L0, например)
Yep, да. Если логики особой нет- нет смысла.
источник

GS

Gregory Shetintcev in STM32
Мне понятней писать на ++ и основная цель это хендлеры сделать однотипными, и не использовать extern C
источник

VK

Valentin Kornienko in STM32
с extern"C" для обработчиков прерываний боюсь не выйдет.
источник

VK

Valentin Kornienko in STM32
Из-за манглинга имен
источник

G

Grigoriy in STM32
Гигантское спасибо за идею :)
источник

GS

Gregory Shetintcev in STM32
Valentin Kornienko
с extern"C" для обработчиков прерываний боюсь не выйдет.
Только что все сделал. startup.cpp замутил для l053r8t6 ))
Там связка с линковщиком .ld
Собираю через make на основе gcc-arm-none-eabi
источник

GS

Gregory Shetintcev in STM32
Всем спасибо )
источник