这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » HAL库与标准库的理解

共7条 1/1 1 跳转至

HAL库与标准库的理解

高工
2022-02-09 15:16:29     打赏

HAL库是st公司为了更方便地进行stm32之间的移植而开发的库,通用性很强,在不同的两款stm32芯片之间的移植基本上不需要修改。之前使用的标准库都是基于寄存器的操作。寄存器版本使用较麻烦,每个设置都要去查看芯片datasheet,好处是可以让你熟悉芯片的寄存器配置。库函数是基于寄存器版本进行二次封装后推出的,它的优势就是寄存器版本的劣势,方便了使用,不再需要手动去配置寄存器,使用更方便了。但是它的劣势就是HAL的优势,就是每次修改MCU功能,都需要手动去修改功能,而且自己修改也不能保证正确性,程序代码在不同MCU之间的移植性不强。


HAL是Hardware Abstraction Layer的缩写,中文名称是:硬件抽象层,HAL库工程一般使用Cube软件来生成工程。HAL库是ST公司为STM32的MCU最新推出的抽象层嵌入式软件,更方便的实现跨STM32产品的最大可移植性。优势就是不需要开发工程师再关注所用MCU型号,只需要专注所以要的功能软件开发工作。而且是未来主推的方向,正在不断的推出更新。HAL库推出的同时,也加入了很多第三方的中间件,有RTOS,USB,TCP / IP和图形等等。和标准库对比起来,STM32的HAL库更加的抽象,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。
HAL 库相对标准库更加复杂更加繁琐,但是HAL库能够适应不同的st芯片的应用,所以应用能力更加广泛,但是是直接和硬件联系的,所以比起标准库来说,更难上手。





关键词: HAL库     标准库     STM32    

菜鸟
2022-02-10 08:38:47     打赏
2楼

不错,理解很全面


助工
2022-02-10 09:24:57     打赏
3楼

看看看


高工
2022-02-10 09:37:05     打赏
4楼

新年快乐


院士
2022-02-10 09:47:38     打赏
5楼

我是反对使用HAL库的。

冗余性太强了,导致了体积的快速上涨


高工
2022-02-10 09:47:53     打赏
6楼

OK


高工
2022-02-10 09:52:11     打赏
7楼

OK


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]