我有一个奇怪的问题。我正在尝试将 Nordic Semiconductors 外围设备示例中的 spi 模块与 Central BLE Uart 项目集成。
所有示例都有一个组件库。所以我所做的就是将 spi_slave 文件nrf_drv_spis.c添加到我的项目中,并将该组件的路径添加到项目的预处理器路径中。
$PROJ_DIR$\..\..\..\..\..\..\..\components\drivers\nrf_spi_slave
在我的预处理器路径中,这就是nrf_drv_spis.c和nrf_drv_spis.h 所在的位置。
但是,当我编译代码时,出现此错误
Error[Li005]: no definition for "nrf_drv_spis_init" [referenced from D:\Repo\ble_projects\nRF5_SDK_12.3.0\examples\ble_central\ble_app_uart_c\pca10028\s130\iar\_build\main.o]
nrf_drv_spis_init 是在nrf_drv_spis.c中找到的函数,原型在nrf_drv_spis.h中。奇怪的是,当我右键单击 nrf_drv_spis_init 并“转到定义”时,它总是将我带到头文件中的原型。通常,IAR 会向我显示函数的原型或定义,我需要单击声明或原型。
所以它确实告诉我,无论出于何种原因,文件nrf_drv_spis.c似乎不在项目中,但我不知道如何解决这个问题。
任何帮助,将不胜感激。谢谢。