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

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 库都有一定的了解,这样才能在项
目开发中得心应手游刃有余。
供大家参考,感觉说得有点道理

对于有一些32芯片 只有标准固件库那么还是的埋头去学习一下HAL库 但是这种的转学不是很你的错 这只能 说这是历史的进步 个人觉得是历史的退步 。

原文地址:https://www.cnblogs.com/pei942664/p/10938168.html

时间: 2024-11-05 17:24:26

使用固件库开发和使用Hal库开发有什么不同的相关文章

【STM32H7教程】第57章 STM32H7硬件JPEG编解码基础知识和HAL库API

完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第57章       STM32H7硬件JPEG编解码基础知识和HAL库API 本章节为大家讲解硬件JPEG,实际项目用到图像显示的地方比较多,有了硬件JPEG可以大大加速JPEG图片显示速度. 57.1 初学者重要提示 57.2 硬件JPEG基础知识 57.3 硬件JPEG的HAL库用法 57.4 源文件stm32h7xx_hal_jpeg.c 57.5 总结 57

【安富莱】V6,V5开发板用户手册,重在BSP驱动包设计方法,HAL库的框架学习,授人以渔(2019-07-21)

说明: 1.本教程重在BSP驱动包设计方法和HAL库的框架学习,并将HAL库里面的各种弯弯绕捋顺,从而方便我们的程序设计. 2.本次工程延续以往的代码风格,从底层BSP驱动包到应用代码,变量命名,文件命名,程序框架,注释等都比较规范,大家阅读或者移植都会比较方便.      另外,阅读代码时,务必将编辑器的缩进参数和TAB设置为4来阅读本文件,否则显示不整齐. 3.本教程每周会继续更新1-2章,之后将开启配套的视频教程制作,加大对初学者的支持力度. 4.V5,V6,V7将通过这次升级,达到底层驱

《STM32F7原理与应用HAL库版上下册》张洋高清PDF学习

资源链接:https://pan.baidu.com/s/13xNGYTbW8wtE4pZQHi95qA本套书籍以ST公司的STM32F767为目标芯片,详细介绍了STM32F7的特点.片内外资源的使用,并辅以65个例程,由浅入深地介绍了STM32F7的使用.所有例程都经过精心编写,从原理开始介绍,到代码编写.下载验证,一步步教读者如何实现.所有源码都配有详细注释,且经过严格测试.HAL库版不同于固件库,是ST公司最新力推的开发包,程序层次清晰,易于二次开发.上下册PDF全集高清版,仅供参考使用

STM32标准外设库、 HAL库、LL库

工作以来一直使用ST的STM32系列芯片,ST为开发者提供了非常方便的开发库.到目前为止,有标准外设库(STD库).HAL库.LL库 三种.前两者都是常用的库,后面的LL库是ST最近才添加,目前支持的芯片也偏少.各库如下所示: 其中STD库和HAL库两者相互独立,互不兼容.几种库的比较如下: 目前几种库对不同芯片的支持情况如下: 上图中,LL库目前有部分芯片不支持,官方计划2017年逐步完善. STM32Snippets 它是代码示例的集合,直接基于STM32外设寄存器,可在文档和软件包中使用.

【HAL库每天一例】freemodbus移植

例程下载:资料包括程序.相关说明资料以及软件使用截图 百度云盘:https://pan.baidu.com/s/1slN8rIt 密码:u6m1 360云盘:https://yunpan.cn/OcPiRp3wEcA92u密码 cfb6 (硬石YS-F1Pro开发板HAL库例程持续更新\6. 软件设计之Modbus(HAL库版本)\YSF1_HAL_freemodbus_001. freemodbus移植)/**  ****************************************

STM32 HAL库和LL库的区别

上次开发一个项目,使用一个小容量的STM32 ARM CORTEX核心的单片机,使用STM32CUBEMX自动生成配置代码,正准备编写程序的时候,发现容量竟然有6K多.这个容量在使用大容量FLASH的单片机时不感到什么,可是使用小容量单片机的时候,就明显不够用了. 没有办法,只好打算回去使用原来的StdLib库,前两年不就这么干的嘛,也没什么难的.可是回头找对应库的时候,发现悲剧了,没有这个序列的标准库. 这也难不倒我们老司机!我就从HAL库里面把必须的寄存器语句摘出来,把冗余的有效检验和冲突处

UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)

1. ckfinder(ckfinder插件标签) 1.1. 参数 属性名 类型 描述 是否必须 默认值 name string 属性名称 是 null value string 默认值 否 null width string 显示图片宽(上传类型为Images时) 否 null height string 显示图片高(上传类型为Images时) 否 null buttonClass string 按钮样式 否 null buttonValue string 按钮文本 否 null upload

【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位...

[转]http://www.tuicool.com/articles/jyA3MrU Android开源库 自己一直很喜欢Android开发,就如博客签名一样, 我是程序猿,我为自己代言 . 在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者,而且我会 不定期的更新 这篇文章. Android下的优秀开发库数不胜数,在本文中,我列举的多是开发流程中最常用的一些.如果你还想了解更多的Android开源库,可以关注我的博客,每一个库都是我认真查看或者编译运行

Sublime插件库新成员基于APICloud快速开发跨平台App

互联网时代强调用户体验,那什么是HTML5跨平台App开发者的编程体验?"不剥夺.不替换开发者喜欢的开发工具,就是人性化的用户体验",APICloud给出了这样的答案! 重磅发布"多开发工具支持策略" "如果,你以为此次分享会APICloud只是讲解Eclipse开源插件代码经验,那就大错特错了!"APICloud CEO刘鑫以调侃的话进行了开场. 经过一年的上线摸索,APICloud团队充分的认识到"剥夺开发者已经习惯的开发工具,替换