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

hal库和LL库的关系是什么?为什么有时同时存在

牛妞小小 2019-03-27 浏览量:2116
hal库是调用LL库的吗?LL库是hal库的底层实现吗?看见一些工程里边有hal库和ll库同时存在。
1 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • HAL库和LL库不存在调用关系。

    HAL是硬件抽象层,和硬件的关系不是很大了,容易移植和理解,但是执行效率低,代码占用空间多;

    LL更贴近底层操作,效率比较高,但不好理解。

    • 发布于 2019-03-27
    • 举报
    • 评论 0
    • 2
    • 0

其他答案 数量:10
  • HAL库和LL库之间不存在调用关系,他们是同级别的存在。在STM32CubeMX中配置并生成STM32项目时,默认使用的都是HAL库,但是针对某些需要高性能的偏上资源的驱动,可以选择LL库作为驱动库。所以有时工程里面会有HAL库和LL库同时存在。HAL库是ST主推的STM32驱动库,其优点是能够兼容所有STM32系列,缺点是执行效率偏低,所以ST推出了LL库作为HAL库的补充。
    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 2
    • 0

  • 这两个库不存在调用关系是相互独立的,ll库的代码量小效率高兼容性不好,hal路的兼容性好但是编译出来代码量大执行效率低一些,现在一般都是用hal,因为芯片的性能提升对代码大小限制没有那么高要求
    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 2
    • 0

  • HAL和LL库并没有上下层关系,可以说是独立的驱动库

    如果是兼容RTOS或其他系列HAL比较方便,但是HAL执行效率低

    为了解决效率低的缺点,LL库可以配合HAL使用,替换部分代码,提高执行效率

    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 2
    • 0

  • 不是的,没有调用的,是独立使用的,你说的两种都有,可能是为了效率上的考虑,LL库的效率要高一些的
    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 1
    • 0

  • 并不是,LL库类似于以前的标准函数库,但是更底层更强调编译体积和执行效率

    HAL库更强调编写效率和抽象效果

    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 1
    • 0

  • HAL库与LL库不是调用关系 ,而是自己运行自己。

    使用两个库,应该是要使用LL库的高效率,LL库是使用寄存器的方式控制单片机的

    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 1
    • 0

  • HAL和LL库之间不是一个调用另一个的关系。

    HAL库和LL库之间相对独立。HAL库执行效率低,占用空间大;LL库效率高,但是不好理解。

    • 发布于2019-03-27
    • 举报
    • 评论 0
    • 1
    • 0

  • LL库文件的命名方式和HAL库基本相同。个人感觉,LL库就是原来的标准外设库移植到Cube下的新的实现。因为使用LL库编程和使用标准外设库的方式基本一样。
    • 发布于2019-03-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 是没有调用关系 的,这是两个不同的库,LL库控制寄存器,效率高,都使用时,可能就是用了LL库效率高的优点
    • 发布于2019-03-28
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库和LL库都是对寄存器操作的封装,两种库本来就可以同时存在,反正最后层层调用的结果都是寄存器操作,一样的

    只不过HAL库还要求提供一个定时器给它作为时基,这时LL库不能占用这个定时器

    另外,HAL库跟LL库不存在互相调用的关系

    • 发布于2019-03-31
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

hal库和LL库的关系是什么?为什么有时同时存在