在应用程序中使用BSP音频函数。这些都是直接从GitHub获取。当前的问题是链接器无法找到从STM32F769i_discovery_audio.c中调用的几个HAL_DFSDM函数。有一段代码……
if(HAL_OK != HAL_DFSDM_ChannelInit(&hAudioInTopLeftChannel))
{
return AUDIO_ERROR;
}
链接器报告未定义引用。但是就在同一个函数(static uint8_t DFSDMx_Init(uint32_t AudioFreq))中,仅二十行之后的这段代码
if(HAL_OK != HAL_DFSDM_ChannelInit(&hAudioInTopRightChannel))
{
return AUDIO_ERROR;
}
却没有报告错误。
这是怎么回事?链接器怎么会报告未定义引用,但在同一个函数的稍后部分出现相同的调用时却没有报告问题?
main.c是一个C++函数,但stm32f769i_discovery.h和stm32f769i_discovery_audio.h是通过以下方式包含的:
extern "c" {
#include "stm32f769i_discovery.h"
#include "stm32f769i_discovery_audio.h"
}
|
|