SmartSnippets Studio中的ad_spi_open(NAME)给出了未定义的引用

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
6个员额/ 0个新员额
最后发表
Myken
离线
最后看到:2年2个星期前
加入:2016-07-13 20:06
SmartSnippets Studio中的ad_spi_open(NAME)给出了未定义的引用

你好,

试图在SmartSnippets Studio (v2.0.7.1335)中编译一个项目,克隆的项目是dk_apps/features/ble_peripheral。

所有的工作都很好,但在我的一个文件中,我有一个声明[dev = ad_spi_open(MYNAME)]

编译器报错一个未定义的错误引用'MYNAME'

该项目包含一个包含文件my_platform_devices.h,其中有这样的语句:

SPI_BUS (SPI1)
Spi_slave_device (spi1, myname, hw_gpio_port_3, hw_gpio_pin_2, hw_spi_word_8bit,
Hw_spi_pol_low, hw_spi_pha_mode_0, hw_spi_freq_div_8,0);
SPI_BUS_END

如果我将鼠标悬停在c文件中的语句上,我甚至可以在include文件中看到定义。

你有什么建议吗?

SDK = DA1468x_DA15xxx_SDK_1.0.14.1081

谢谢。

设备:
PM_Dialog
离线
最后看到:1天1小时前
工作人员
加入:2018-02-08 11:03
嗨Myken,

嗨Myken,

您是否像下面这样创建了一个spi_device对象?

sp_device = ad_sp_open (MYNAME);

请试试这个,让我知道。

同时,我强烈建议你去看一看SPI适配器的概念教程来自我们的支持门户。

谢谢,PM_Dialog

Myken
离线
最后看到:2年2个星期前
加入:2016-07-13 20:06
是的,我做了:

是的,我做了:

spi_device开发;dev = ad_spi_open(MYNAME);

第一部分忘记抄了。

基本上软件是工作和运行,那是我编译和链接它使用普通的makefiles和测试它(工作正常)。
现在我尝试着让同样的项目在SmartSnippets Studio中运行。除了这部分,其他都很好。
所以smarnippets Studio的项目设置可能有问题。

如果我这样做(在my_platform_devices.h中):

Spi_bus (spi1) spi_slave_device (spi1, myothername, hw_gpio_port_3, ......

我得到一个错误编译文件(my_spi_file.c)与spi_device dev = ad_spi_open(MYNAME);
错误:'MYNAME'未声明(第一次在这个函数中使用)

如果我把它改成:

Spi_bus (spi1) spi_slave_device (spi1, myname, hw_gpio_port_3, ......

我得到的不是编译错误,而是链接错误
my_spi_file。o:在函数'my_function':
my_spi_file.c:xxx:未定义的MYNAME引用

我可以看到sdk/adapters/scr/ad_spi.c文件被编译(有.o和.d文件)
我包含了ad_spi.h文件。

如果我打开my_platform_devices.h文件,我在"outline"标签中看到MYNAME: const void* const,我不知道这是否意味着什么。

我的代码看起来和"5.代码概述从你参考的教程(MYNAME iso ECHO_LOOP)。

编译/链接顺序有问题??忘记打勾了?

谢谢。

PM_Dialog
离线
最后看到:1天1小时前
工作人员
加入:2018-02-08 11:03
嗨Myken,

嗨Myken,

谢谢你的建议。让我检查一下,试着复制你的问题,我会尽快给你答复。

谢谢,PM_Dialog

Myken
离线
最后看到:2年2个星期前
加入:2016-07-13 20:06
不要紧,只要(3分钟)

没关系,只是(3分钟前)找到了解决方案。
结果,我的platform_devices.h文件不在我(克隆的)项目的config子目录中。对于makefile来说,这并不重要,但在SmartSnippets中显然很重要。

PM_Dialog
离线
最后看到:1天1小时前
工作人员
加入:2018-02-08 11:03
嗨Myken,

嗨Myken,

很高兴你把问题解决了,谢谢你的暗示。

问候,PM_Dialog