• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32的固件库问题

奔跑的黑蚂蚁 2018-06-11 浏览量:1093
STM32现在有两种版本的固件库,一种是标准库,一种是HAL库!我知道官方出了一个可以生成初始化代码的软件,这个软件生成的就是HAL库,大部分人都说HAL库以后是主流,而且以后得芯片也不会出标准库了!那么是不是会使用标准库还是不行呢?是不是很快就被淘汰了?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • HAL库目前支持所有STM32系列产品,标准库目前支持一系列较早的系列,比较新的F7,H7,L0,L4,L4+都已经没有标准库了。官方是大力推广STM32CubeMX和HAL库的,但是标准库短时间内还是不会被淘汰的。如果比较保守,可以不学洗HAL库,但是如果想用新型号的产品,就必须学习HAL库了。而且HAL库配合STM32CubeMX真的非常方便,项目的生成和底层驱动甚至初始化等都做好了,只需要关心应用层了,节省大量时间。所以还是建议学习HAL库配合STM32CubeMX使用。

    0008.png

    • 发布于 2018-06-11
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:15
  • 会使用标准库在转到hal库会很快上手的,新出的芯片已经不再提供标准外设库,hal库的使用可以使用cubemx快速生成工程,st在主推这个工具,对于开发者来说肯定是越来越方便
    • 发布于2018-06-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 如果要使用STM32F7和以上的版本,就需要学习hal库了
    • 发布于2018-06-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议还是跟着官方的标准走比较好,后面标准库不被支持的时候,哭都哭不出来啊。
    • 发布于2018-06-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 我最近做蓝牙4.0,TI公司的解决方案,那个板子就提供HAL库,如果不出意外应该是一样的东西,我的理解是就是在原来标准库的基础上,再进行一次封装,直接调用API接口实现功能,我感觉这样子有的地方方便了,有的地方变的不方便,比如你要使用串口、显示什么的好挺方便,调用函数就可以直接用,只需要初始化一下,但是,我使用的时候,没有我想要的显示格式,怎么办?我只有自己去改底层的驱动程序,搞成自己想要的,我觉得HAL库这个东西,对编程有一定的便捷性,但是又很大的问题啊!我周五还和一位工程师聊天谈到这个,如果以后外国都生产核心技术,我们只会去用HAL库,这是个多么可怕的事情,对底层一无所知,所以说,有机会多看看底层的东西,用标准库我觉得已经够用了,基于上述观点,所以上次我才在这里提问怎么学习汇编,就是为了多了解一点底层的东西。谢谢,个人意见,供参考!
    • 发布于2018-06-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 实际上现在ST官方提供了三种库:标准库,HAL库,LL库,标准库是ST早期维护的库了,随着芯片种类的增多,ST发现维护这个库越来越困难,而且这个库各个芯片间的兼容也很困难,比如你用标准库,一开始用103系列的芯片,后面更换到107系列了,可能整个库都要换了,维护起来痛苦,后期出来的芯片更是直接没有了标准库。ST意识到这种问题,推出了HAL库,配合CubeMX使用,各型号芯片兼容性有了很大提高,但是这个库有个缺点,封装层数太多,导致代码冗余,编译时间明显增长~于是乎就有了LL库,更接近底层。现在ST HAL库和LL库都有在维护,在CubeMX中也可以选择LL库,看个人喜好使用。
    • 发布于2018-06-12
    • 举报
    • 评论 1
    • 0
    • 0
奔跑的黑蚂蚁 回复了 a2ece75e7f11ad3c :谢谢,早看到你的回答就选你了。。。。。。。。。。。。。。 回复

  • 现在新出的系列f7 l4和h7已经没有标准库了,必须用hal库。
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 估计HAL是趋势了,除非不用ST的芯片。现在网上也有一些HAL的教程了,可以参考参考
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库是大趋势 移植更加方便
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 这是一个趋势吧,从根本上讲感觉hal库没有标准库的效率高,但是它的可移植性大大的提高了,开发也方便多了。
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库是ST现在主推的一个库,但是他的效率并不高,标准库是老的库,资料比较多,不过建议采用HAL+寄存器的方案
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议你直接用HAL库,因为现在标准库已经不推广了,只有原来的IC才有,以后的芯片肯定都是HAL库
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 主要是标准库不能支持新版的F7 H7等高端MCU,这给代码移植带来了不便。当然目前F1 F4那些还是可以用标准库的
    • 发布于2018-06-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 标准库官方已经没有更新了,新出的F7 H7等也没有标准库的支持,以后HAL库逐步替代标准库,这是大势所趋,楼主要进行产品开发也用HAL库。

    • 发布于2018-06-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 标准库也是可以使用的,只是不更新了而已。另外还有LL库,效率也是很高的
    • 发布于2018-06-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 因为官方以及停止更新标准库了,所以大趋势是必须学会CUBE库,但是图形化的界面很好用的。

    另外就是官方推出的MCU功能越来越多,寄存器越来越复杂,标准库已经开始出现疲软了。

    • 发布于2018-06-27
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32的固件库问题