野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 19866|回复: 7

新人是该继续学习标准库还是该学习HAL库

[复制链接]
发表于 2020-7-23 16:28:02 | 显示全部楼层 |阅读模式
不久前买了霸道V1的板子,最近刚把入门篇学完。赠送的视频教程全是针对固体库开发的,这时候我看到不少帖子说,固体库,即标准库已经过时了,连ST公司都不再更新了,未来主推HAL库;资料中没有HAL的视频教程,赠送的关于HAL库的资料书籍还是基于霸道V2开发板的,感觉买了V1的我有点亏,请问我还有必要继续学习固体库的中级篇和提高篇吗,求过来人分享一下经验。
回复

使用道具 举报

发表于 2020-7-24 08:36:17 | 显示全部楼层
现在电脑win10  xp与win7是不是就不能用了。能抓老鼠的猫都是好猫
回复 支持 1 反对 0

使用道具 举报

发表于 2020-7-24 08:53:31 | 显示全部楼层
我觉得没啥影响,从学习的角度讲完全可以按照标准库继续往下学,把stm32相关内容熟悉了之后再根据自己的实际需要切到HAL库,我当时学F103的时候就是这么干的。
其实HAL库相比标准库只是移植性更好,代码可以很方便的移植到其他型号的stm32,运行效率上HAL库是最慢的。
回复 支持 1 反对 0

使用道具 举报

发表于 2020-7-24 08:57:02 | 显示全部楼层
首先标准库和固件库区别在于固件库更贴近底层,查看HAL库的源代码,一些函数其实就是对固件库的封装,这两个库本身没多大区别,你不管学习哪个,只要学精了,另外一个库的函数也无师自通了
因为库函数最终操作的都是底层寄存器,当你想要驱动硬件外设时,已经知道哪些寄存器要初始化了,那么要用哪个库就没必要了
HAL库的好处就是,它的兼容性很强,只要是STM32F系列,它的软件层次结构是一样的,而固件库相对于HAL库,软件上芯片不同,差别也大,如果你想把F4的程序移植到F1上,用HAL库是最方便的
作为新人,火哥的视频教程你不管学习HAL库还是固件库都可以拿来用,而且火哥各个开发板 的HAL库文档都出了,只要学懂了原理,库函数只不过是一种工具罢了
学习哪个库取决于你怎么用,我个人学习的HAL库,因为可以搭配CubeX软件快速生产工程模板,另外HAL库有些函数简化了固件库,建议先用固件库学习F103,有了基础后,先用固件库做个小项目,然后再转HAL
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-7-24 09:48:47 | 显示全部楼层
duanzhe 发表于 2020-7-24 08:57
首先标准库和固件库区别在于固件库更贴近底层,查看HAL库的源代码,一些函数其实就是对固件库的封装,这两 ...

谢谢指点
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-24 09:49:46 | 显示全部楼层
瞎眼灯 发表于 2020-7-24 08:53
我觉得没啥影响,从学习的角度讲完全可以按照标准库继续往下学,把stm32相关内容熟悉了之后再根据自己的实 ...

谢谢大佬的指点
回复 支持 反对

使用道具 举报

发表于 2020-7-24 10:17:05 | 显示全部楼层
直接HAL,ST都停更标准库了。而且HAL很爽
回复 支持 反对

使用道具 举报

发表于 2020-7-27 18:30:02 | 显示全部楼层
虽然标准库学精了,移植到HAL库也是很方便的,不过既然是初学,而且火哥也有HAL的教程,那就直接学习更加兼容点的HAL库
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 13:22 , Processed in 0.045022 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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