Страница 1 из 1
VSC для stm32
Добавлено: Вт апр 23, 2024 19:15:48
mab72
Доброго времени суток.
С милионпятьсотвосьмой попытки удалось создать проект в 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.
Re: VSC для stm32
Добавлено: Вт апр 23, 2024 19:51:27
Martian
Открыть папку
Re: VSC для stm32
Добавлено: Вт апр 23, 2024 20:04:31
mab72
[uquote="Martian",url="/forum/viewtopic.php?p=4572350#p4572350"]Открыть папку[/uquote]
это к чему/как???
Re: VSC для stm32
Добавлено: Вт апр 23, 2024 20:09:13
Martian
Вы ведь изучали, как работать с VS Code?

Re: VSC для stm32
Добавлено: Вт апр 23, 2024 20:46:31
azhel12
Взять кошерный stm32-cmake и жить счастливо
Re: VSC для stm32
Добавлено: Вт апр 23, 2024 21:00:32
>TEHb<
Хедер можно подключать через скобочки, а можно через кавычки. Будет немного отличаться места поиска файла.
Но вообще накосячить можно очень много где. Например,
mab72 писал(а):Тоесть при обращении к переменной или функции в любом файле кроме main.c
вот это что значит? Может, область видимости не та? Переменные, которые фактически сидят в соседнем файле, надо объявлять через extern.
Re: VSC для stm32
Добавлено: Вт апр 23, 2024 21:03:31
Martian
не, тут речь о включении файлов вообще в проект
Re: VSC для stm32
Добавлено: Ср апр 24, 2024 21:09:16
mab72
[uquote="Martian",url="/forum/viewtopic.php?p=4572381#p4572381"]не, тут речь о включении файлов вообще в проект[/uquote]
вот. спасибо за краткое и емкое пояснение. именно добавление файлов в проект. в espresif помню шо сишный файл надо было прписать в макефайле или что-то в этом роде. так вот как это забабахать в VSC?
Добавлено after 5 minutes 22 seconds:
[uquote=">TEHb<",url="/forum/viewtopic.php?p=4572377#p4572377"]Хедер можно подключать через скобочки, а можно через кавычки. Будет немного отличаться места поиска файла.
Но вообще накосячить можно очень много где. Например,
mab72 писал(а):Тоесть при обращении к переменной или функции в любом файле кроме main.c
вот это что значит? Может, область видимости не та? Переменные, которые фактически сидят в соседнем файле, надо объявлять через extern.[/uquote]
я очень сильно не профи в программировании, это увлечение, но про 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
Aleks70
Попробуйте в Visual Studio, там все работает , а внешне они похожи с vscode
Re: VSC для stm32
Добавлено: Чт апр 25, 2024 09:03:47
mab72
И тут победил!!!
Как же иногда полезно думать. Вообщем проблема оказалась в стартовом файле, который генерирует vscode, некашерная там таблица векторов прерывания. Заменил я весь этот автогенерированный на эстэмовский и вуаля, все заработало.
Re: VSC для stm32
Добавлено: Чт апр 25, 2024 10:08:23
>TEHb<
О, кстати да! В СТМовском тоже пару раз попадал на ситуацию, когда вектор непрописан. Ну вот нет и всё. Хочешь - руками дописывай, хочешь - в своей программе переопределяй. А вот "с завода" не написан. И такое бывает...
Re: VSC для stm32
Добавлено: Пт апр 26, 2024 17:39:55
kote52
mab72, на вот
смотри уроки
Re: VSC для stm32
Добавлено: Пт апр 26, 2024 20:01:18
mab72
[uquote="kote52",url="/forum/viewtopic.php?p=4573551#p4573551"]
mab72, на вот
смотри уроки[/uquote]
Спасибо. Пока не дорос до платного ПО. И демку пробовал - не завелось, шо не кашерную с просторов интернета, шо триальную с официально сайта, не неасилил.
Re: VSC для stm32
Добавлено: Пт апр 26, 2024 21:45:21
>TEHb<
Из бесплатного таки кубиде вполне вменяемая среда. Со своими минусами, конечно, но жить можно. Если ВСикоде не является принципиальным требованиям, то рекомендую ознакомится при случае.
Re: VSC для stm32
Добавлено: Пт апр 26, 2024 21:54:01
Martian
Дык у Кейла же вроде есть бесплатные версии
Re: VSC для stm32
Добавлено: Сб апр 27, 2024 00:09:55
kote52
[uquote="mab72",url="/forum/viewtopic.php?p=4573597#p4573597"]Пока не дорос до платного ПО. И демку пробовал - не завелось, шо не кашерную с просторов интернета, шо триальную с официально сайта, не неасилил.[/uquote]
Сижу бесплатно, просто не обновляю visual gdb, остальное все обновляю gcc, пакет по мк... Отладка в разы лучше чем в кубе! Там же все есть у человека!
Re: VSC для stm32
Добавлено: Сб апр 27, 2024 09:25:57
mab72
[uquote="kote52",url="/forum/viewtopic.php?p=4573673#p4573673"]... Там же все есть у человека![/uquote]
Видел, делал. С первогораза не получилось. Попробую повнимательнее делать прям как в тех видосах. Но всеже это студия , а она поувесистее. Хотя тоже норм. Буду пробывать.