Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

VSC для stm32

Вт апр 23, 2024 19:15:48

Доброго времени суток.
С милионпятьсотвосьмой попытки удалось создать проект в visual studio code для stm32g0. Даже замигал светодиодом. Без кубов и халов с эльэль. Только "ЦЭМСИС". Но как оказалось, проект не видит любезно засунутые в папку src ничего кроме "main.c". Хотя там есть прекрасный system_stm32g0xx.c. Тоесть при обращении к переменной или функции в любом файле кроме main.c, приводит к ошибке. Вопрос: как правильно подключать "*.c" и "*.h" файлы в visual studio code. Как же прекрасно в keil - сишный добавил в папку, а хедер указал в путях и все прекрасно работает, а как это делать в visual studio code?

ps:
Дополню, шо если "сгондобить" проект через Кубик, то все прекрасно видится и работает. Но шо делать если не нравится мне тот HAL and LL. Хачу на CMSIS.
Последний раз редактировалось mab72 Вт апр 23, 2024 19:53:30, всего редактировалось 1 раз.

Re: VSC для stm32

Вт апр 23, 2024 19:51:27

Открыть папку

Re: VSC для stm32

Вт апр 23, 2024 20:04:31

Открыть папку

это к чему/как???

Re: VSC для stm32

Вт апр 23, 2024 20:09:13

Вы ведь изучали, как работать с VS Code?

Изображение

Re: VSC для stm32

Вт апр 23, 2024 20:46:31

Взять кошерный stm32-cmake и жить счастливо

Re: VSC для stm32

Вт апр 23, 2024 21:00:32

Хедер можно подключать через скобочки, а можно через кавычки. Будет немного отличаться места поиска файла.
Но вообще накосячить можно очень много где. Например,
mab72 писал(а):Тоесть при обращении к переменной или функции в любом файле кроме main.c

вот это что значит? Может, область видимости не та? Переменные, которые фактически сидят в соседнем файле, надо объявлять через extern.

Re: VSC для stm32

Вт апр 23, 2024 21:03:31

не, тут речь о включении файлов вообще в проект

Re: VSC для stm32

Ср апр 24, 2024 21:09:16

не, тут речь о включении файлов вообще в проект

вот. спасибо за краткое и емкое пояснение. именно добавление файлов в проект. в espresif помню шо сишный файл надо было прписать в макефайле или что-то в этом роде. так вот как это забабахать в VSC?

Добавлено after 5 minutes 22 seconds:
Хедер можно подключать через скобочки, а можно через кавычки. Будет немного отличаться места поиска файла.
Но вообще накосячить можно очень много где. Например,
mab72 писал(а):Тоесть при обращении к переменной или функции в любом файле кроме main.c

вот это что значит? Может, область видимости не та? Переменные, которые фактически сидят в соседнем файле, надо объявлять через extern.


я очень сильно не профи в программировании, это увлечение, но про extern знаю(не так давно изучил), тут вопрос что сам файл не видится, в проекте в папке рядышком с main.c валяется, ан нет VSC упорно его не видит. мэйн - видит, а другие нет. Вот и вопрос как прописать подключить внешний сишный файл?

Добавлено after 47 minutes 16 seconds:
Я ЕГО ПОБЕДИЛ!!!
Тему можно закрывать. Упорно искал решение, а оно на поверхности: есть такой файлик в проекте(создается автоматически) vscode_generated.cmake, а в нем заветные строки:
Код:
# Sources
 set(sources_SRCS ${sources_SRCS}
   
 ${CMAKE_CURRENT_SOURCE_DIR}/Src/main.c
 ${CMAKE_CURRENT_SOURCE_DIR}/Src/syscall.c
 ${CMAKE_CURRENT_SOURCE_DIR}/Src/sysmem.c
 ${CMAKE_CURRENT_SOURCE_DIR}/Startup/startup_stm32g041j6mx.s
)

дописывай нужный путь и в перед!!! Записал ${CMAKE_CURRENT_SOURCE_DIR}/Src/system_stm32g0xx.c
и все заработало. Всем спасибо.

Добавлено after 9 hours 59 minutes 40 seconds:
БЛИН БЛИНСКИЙ!!!
Рано я возрадовался. Одно починил, новая фишечка сломалась. Не заходит в обработчик прерывания. Настроил таймер и прерывания от него, а нет . Нету прерывания. Создаю голый проект в Кейле, копирую именно копирую текст в main.c and main.h и все прекрасно работает. А vscode нет прерываний и все. Сгенерированный кубом проект прекрасна работает в vscode, а тут хотелка без кубов забабахать. Кто поможет с пошаговым созданием проекта в vscode без кубов.

Re: VSC для stm32

Чт апр 25, 2024 07:02:44

Попробуйте в Visual Studio, там все работает , а внешне они похожи с vscode

Re: VSC для stm32

Чт апр 25, 2024 09:03:47

И тут победил!!!
Как же иногда полезно думать. Вообщем проблема оказалась в стартовом файле, который генерирует vscode, некашерная там таблица векторов прерывания. Заменил я весь этот автогенерированный на эстэмовский и вуаля, все заработало.

Re: VSC для stm32

Чт апр 25, 2024 10:08:23

О, кстати да! В СТМовском тоже пару раз попадал на ситуацию, когда вектор непрописан. Ну вот нет и всё. Хочешь - руками дописывай, хочешь - в своей программе переопределяй. А вот "с завода" не написан. И такое бывает...

Re: VSC для stm32

Пт апр 26, 2024 17:39:55

mab72, на вот смотри уроки

Re: VSC для stm32

Пт апр 26, 2024 20:01:18

mab72, на вот смотри уроки

Спасибо. Пока не дорос до платного ПО. И демку пробовал - не завелось, шо не кашерную с просторов интернета, шо триальную с официально сайта, не неасилил.

Re: VSC для stm32

Пт апр 26, 2024 21:45:21

Из бесплатного таки кубиде вполне вменяемая среда. Со своими минусами, конечно, но жить можно. Если ВСикоде не является принципиальным требованиям, то рекомендую ознакомится при случае.

Re: VSC для stm32

Пт апр 26, 2024 21:54:01

Дык у Кейла же вроде есть бесплатные версии

Re: VSC для stm32

Сб апр 27, 2024 00:09:55

Пока не дорос до платного ПО. И демку пробовал - не завелось, шо не кашерную с просторов интернета, шо триальную с официально сайта, не неасилил.

Сижу бесплатно, просто не обновляю visual gdb, остальное все обновляю gcc, пакет по мк... Отладка в разы лучше чем в кубе! Там же все есть у человека!

Re: VSC для stm32

Сб апр 27, 2024 09:25:57

... Там же все есть у человека!


Видел, делал. С первогораза не получилось. Попробую повнимательнее делать прям как в тех видосах. Но всеже это студия , а она поувесистее. Хотя тоже норм. Буду пробывать.
Ответить