野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18129|回复: 9

使用固件库开发和使用Hal库开发有什么不同

[复制链接]
发表于 2018-9-13 11:00:22 | 显示全部楼层 |阅读模式
    Hello,大家好,本人有一定的STM32固件库开发基础,最近在做一个项目,必须用STM32L4,这块芯片只能使用Hal库开发,虽然没得选
但是还是想问一下火哥和各位,用Hal库开发和固件库开发有什么不同?网上说Hal库开发的代码体积比较大,还有比较死板,不灵活,是真的么?@flyleaf @fire @所有人
回复

使用道具 举报

发表于 2018-9-13 11:07:05 | 显示全部楼层
HAL库基本是在固件库的基础上又封装了一层,体积大,编译慢,占用资源多。
回复 支持 反对

使用道具 举报

发表于 2018-9-13 11:07:57 | 显示全部楼层
是的,HAL比较大,好处是可以直接使用cube生成,有些驱动不用自己写了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-13 18:17:00 | 显示全部楼层
好的,谢谢啦@fire @flyleaf
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-13 18:19:10 | 显示全部楼层
现在学习Hal库开发STM32L4,打算用火哥的《STM32 HAL 库开发实战指南—基于 F7》,程序差别应该不是很大?毕竟Hal库主打好移植@fire @flyleaf
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-13 19:55:41 | 显示全部楼层
本帖最后由 举叉的BSD 于 2018-9-13 19:56 编辑

@fire @flyleaf 现在关于这个问题查到的最新资料:
       ST 先后提供了两套固件库:标准库和 HAL 库。 STM32 芯片面市之初只提供了丰富全面的
标准库,大大便利了用户程序开发,为广大开发板所推崇,同时也为 ST 积累了大量标准库用
户。有过 STM32 基础的同学想必对标准库非常熟悉。我们正点原子目前的所有 STM32F1 开发
板以及探索者 STM32F407 开发板都是采用的标准库。 目前网络学习资料和源码,绝大多数都
是采用的标准库。
       大约到 2014 年左右, ST 在标准库的基础上又推出了 HAL 库。 实际上, HAL 库和标准库
本质上是一样的,都是提供底层硬件操作 API,而且在使用上也是大同小异。有过标准库基础
的同学对 HAL 库的使用也很容易入手。 个人认为 ST 官方之所以这几年大力推广 HAL 库,是
因为 HAL 的结构更加容易整合 STM32Cube,而 STM32CubeMX 是 ST 这几年极力推荐的程序
生成开发工具。所以这两年新出的 STM32 芯片, ST 直接只提供 HAL 库。在新型的 STM32 芯
片中,用 HAL 库逐步淘汰标准库。
       那么有很多同学不禁要问,我们是使用 HAL 库还是标准库好呢? 这里我们想说的是, HAL库和
标准库都非常强大,对于目前标准库支持的芯片采用标准库开发也非常方便实用,而且目
前网络资料和程序大部分都是讲解的标准库。大家不需要纠结自己学的是 HAL 库还是标准库,
无论使用哪种库,只要理解了 STM32 本质,任何库都是一种工具,使用起来都非常方便。 学
会了一种库,另外一种库也非常容易上手,程序开发思路转变也非常容易。 如果你是一个 STM32
熟手,长期从事 STM32 开发,那么有必要对标准库和 HAL 库都有一定的了解,这样才能在项
目开发中得心应手游刃有余。
供大家参考,感觉说得有点道理
回复 支持 反对

使用道具 举报

发表于 2018-9-18 08:44:51 | 显示全部楼层
不错了
回复

使用道具 举报

发表于 2018-9-18 08:45:28 | 显示全部楼层
我觉得学会一种库就行了,还不如多把精力用在os,gui上
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-18 09:10:09 | 显示全部楼层
Brave000 发表于 2018-9-18 08:45
我觉得学会一种库就行了,还不如多把精力用在os,gui上

如果你是初学者,当然可以只学Hal库来包打天下,但是有时候入门的时候学的是固件库,而现在st公司很多芯片都不支持固件库了,所以必须用新的库来开发。因为有时候你恰恰必须用不支持固件库开发的芯片。
回复 支持 反对

使用道具 举报

发表于 2018-9-18 11:21:06 | 显示全部楼层
举叉的BSD 发表于 2018-9-18 09:10
如果你是初学者,当然可以只学Hal库来包打天下,但是有时候入门的时候学的是固件库,而现在st公司很多芯 ...

额,32位芯片的没有库,只能说是是历史的倒退
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-12-6 06:48 , Processed in 0.043479 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表