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

相关推荐
Lester_11015 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元5 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133975 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315205 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
Alaso_shuang5 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
脚后跟5 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_918126915 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
星马梦缘5 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动
小刘爱玩单片机5 天前
【stm32简单外设篇】- 测速传感器模块(光电)
c语言·stm32·单片机·嵌入式硬件
电化学仪器白超5 天前
EC20CEHDLG-128-SNNS调试记录
python·单片机·嵌入式硬件·自动化