This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/AWR1443BOOST:编译期间未解析的符号和链接错误

Guru**** 2589265 points
Other Parts Discussed in Thread: AWR1443

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/613003/ccs-awr1443boost-unresolved-symbols-and-linking-error-during-compiling

器件型号:AWR1443BOOST
Thread 中讨论的其他器件:AWR1443

工具/软件:Code Composer Studio

您好!

当我尝试调试 AWR1443 BOOST 时、我不断收到以下错误:

'调用:ARM 链接器'
"c:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.6.0.STS/bin/armcl -mv7R4 --code_state=32 --float_support=VFPv3D16 -me -g --diag_warning=225 --diag_wrap=off --display_error_number --enum_type=packed --abi=eabi -z -m"mmwave.map"--800_wrap_sw=-ex-rom-rom-"-line-ram_ram_swap.xml-ram_info-mode-ram_ram_ram_swap.cn"-"-"-line-ram_ram_swap.cn"-content-line-ram_ram_swap.ate-ram_line-ram_line-content-line-ram_swap.ov.ov.ov.ov.ov.xml-ram_info-mode"/ti/ccsv7/tools/compiler/ti-cgt-arm_17.6.0.STS/lib -line-ram_ram_ram_ram_line-ram_ram_line-ov.cn"-ram_line-ram_ram_swap./ti/ccsv7/tools/compiler/ti-cgt-arm_17.6.0.STS/include

未定义的首次引用
符号
------ --------
rlDevicePowerOn ./main.obj
rlSensorStart ./main.obj
rlSetAdcOutConfig ./main.obj
rlSetChannelConfig ./main.obj
rlSetChirpConfig ./main.obj
rlSetFrameConfig ./main.obj
rlSetProfileConfig ./main.obj

错误#10234-D:未解析的符号仍然存在
错误#10010:链接期间遇到错误;未构建"mmwave.out"

>>编译失败
Makefile:141:目标'mwave.out'的配方失败

我的代码是:

#include 

#include 
#include 
#include 
#include 
#include 
#include 

void ADCInit();
void ProfileInit();
void ChirpInit();
void ChannelInit();
void FrameInit();

int main (void)
{
rlClientCBs_t 回调;
rlDevicePowerOn (RL_DEVICE_MAP_级 联_1、回调);

ProfileInit();
FrameInit();
ChirpInit();
ChannelInit();
ADCInit();
rlSensorStart (RL_DEVICE_MAP_级 联_1);

}

void ChannelInit(){

rlChanCfg_t ChanCfg ={0};//通道配置
rlSetChannelConfig (RL_DEVICE_MAP_级 联_1、&ChanCfg);
ChanCfg.rxChannelEn = 15;//启用4个 RX 通道
ChanCfg.txChannelEn = 7;//启用3个 TX 通道
ChanCfg.cascading = 0;//不需要级联

}

void ADCInit(){

rlAdcOutCfg_t adcOutCfg ={0};// ADC 配置
rlSetAdcOutConfig (RL_DEVICE_MAP_级 联_1、&adcOutCfg);
adcOutCfg.fmt.bitFormat.b2AdcBits = 0b10;// 16位 ADC
adcOutCfg.fmt.bitFormat.b2AdcOutFmt = 0b00;//为 ADC 使用实数输出,而使用01将过滤图像频带

}

void FrameInit(){

rlFrameCfg_t frameCfg;// FMCW 帧配置
rlSetFrameConfig (RL_DEVICE_MAP_级 联_1、&frameCfg);
frameCfg.chirpStartIdx = 0;
frameCfg.chirpEndIdx = 1;
frameCfg.numLoops = 32;
frameCfg.numFrames = 0;//无限
frameCfg.framePeriodicity = 4000000;//每帧之间20msec
frameCfg.triggerSelect = 1;//SW API 触发
frameCfg.frameTriggerDelay = 0;

}

void ProfileInit(){

rlProfileCfg_t profCfg ={0};//配置一个配置文件
rlSetProfileConfig (RL_DEVICE_MAP_级 联_1、1U、&profCfg);
//profCfg.profileId = 0;
profCfg.startFreqConst = 0x558E38E3;//77GHz
profCfg.idleTimeConst = 700;//两个连续线性调频脉冲之间的时间
profCfg.adcStartTimeConst = 300;//线性调频脉冲中的时间点要对要由 HWA 处理的数据进行采样
profCfg.rampEndTime = 5800;
profCfg.freqSlopeConst = 0x580;// 68MHz/u 秒
profCfg.numAdcSamples = 225;
profCfg.digOutSampleRate = 4500;
profCfg.rxGain = 30;// 30dB
//profCfg.txOutPowerBackoffCode = 0;
}

void ChirpInit(){

rlChirpCfg_t chirpCfg[2U];//初始化并使用2个线性调频脉冲
rlSetChirpConfig (RL_DEVICE_MAP_级 联_1、2U、线性调频脉冲配置);
啁啾 Cfg[0].chirpStartIdx = 0;
啁啾 Cfg[0].chirpEndIdx = 0;
啁啾 Cfg[0].profileID = 0;
啁啾 Cfg[0].txEnable = 0;//在通道 TX0上发送

啁啾 Cfg[1].chirpStartIdx = 1;
啁啾 Cfg[1].chirpEndIdx = 1;
啁啾 Cfg[1].profileID = 0;
啁啾 Cfg[1].txEnable = 4;//在通道 TX2上传输

}

请就此问题提供任何帮助。

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Saad、

    rlxxxx 函数是毫米波 API 的一部分、可在 libmmwave_xwr14xx.aer4f 中使用。 我在您提供的链接器输出中看不到该库的链接。 您需要在项目的链接器选项中包含库及其搜索路径(C:\ti\mmwave_sdk_01_00_00_05\packages/ti\control\mmwave\lib)。  

    您还需要包括其他库、例如驱动程序(SPI、Pinmux、邮箱、adcbuf 等)和其他所需组件。 请参阅1443 OOB Demo makefile 文件、获取项目中需要包含的库和搜索路径的完整列表。 以下是 C:\ti\mmwave_sdk_01_00_00_05\packages/ti\demo\xwr14xx\mmw 中 MMw.mak 的库和相应搜索路径的完整列表

    ############################################################################################################################
    #构建演示所需的其他库:
    ##########################################################################################################################
    MMW_DEMOD_STD_libs =$(R4F_common_STD_LIB)\
    -llibpinmux_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT)\
    -llibcrc_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibuart_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibmailbox_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibmmwavelink_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT)\
    -llibmmwave_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibadcbuf_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibdma_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibgpio_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibedma_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibcli_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)\
    -llibhw_$(MMWAVE_SDK_DEVICE_TYPE)。$(R4F_LIB_EXT)

    MMW_DEMOD_LOC_LIB =$(R4F_COMON_LOC_LIB)\
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/pinmux/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/uart/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/crc/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/mailbox/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/adcbuf/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/dma/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/gpio/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/edma/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/hwa/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/control/mmwavelink/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/utils/cli/lib \
    -i$(MMWAVE_SDK_INSTALL_PATH)/ti/control/mmwave/lib

    或者、如果您的是 CCS 项目、您可以在 http://dev.ti.com/tirex/#/?link=Software%2FmmWave%20Training%2FDemos%2FmmWave%20SDK%20Demo%20-%2014xx 上查看 TI Resource Explorer 上提供的1443 OOB Demo CCS 项目。 有关如何在 CCS 中下载和导入工程的说明、请参阅工程随附的安装指南。

    谢谢

    尼廷

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您解决了问题!