在 STM32Cube IDE 里生成使用 LL(Low Layer)库的工程,可按以下步骤操作:
1. 新建 STM32 工程
- 启动 STM32Cube IDE,选择
File
→New
→STM32 Project
。 - 依据需求挑选目标 MCU 型号,接着点击
Next
。
2. 配置工程
- 为工程命名并选择存储路径,然后点击
Next
。 - 在
Toolchain/IDE
选项中,选择GCC ARM Embedded
,再点击Finish
。
3. 打开图形化配置工具(CubeMX)
- 在 Project Explorer 视图中,双击
.ioc
文件,以此打开 STM32CubeMX 配置界面。
4. 配置 LL 库
- 切换到
Project Manager
标签页。 - 点击
Code Generator
选项。 - 在
Generated files
区域,勾选Generate peripheral initialization as a pair of '.c/.h' files per peripheral
。 - 展开
Advanced Settings
,把需要使用 LL 库的外设(如 GPIO、USART 等)对应的驱动从HAL
改为LL
。 - 点击
GENERATE CODE
,之后关闭 CubeMX 工具。
5. 验证 LL 库的使用
- 回到 STM32Cube IDE,打开
Src
目录下生成的外设初始化文件(例如stm32xxxx_ll_gpio.c
),确认是否存在 LL 库函数调用。 - 在自己的代码里,可以直接包含对应的 LL 库头文件(例如
stm32xxxx_ll_gpio.h
)来使用 LL 库函数。
示例代码片段
下面是一个使用 LL 库配置 GPIO 的简单示例:
c
运行
#include "stm32xxxx_ll_gpio.h"
void MX_GPIO_Init(void)
{
LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
/* GPIO Ports Clock Enable */
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA);
/* Configure GPIO pin Output Level */
LL_GPIO_SetOutputPin(GPIOA, LL_GPIO_PIN_5);
/* Configure GPIO pin : PA5 */
GPIO_InitStruct.Pin = LL_GPIO_PIN_5;
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}
通过上述步骤,你就可以成功创建一个基于 LL 库的 STM32 工程。LL 库相较于 HAL 库更加底层,代码也更为精简,适合对性能有较高要求的应用场景。