发布网友 发布时间:2023-05-05 16:22
共1个回答
热心网友 时间:2023-10-03 07:14
学标准库还是学hal库如下:
HAL 库相对标准库更加复杂更加繁琐
但是HAL库能够适应不同的st芯片的应用,所以应用能力更加广泛,但是是直接和硬件联系的,所以比起标准库来说,更难上手。
Hal封装的很好,在F7和F4之间移植起来也相当方便。另外就是ST这几年主推HAL,F7之后不再提供标准库,只有HAL库。但是新手的话还是建议从标准库开始学并慢慢了解寄存器,这样可以深入了解stm32的底层知识,出了问题排查也能知道从哪里入手。
半年前接触 STM32,刚开始 MCU 用的 32F1,库用的标准外设库 3.5,写过一些简单的东西。
再后来发现 ST 还有一个软件叫做 STM32 CUBE MX,可以自动的生成初始化程序,对于我这个 32 新手来说无疑是天降福音!终于不用为繁琐的配置而苦恼了(其实就是自己对各项配置不熟,而且没有自己积累的程序可以 Ctrl C + Ctrl V)。
虽然 CUBE 用的是 ST 新出的 HAL 库,与以前的 标准外设库完全不兼容,甚至基本的 I/O 操作都变了,会让习惯了
标准外设库的人很苦恼。但是我对标准外设库也不是很熟,而且 CUBE 的界面化设计真的让 配置工程变得很方便,再加上它还有一个类似于 FPGA
的引脚分配界面,让资源分配,PCB 布局布线也方便了不少,于是我选择了用 CUBE ,用 HAL 库。