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

stm32的hal库执行效率问题

菜鸟冷虎 2018-04-27 浏览量:3127
一直都是用标准库,最近换到hal库,感觉速度慢了好多,是不是hal库的执行效率比标准库低
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 是的,因为HAL库中间加入多层跳转和断言,这些断言主要是用来抽象不同型号之间的差异(如F1和F4),执行效率低下。一般高效的执行方法是HAL库存储化+操作寄存器读写数据。

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

其他答案 数量:13
  • hal库是对标准库和寄存器的多次封装,使用hal库要不停入堆出堆,耗费时间
    • 发布于2018-04-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 封装比 stdlib 多一层,效率是低,高性能的芯片没感觉,性能不太好的芯片用 std 库
    • 发布于2018-04-27
    • 举报
    • 评论 0
    • 0
    • 0

  • hal 库最下面一层和 std 库一样,上面多了抽象层
    • 发布于2018-04-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 直接寄存器操作速率 > 标准外设库速率 > HAL库速率

    但是开发效率和速率正好相反

    • 发布于2018-04-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 对于你这个问题,我只能说答案是肯定的- -

    封装那么多层有毛用

    • 发布于2018-04-28
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL是优化效率最差的,但从跨系列开发和长期代码维护看是个方向


    111.jpg


    • 发布于2018-04-28
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL非标准库是对下面一层接口的封装,有好有坏吧,执行效率的话,现在的芯片处理速度都还可以,基本上感觉不到
    • 发布于2018-04-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 速度肯定会慢一些,不过在单片机的应用场合应该不会感觉很明显的,检查是否有问题存在。
    • 发布于2018-04-30
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库将一些功能进行了几层的封装,调用起来比较多的嵌套。所以效率比LL库或是寄存器方式低很多。
    • 发布于2018-05-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32的hal库执行效率问题