当前位置:网站首页>STM32的HAL和LL库区别和性能对比
STM32的HAL和LL库区别和性能对比
2022-08-03 15:48:00 【路过的小熊~】
LL库和HAL库简介
LL:Low-Layer,底层库
HAL:Hardware Abstraction Layer,硬件抽象层库
LL库和hal库对比,很精简,这实际上是一个精简的库。
LL库的配置选择如下:
在STM32CUBEMX中,点击菜单的“Project Manager”–>“Advanced Settings”,在下面的界面中选择“Advanced Settings”,然后在每个模块后面选择使用的库
总结:
1、如果使用的MCU是小容量的,那么STM32Cube LL将是最佳选择;
2、如果结合可移植性和优化,使用STM32Cube HAL并使用特定的优化实现替换一些调用,可保持最大的可移植性。另外HAL和LL可以部分并发使用(对于同一个外设,HAL和LL不可能并发运行
),也可以使用混合的HAL和LL实现来获得上述相同的优势。
STM32使用HAL库、标准库、LL库和寄存器操作的性能对比
介绍
stm32开发时,选用不同库的开发难度和速度相差可能很大,相应的,开发出来的代码运行性能也会有很大差别。
下图是官方给出的几个常用功能:GPIO 翻转、TIM PWM 输出、ADC DMA 数据采集和 DMA M2M ,使用不同库开发出来的运行结果,可供大家参考对比,做出符合自己开发项目需要的选择。
总结
代码效率与移植性成反比的规律是明显的。但与 Cube HAL 相比, Cube LL 的效率优势还是很明显的,几乎和直接写寄存器的效率相差无几
。而且目前 STM32cubeMX 已经开始支持直接生成使用 Cube LL 的工程,对于以后追求效率的开发应用人员来说,非常值得推荐给大家使用。
边栏推荐
- Ark server opening tutorial win
- Ark server open tool, server tutorial win
- js数组方法总结
- STM32 GPIO LED和蜂鸣器实现【第四天】
- 兔起鹘落全端涵盖,Go lang1.18入门精炼教程,由白丁入鸿儒,全平台(Sublime 4)Go lang开发环境搭建EP00
- The general trend, another key industry related to Sino-US competition, has reached a critical moment
- js中的基础知识点 —— 事件
- leetcode-105 从前序与中序遍历序列构造二叉树-使用栈代替递归
- 文件包含之伪协议的使用
- leetcode: 899. Ordered Queue [Thinking Question]
猜你喜欢
cnpm 安装成功后提示不是内部和外部命令,也不是可运行的命令解决方案
[Code Hoof Set Novice Village 600 Questions] Define a function as a macro
leetcode:899. 有序队列【思维题】
ffplay视频播放原理分析
聊聊这个SaaS领域爆火的话题
2021年12月电子学会图形化四级编程题解析含答案:森林运动会
The general trend, another key industry related to Sino-US competition, has reached a critical moment
6000 字+,帮你搞懂互联网架构演变历程!
LyScript 验证PE程序开启的保护
【数据库数据恢复】SqlServer数据库无法读取的数据恢复案例
随机推荐
请问下阿里云全托管flink能执行两条flink sql命令么?
如何用二分法搜索、查找旋转数组中是否含有某个(目标)值? leetcode 81.搜索旋转排序数组
泰山OFFICE技术讲座:文字边框高度研究
劲爆!协程终于来了!线程即将是过去式
How to get the 2 d space prior to ViT?UMA & Hong Kong institute of technology & ali SP - ViT, study for visual Transformer 2 d space prior knowledge!.
AWS China SDN Connector
指令重排以及案例
深度学习——安装CUDA以及CUDNN实现tensorflow的GPU运行
瞌睡检测系统介绍
文件包含之伪协议的使用
神经网络,凉了?
用友YonSuite与旺店通数据集成对接-技术篇2
动态链接库.dll、.so和静态库.a,cmake指令
【码蹄集新手村600题】将一个函数定义宏
Deep Learning - Install CUDA and CUDNN to implement GPU operation of tensorflow
冒烟测试冒烟测试
PWA 应用 Service Worker 缓存的一些可选策略和使用场景
在 360 度绩效评估中应该问的 20 个问题
2021年12月电子学会图形化二级编程题解析含答案:消灭蝙蝠
2021年12月电子学会图形化一级编程题解析含答案:放学