
HAL已经五六年了,刚接触STM32就是直接上手HAL。 很长时间,LL库没有在论坛等很多地方出现了,今天闲来无事测试一下。1 ~$ v1 D M9 | 6 P9 s, A, a" X/ i! I/ \8 h0 k 对比一下,同样环境的HAL和LL的差异: x3 ], ]$ x7 L% k6 e2 Z, [% I4 C HAL------ ![]() LL------ ![]() $ }. s5 B8 Z' Q9 { ^0 }7 b 即便全部使用LL库,可以看到HAL库部分代码依然被COPY进工程,被HAL_Init调用。 ![]() RAM使用相差无几,可能是仅开了RCC和GPIO两个外设,如果多开几个外设可能会有明显的差异。LL库的FLASH占用还是小很多,HAL的0.6倍。 我建议前期HAL库开发功能,后期LL库降低Flash开销,但是我认为为了那么大Flash,然后花费大量时间和人力测试代码什么的,极有可能得不偿失,需要仔细平衡。 / Y0 L( R7 z5 q- p: `) U |
也影响速度
是的,执行效率影响还是不能忽视的。