Preskočiť na hlavný obsah

Nástroje projektu

Tento modul poskytuje skripty pre Windows a Linux/Unix, ktoré ponúkajú interaktívne menu na spúšťanie rôznych pomocných skriptov CMake.
Je navrhnutý tak, aby zjednodušil nastavenie a údržbu projektu zoskupením často používaných akcií do jednoduchého rozhrania.


📌 Hlavná obrazovka​

Po spustení skriptu vyzerá hlavné menu takto:

=====================================
1. Create module
2: Add component
3: Add CMake file
4: Initialization
5: Exit
=====================================
Enter your selection (1-5):

Poznámka: Skutočné menu sa môže líšiť podľa konkrétnej implementácie a dostupných skriptov.


Vytvorenie modulu​

Táto voľba umožňuje používateľovi vytvoriť v projekte nový modul.
Po jej výbere sa skript opýta na názov modulu a ďalšie relevantné údaje a potom vygeneruje potrebnú adresárovú štruktúru a súbory.

Vytvorená adresárová štruktúra:​

ModuleName/
├─ CMakeLists.txt
├─ ModuleName_Port.h
├─ ModuleName_Types.h
├─ ModuleName.c
└─ ModuleName.h

CMakeLists.txt​

Súbor CMakeLists.txt bude obsahovať základnú konfiguráciu na zahrnutie modulu do build systému. Vygeneruje cieľ statickej knižnice pre modul. Názov knižnice bude rovnaký ako názov modulu s príponou „_Lib“.

ModuleName_Port.h​

Tento hlavičkový súbor bude obsahovať verejné definície portu modulu, napríklad prototypy funkcií. Používateľ nesmie volať žiadne iné interné funkcie priamo. Toto má byť jediný vstupný bod do modulu.

ModuleName_Types.h​

Tento hlavičkový súbor bude obsahovať všetky verejné definície typov, enumov, štruktúr a makier.

ModuleName.c​

Tento zdrojový súbor bude obsahovať implementáciu funkcií modulu. Tento súbor sa zvyčajne používa ako verejné API modulu. Všetky potrebné externé funkcie majú byť zapuzdrené tu, rovnako ako verejné funkcie definované v ModuleName_Port.h.

ModuleName.h​

Tento hlavičkový súbor bude obsahovať interné definície typov, enumov, štruktúr a makier používaných iba v rámci modulu.


Pridanie komponentu​

Táto voľba umožňuje používateľovi pridať nový komponent do existujúceho modulu. Po jej výbere sa skript opýta na názov modulu a podrobnosti o komponente a potom vygeneruje potrebné súbory v zadanom module.

Vytvorená adresárová štruktúra:​

ModuleName/
├─ CMakeLists.txt - Existing file
├─ ModuleName_Port.h - Existing file
├─ ModuleName_Types.h - Existing file
├─ ModuleName.c - Existing file
├─ ModuleName.h - Existing file
├─ ModuleName_ComponentName.c - New component source file
└─ ModuleName_ComponentName.h - New component header file

Pridanie súboru CMake​

Táto voľba umožňuje používateľovi vytvoriť alebo aktualizovať súbor CMakeLists.txt pre konkrétny modul.


Inicializácia​

Po jej výbere skript zobrazí podmenu s rôznymi možnosťami inicializácie.

=====================================
1: Initialize folder structure
2: Initialize BSP module
3: Back to main menu
=====================================
Enter your selection (1-3):

Inicializácia adresárovej štruktúry​

Táto voľba vytvorí základnú adresárovú štruktúru projektu vrátane adresárov pre zdrojové súbory, hlavičky a testy.

Vytvorená adresárová štruktúra:​

ProjectRoot/
├─ CMakeLists.txt - Project root CMake file
├─ ArtifactsConfig.txt - Artifacts configuration file
├─ Application/ - Project application part
│ ├─ AppCom/ - Application communication modules
│ ├─ AppComp/ - Application components (Low level logic)
│ ├─ AppFun/ - Application functionalities (High level logic)
│ ├─ AppCore/ - Application core (Top level logic)
│ ├─ AppMain/ - Application main file
│ └─ App.cmake - Application CMake file
├─ Middlewares/ - Project middlewares part
├─ BSP/ - Board Support Package
└─ STM_Template/ - CMake build system submodule

Inicializácia modulu BSP​

Táto voľba inicializuje modul Board Support Package (BSP). Skript sa opýta na cieľový mikrokontrolér a nastaví potrebné súbory a konfigurácie.

Vytvorená adresárová štruktúra BSP:​

BSP/ - Board Support Package
├─ Hal/ - Hardware Abstraction Layer
├─ Mcal/ - Microcontroller Abstraction Layer
├─ Ral/ - Register Abstraction Layer
├─ Linker/ - Linker script
├─ Startup/ - Startup files
├─ Docs/ - BSP documentation
└─ Bsp.cmake - BSP CMake file

⚙️ Požiadavky​

Nasledujúce nástroje musia byť nainštalované a dostupné v systémovej PATH:

  • CMake
  • Git

Všetky ostatné závislosti spravujú samotné skripty CMake.


📝 Poznámky​

  • Každá položka menu volá konkrétny skript CMake umiestnený v adresári Scripts/.
  • Skript zaisťuje konzistentný priebeh vykonávania, takže nemusíte príkazy CMake volať ručne.

Licencia​

Tento projekt je licencovaný pod licenciou CC BY-NC.
Môžete ho voľne používať, upravovať a zdieľať na nekomerčné účely s uvedením autorstva.