你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32hal和LL库的使用场合

[复制链接]
zyqwxw 提问时间:2022-9-5 08:42 / 未解决
请问HAL和LL库分别在什么场合使用?LL库简单明了,为啥不是主流使用啊?还有为啥L03的例程中有较多的LL库例子,而其他L0芯片几乎没有,轻问官方是否不太支持LL库啊。
收藏 评论6 发布时间:2022-9-5 08:42

举报

6个回答
xmshao 回答时间:2022-9-5 10:07:11
HAL库重点考虑到不同STM32系列的移植方便性,提供了基于功能块并做了很好封装的API,作为终端用户不太需要关注不同产品或IP用户的复杂性或差异,一般不用直接针对寄存器做操作。LL库提供了基于各个系列寄存器层面的API,相对而言,代码更为优化和高效,我们的代码往往基于寄存器进行操作。但它需要终端用户对产品细节,尤其寄存器有更细致深入的了解,不同系列的移植性方面就比HAL库差。


相对来讲,HAL库上手快,尤其对STM32还不太熟悉的人,HAL库里基于功能模块的API结构较为清晰、可读性好,使用起来也较为方便。但因为要顾及不同系列的移植,代码明显相对臃肿,效率相比LL库代码低。


其实,当我们慢慢熟悉后,HAL库和LL库的使用是可以融合的。
yklstudent 回答时间:2022-9-5 20:46:51
mark,签到+1
不要多想,HAL+LL可以同时使用,LL库跟标准库跟接近,HAL更适用STM32CubeMX环境配置开发;
zyqwxw 回答时间:2022-9-6 08:48:06
xmshao 发表于 2022-9-5 10:07
HAL库重点考虑到不同STM32系列的移植方便性,提供了基于功能块并做了很好封装的API,作为终端用户不太需要 ...

感谢解答,按照我的习惯,还是要看看hal库中的一些程序代码,但由于代码写的比较复杂,导致hal库理解比较困难。
zyqwxw 回答时间:2022-9-6 08:48:52
yklstudent 发表于 2022-9-5 20:46
mark,签到+1
不要多想,HAL+LL可以同时使用,LL库跟标准库跟接近,HAL更适用STM32CubeMX环境配置开发;
...

LL库感觉挺简单,准备就用LL库开发。
GOGO加油ZJ 回答时间:2022-9-7 23:27:02
你用习惯HAL库就不用这么说了,方便得要命。
zyqwxw 回答时间:2022-9-8 13:18:19
GOGO加油ZJ 发表于 2022-9-7 23:27
你用习惯HAL库就不用这么说了,方便得要命。

謝謝兄弟提醒
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版