OpenCMSIS packs ¶
STM32CubeIDE for Visual Studio Code supports OpenCMSIS packs
What are OpenCMSIS packs? ¶
An OpenCMSIS pack is a package that contains software components, device support, and documentation for Arm® Cortex®-M microcontrollers. Installing an OpenCMSIS pack provides all necessary files and metadata to support development with the associated hardware and software components.
OpenCMSIS packs are based on an open standard that defines a delivery mechanism for software components. This standard makes it easy to use software from STMicroelectronics and its partners. OpenCMSIS packs include device family packs that provide drivers and other code specific to a microcontroller family. They also include board support packs with documentation and drivers for a specific development board, and middleware software packs with components for RTOSes, communication stacks, and other enabling technologies. Developers can combine different packs to address development needs throughout the development cycle and distribute high-quality software to accelerate software development. The packs also include dependency information for toolchains, devices, and processors. This information makes it easy for an integrated development environment (IDE) host to import, manage, and use the packs.
STM32CubeIDE for Visual Studio Code, STM32CubeMX, STM32CubeMX2, Arm Keil, and IAR Embedded Workbench® support these packs. Each IDE includes tools to import packs, add software to a project, and configure build tools. These tools make the process seamless and efficient.
Contents and structure ¶
Using OpenCMSIS packs in STM32CubeIDE for Visual Studio Code ¶
STM32CubeIDE for Visual Studio Code relies heavily on OpenCMSIS packs to provide device support:
Device family packs (DFPs) provide descriptions, startup code, and linker scripts for microcontroller families. They also support the debug experience and host SVD files
Hardware board support packs provide descriptions for specific development boards.
STM32CubeIDE for Visual Studio Code handles packs silently in the background to maximize the end-user experience. For advanced use, both a command line interface interface (CLI) and graphical tools are available to manage OpenCMSIS packs:
Graphical tool accessible from VS Code command palette:
STM32Cube: Open Pack ManagerCommand Line Interface:
cube pack --help