dreameng

HAL

2026/05/01
6
0

Hardware Abstraction Layer,硬件抽象层

概述

嵌入式的开发,从根本上是基于寄存器的开发。但是寄存器地址多,难于记忆;不同型号间的寄存器地址不同,不方便在不同型号间移植。为了方便开发、增加代码的可移植性,ST公司提供了HAL库,对底层做了封装。

和CMSIS的关系

CMSIS,Common Microcontroller Software Interface Standard,通用微控制器软件接口标准

ARM公司设计了ART内核,交由不同的芯片厂商(ST, NXP, TI等)生产芯片。为了让不同的厂家按照统一的标准生产芯片,ARM制定了CMSIS。内容大致定义了:中断、定时器、寄存器。

CMSIS解决的是:内核如何运转,约束的是芯片厂商;而HAL库解决的是:让开发者更容易地使用MCU,由ST公司提供。