stm32cube ide如何生成LL库工程

在 STM32Cube IDE 里生成使用 LL(Low Layer)库的工程,可按以下步骤操作:

1. 新建 STM32 工程

  • 启动 STM32Cube IDE,选择FileNewSTM32 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 库更加底层,代码也更为精简,适合对性能有较高要求的应用场景。

相关推荐
亿道电子Emdoor4 分钟前
【ARM】MDK自动备份源文件
arm开发·单片机·嵌入式硬件·arm
ytttr8735 小时前
8位以及32位的MCU如何进行选择?
单片机·嵌入式硬件
是孑然呀5 小时前
【笔记】重学单片机(51)(下)
笔记·单片机·嵌入式硬件
驱动起爆大师x_x8 小时前
STM32_Hal库学习SPI
stm32·嵌入式硬件·学习
CC呢8 小时前
基于单片机智能鱼缸/水族箱/水产养殖系统设计
stm32·单片机·嵌入式硬件·智能鱼缸·水族箱
Cyrus_柯9 小时前
单片机(STM32-WIFI模块)
stm32·单片机·嵌入式硬件·中断·wifi模组
文火冰糖的硅基工坊11 小时前
[硬件电路-111]:滤波的分类:模拟滤波与数字滤波; 无源滤波与有源滤波;低通、带通、带阻、高通滤波;时域滤波与频域滤波;低价滤波与高阶滤波。
嵌入式硬件·架构·信号处理·电路·跨学科融合
wind_one111 小时前
小实验:按键点灯(中断法)
stm32·单片机·嵌入式硬件
Ronin-Lotus12 小时前
嵌入式硬件篇---OpenMV存储
嵌入式硬件·openmv
玄酒13 小时前
51单片机入门:矩阵键盘与简单密码锁项目
嵌入式硬件·计算机外设·51单片机