如何在自己的esp idf工程中添加ADF?

RuiyaoNi
Posts: 3
Joined: Thu Mar 02, 2023 4:07 pm

如何在自己的esp idf工程中添加ADF?

Postby RuiyaoNi » Thu Mar 02, 2023 4:17 pm

如何在现有的idf工程中添加ADF的库,并使用ADF的api。板子不是官方的开发板,不使用ADF的官方例程能不能直接添加ADF

tempo.tian
Posts: 40
Joined: Wed Jun 22, 2022 12:10 pm

Re: 如何在自己的esp idf工程中添加ADF?

Postby tempo.tian » Wed Mar 15, 2023 7:20 am

在example的CMakeLists.txt中添加ADF的components的路径就可以用ADF了
cmake_minimum_required(VERSION 3.5)

include($ENV{ADF_PATH}/CMakeLists.txt) 添加这一行
include($ENV{IDF_PATH}/tools/cmake/project.cmake)

project(bt_source_demo)

在编译前指定ADF_PATH
export ADF_PATH=.../esp-adf-internal

liuhutao
Posts: 8
Joined: Fri Nov 17, 2023 10:45 am
Location: china

Re: 如何在自己的esp idf工程中添加ADF?

Postby liuhutao » Sun Mar 17, 2024 3:59 am

好像不行啊,明明路径是正确的,但是就是有问题啊,哥们

liuhutao
Posts: 8
Joined: Fri Nov 17, 2023 10:45 am
Location: china

Re: 如何在自己的esp idf工程中添加ADF?

Postby liuhutao » Wed Mar 20, 2024 6:30 am

哥,我正确指定了,
cmake_minimum_required(VERSION 3.5)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
include($ENV{ADF_PATH}/CMakeLists.txt)
set(EXTRA_COMPONENT_DIRS
../../components
#$ENV{ADF_PATH}/components # ADF组件的路径
$ENV{IDF_PATH}/examples/common_components/protocol_examples_common # IDF的公共组
其中:ADF_PATH 已经是全局变量,没有任何问题,但是依然不能使用其中的任何组件或者库函数,我尝试:list(APPEND EXTRA_COMPONENT_DIRS
$ENV{ADF_PATH}/components
)
但是编译后组价报错,某些函数报错,idf v5.1 ,adf 最新版,所以有世道的吗?

ESP_William
Posts: 131
Joined: Tue Apr 24, 2018 5:54 am

Re: 如何在自己的esp idf工程中添加ADF?

Postby ESP_William » Thu Mar 21, 2024 11:06 am

您好,

可以参考 ADF 的 example 修改您的工程根目录下的 CMakeLists.txt,如下

Code: Select all

cmake_minimum_required(VERSION 3.5)

include($ENV{ADF_PATH}/CMakeLists.txt)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)

project(your_project)
注意事项:
1. 请检查包含了正确的头文件
2. ADF_PATH 和 IDF 环境已正确生效
3. 若出现 HINT: You are maybe using pre FreeRTOS V8.0.0 data types. The backward compatibility of such data types is no longer enabled by default. Please turn on CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY explicitly to use such data types. 提示,请修改 menuconfig 配置:Component config → FreeRTOS → Kernel → 使能 configENABLE_BACKWARD_COMPATIBILITY

若还是无法解决,请提供完整 log 和测试工程。

liuhutao
Posts: 8
Joined: Fri Nov 17, 2023 10:45 am
Location: china

Re: 如何在自己的esp idf工程中添加ADF?

Postby liuhutao » Tue Mar 26, 2024 4:20 am

感谢大佬的耐心回复,我在仔细检查后发现,在esp idf 终端中是无法正确解析出echo %ADF_PATH% 路径的,即:(idf terminal)ps:echo %ADF_PATH%,输出:%ADF_PATH%,可见esp idf 的终端并没有正确解析出%ADF_PATH%的路径,但在系统cmd 中去却能正确解析%ADF_PATH%的源路径。然后我仔细观察了能正确编译的实例项目的各种文件,如顶层文件cmakelist中,的确如您所说的:include($ENV{ADF_PATH}/CMakeLists.txt)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
即可正确编译,但是项目的其他部分并没什么不同,但在我普通的项目修改改步骤时并没有发挥作用,在应用adf compont 中的库函数依然是找不到路径的,随后我认真观察了我编译过程中项目并没有将include($ENV{ADF_PATH}/CMakeLists.txt) 中的组件添加,
编译过程如下所示,的确没有编译相关adf组件,
Attachments
test.txt
(68.88 KiB) Downloaded 511 times

Who is online

Users browsing this forum: No registered users and 15 guests