Skip to content

自定义memuconfig菜单

  1. 创建 Kconfig.projbuild 文件 在项目的 main 目录下创建一个名为 Kconfig.projbuild 的文件。这个文件用于定义自定义的配置菜单和选项。

  2. 编写自定义配置项 在 Kconfig.projbuild 文件中,使用 Kconfig 语法定义自定义的配置项。例如:

c

menu "My Custom Configuration"

config MY_CUSTOM_OPTION
    bool "Enable my custom option"
    default y
    help
        This option enables or disables my custom feature.

config MY_CUSTOM_VALUE
    int "Set my custom value"
    range 0 100
    default 50
    help
        This is a custom value that can be set between 0 and 100.

endmenu

menu 定义了一个菜单,菜单名称为 "My Custom Configuration"。 config 定义了一个配置项,bool 表示布尔值类型,int 表示整数类型。 default 指定了默认值。 help 提供了该配置项的说明。

  1. 在代码中使用自定义配置项 在代码中,可以通过 CONFIG_ 前缀访问自定义配置项。例如:
c
#include "sdkconfig.h"

void app_main(void)
{
    if (CONFIG_MY_CUSTOM_OPTION) {
        printf("My custom option is enabled.\n");
    }

    printf("My custom value is: %d\n", CONFIG_MY_CUSTOM_VALUE);
}

CONFIG_MY_CUSTOM_OPTION 和 CONFIG_MY_CUSTOM_VALUE 是根据 Kconfig.projbuild 文件中定义的配置项自动生成的宏。 4. 编译并运行 menuconfig

运行以下命令来编译项目并启动 menuconfig:

bash
idf.py menuconfig

在 menuconfig 界面中,应该能看到自定义的菜单和配置项。这些自定义菜单的项目,在编译后,会统一放到根目录下的 sdkconfig 文件中。

注意事项 确保 Kconfig.projbuild 文件的语法正确,否则可能会导致 menuconfig 无法正常显示。 自定义配置项的名称必须是大写字母和下划线的组合。 如果需要在组件中添加自定义配置,可以在组件目录下创建 Kconfig 文件。