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

同样的硬件使用LL库和HAL编译的工程运行功耗不一样

[复制链接]
从前有五座山 提问时间:2023-1-11 08:55 / 未解决
项目在使用STM32L471RE开发,涉及到低功耗的处理。在测试过程中发现同样的硬件结构(PCB上仅焊接mcu的最小系统),使用LL库和HAL库生产的两个工程运行功耗不一样,工程配置时钟为4M 的MSI ,其他外设不配置,生成的工程直接编译下载。LL库的运行功耗为740ua、hal库为650ua
收藏 评论4 发布时间:2023-1-11 08:55

举报

4个回答
晒太阳的懒猫 回答时间:2023-1-11 09:06:27
细心啊,赞
butterflyspring 回答时间:2023-1-11 10:43:17
低功耗模式涉及的细节特别多。每种条件下多一个细节功耗都有变化。 LL库很显然接近底层,驱动贴近底层简单直接。HAL库考虑了很多情况,逻辑严谨,所以代码量多,并且各个函数的逻辑也经常有一定相关性,配置也丰富。
当代码不同时,运行的时间也会不同,相应的动态功耗也不同。对于一些配置(比如IO的状态等)不同,都会明显的引起功耗变化的。所以配置的每一个细节会决定功耗的具体情况。
xmshao 回答时间:2023-1-11 10:45:43
基于HAL库和LL库组织的代码,相同模式下芯片提现出来的功耗应该差不多,至少不会有很大差别。


你现在基于HAL库的代码运行功耗明显更低,说明它在低功耗处理方面比你基于LL库组织的代码做得更到位。


我们要知道,基于LL库组织代码的话,所有操作权都在用户手里了,HAL库不一样,库开发者在很多地方都


帮我们事先考虑周全了。基于LL库组织代码往往对使用者提出了更高的要求,对硬件操作时序、对寄存器


等要比使用HAL库了解得更多、更细。


建议你重点检查下各个不用外设的关闭及复位情况,尤其GPIO管脚的处理,保证管脚电平固定且无漏


电流产生。
万众邓鹏飞 回答时间:2023-1-11 14:29:49
是不是外部时钟也打开了。
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版