Hardware abstraction layer. Use tag [cmsis] for STM and other Cortex-M hardware. Also tag [hal-json] for hypertext application language.
Hardware Abstraction Layer is a generic term generally implying a set of routines in software that emulate some platform-specific details, giving programs direct access to the hardware resources.
For HAL as in Hypertext Application Language, please use the tag hal-json.