你好,
试图在SmartSnippet Studio(v2.0.7.1335)中编译的项目,克隆项目是DK_APPS /功能/ BLE_PERITERAL。
所有工作都很棒,但在我的一个文件中我有一个语句[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文件中的语句中,我甚至看到包含文件中的定义。
对何处寻找/如何解决此问题的任何建议?
sdk = da1468x_da15xxx_sdk_1.0.14.1081
谢谢。
设备:
嗨myken,
您是否创建了SPI_DEVICE对象如下?
spi_device dev = ad_spi_open(myname);
请尝试一下,让我知道。
此外,我强烈建议你看看SPI适配器概念来自我们的支持门户的教程。
谢谢,PM_DIALOG.
是的,我做到了:
忘了第一部分复制。
基本上,软件就是Works和运行,即我编译和链接它使用普通的makefiles并测试它(工作正常)。
现在我试着在SmartSnippets工作室里工作相同的项目。除了这一部分,一切都很好。
因此,SmartSnippets Studio项目设置中可能存在问题。
如果我这样做(在my_platform_devices.h):
在编译文件(my_spi_file.c中)使用spi_device dev = ad_spi_open(myname)期间收到错误;
错误:'myname'未删除(在此函数中首次使用)
如果我将其更改为:
我没有收到编译器错误,但链接错误
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文件我在“大纲”选项卡myname:const void * const中,不知道这是否意味着什么。
我的代码看起来与“代码”相同“5.代码概述“从您参考的教程(MyName ISO Echo_Loop)。
编译/链接订单有问题?忘了勾选一个盒子?
谢谢。
嗨myken,
谢谢你的意见。让我检查并尝试复制您的问题,我会尽快回复您。
谢谢,PM_DIALOG.
没关系,只是(3分钟前)找到了解决方案。
结果,我的platform_devices.h文件不在我(克隆)项目的Config子目录中。与makefiles并不重要,显然在smartsnpets中是。
嗨myken,
很高兴你识上你的问题,谢谢你的迹象。
问候,pm_dialog