作者 | strongerHuang
微信公 众号| strongerHuang
1
STM32Snippets什么是STM32Snippets?
STM32Snippets可翻译为“代码片段”、“裁剪”,其实他就是我们常说的“寄存器”开发STM32的底层驱动代码。
__INLINE void ConfigureGPIOforADC(void){/* (1) Enable the peripheral clock of GPIOA, GPIOB and GPIOC *//* (2) Select analog mode for PA1 *//* (3) Select analog mode for PB1 *//* (4) Select analog mode for PC0 */RCC->AHBENR |= RCC_AHBENR_GPIOAEN | RCC_AHBENR_GPIOBEN | RCC_AHBENR_GPIOCEN; /* (1) */GPIOA->MODER |= GPIO_MODER_MODER1; /* (2) */GPIOB->MODER |= GPIO_MODER_MODER1; /* (3) */GPIOC->MODER |= GPIO_MODER_MODER0; /* (4) */}
(公号不支持外链接,请微 信链接到浏览器打开)

STM32Snippets目前官方只提供:STM32F0和L0的示例代码包。
提供的示例代码有点类似标准外设库风格,给大家看下F0的代码包:

2
Standard Peripheral LibraryStandard Peripheral Library:简写SPL,也叫标准外设库。
https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html

3
STM32Cube LL 和 HALLL:Low-Layer,底层库
HAL:Hardware Abstraction Layer,硬件抽象层库
地址:
https://www.st.com/en/development-tools/stm32cubemx.html

4
四种库对比来自官方的对比信息,包含可移植性、优化、难易程度等。

其中:
Portability:可移植性
Optimization :优化
Easy:难易程度
Hardware coverage:硬件覆盖
定位:

支持器件:

最近新增了STM32Cube MP1,官方没有统计上。
库之间的转移:

本文就到这里,希望以上内容对你有所帮助!