ide:vscode_qbs

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ide:vscode_qbs [2024/05/18 21:58] adminide:vscode_qbs [2024/05/27 12:40] (текущий) admin
Строка 1: Строка 1:
 ====== VSCode Qbs ====== ====== VSCode Qbs ======
-[[https://doc.qt.io/qbs/installing.html|Qbs]] - это инструмент автоматизации сборки, предназначенный для удобного управления процессом сборки программных проектов на нескольких платформах.Qbs основан на языке QML.  QML — это краткий, простой в освоении и интуитивно понятный язык.  Его ядро ​​является декларативным, но для большей гибкости его можно расширить с помощью фрагментов JavaScript.+[[https://doc.qt.io/qbs/installing.html|Qbs]] - это инструмент автоматизации сборки, предназначенный для удобного управления процессом сборки программных проектов на нескольких платформах. Qbs основан на языке QML.  QML — это краткий, простой в освоении и интуитивно понятный язык.  Его ядро ​​является декларативным, но для большей гибкости его можно расширить с помощью фрагментов JavaScript.
  
 Qbs создает приложения на основе информации из файла проекта.  Каждый файл проекта определяет один проект, который может содержать несколько продуктов.  Вы указываете тип продукта, например приложение, и зависимости продукта от других продуктов. Qbs создает приложения на основе информации из файла проекта.  Каждый файл проекта определяет один проект, который может содержать несколько продуктов.  Вы указываете тип продукта, например приложение, и зависимости продукта от других продуктов.
Строка 25: Строка 25:
   * [[https://github.com/Kits-Lab-Dev/qbs-template|Шаблон проекта Qbs]]   * [[https://github.com/Kits-Lab-Dev/qbs-template|Шаблон проекта Qbs]]
  
 +[[https://disk.yandex.ru/d/Fjw2cZVs_fMvog|Скачать Qbs, STM32CubeCLT, STM32CubeMX]]
 +
 +В настройках VSCode в расширение Qbs настроить путь к исполняемому файлу ''qbs.exe'':
 +{{ :ide:vscode_qbs_path.png?direct&400 |}}
 +
 +Создаем проект в ''Cube MX'':
 +{{ :ide:cube_mx.png?direct&400 |}}
 +
 +''File -> New Project'', выбираем микроконтроллер:
 +{{ :ide:cube_mx_select.png?direct&400 |}}
 +
 +Активируем нужную периферию:
 +{{ :ide:cube_mx_pinout.png?direct&400 |}}
 +
 +Настраиваем цепь тактирования:
 +{{ :ide:cube_mx_rcc.png?direct&400 |}}
 +
 +Выбираем ''Makefile''в ''Toolchain/IDE'':
 +{{ :ide:cube_mx_toolchain.png?direct&400 |}}
 +
 +Настраиваем генератор кода:
 +{{ :ide:cube_mx_param.png?direct&400 |}}
 +
 +Генерируем проект нажав кнопку ''GENERATE CODE''. Открываем папку со сгенерированным проектом, копируем в нее содержимое ''шаблона проекта''
 +{{ :ide:cube_mx_template.png?direct&400 |}}
 +
 +Открываем папку проекта в ''VSCode'' и выбираем компилятор:
 +{{ :ide:vscode_copil.png?direct&400 |}}
 +
 +Во вкладке отладки выбрать тип загрузки прошивки:
 +{{ :ide:vscode.png?direct&400 |}}
 +
 +При первом открытии, возможно, понадобится сборка проекта, что бы не возникала ошибка при прошивке микроконтроллера. Для сборки нужно нажать кнопку ''Сборка'' в нижней панели ''VSCode''. При последующих запусках прошивки, сборка будет производиться автоматически.
 +
 +Для подключения сторонних библиотек нужно добавить в файле проекта  ''хxx.qbs''  пути к библиотекам, например:
 +<code javascript>
 +    property stringList myIncludes:[
 +       "lib/SSD1306",
 +       "lib/microrl"
 +    ]
 +</code>
 +
 +Для добавления своих определений их нужно поместить в список:
 +<code javascript>
 +    property stringList myDefines:[
 +       "_USE_CTLR_C"
 +    ]
 +</code>
 +
 +Список ''files'' содержит список файлов включенных в проект:
 +<code javascript>
 +    files:[
 +        "*.ioc",
 +        "*_FLASH.ld",
 +        "**/*.c",
 +        "**/*.cpp",
 +        "**/*.h",
 +        "**/*.hpp",
 +        "**/*startup_**.s",
 +    ]
 +</code>
 +
 +Строки ''**/*.cpp'' рекурсивно сканируют все папки проекта, в таком случае новые файлы добавляются в проект автоматически, достаточно перезапустить чтение ''*.qbs'' файла
 +
 +
 +Для исключения файлов из проекта их нужно внести в список ''excludeFiles'', например:
 +<code javascript>
 +    excludeFiles: [
 +        "MAKEFILE"
 +    ]
 +</code>
  
  
  • ide/vscode_qbs.1716058691.txt.gz
  • Последнее изменение: 2024/05/18 21:58
  • admin