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.

[参考译文] CC2652R7:向现有应用添加片外 OAD 无法构建。

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1474581/cc2652r7-adding-offchip-oad-to-existing-application-fails-to-build

器件型号:CC2652R7
主题中讨论的其他器件:CC2650SYSBIOS、、SysConfig

工具与软件:

您好!

我按照 BLE5堆栈培训模块(低功耗蓝牙增强无线下载(OAD)高级)中的指南向现有应用添加片外 OAD 功能。 在完成教程中的所有步骤后、我收到如下的构建错误:

Building target: "multi_role_LP_CC2652R7_test1.out"
Invoking: Arm Linker
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-armllvm_3.2.2.LTS/bin/tiarmclang.exe" @"C:/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/ble5stack/config/build_components.opt" @"C:/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/ble5stack/config/factory_config.opt"  -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mlittle-endian -mthumb -Oz -DSECURITY -DFLASH_ROM_BUILD -DNVOCMP_NWSAMEITEM=1 -DHEAPMGR_CONFIG=0x80 -DHEAPMGR_SIZE=0x0 -gdwarf-3 -march=armv7e-m -Wl,-m"multi_role_LP_CC2652R7_test1.map" -Wl,-i"C:/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source" -Wl,-i"C:/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages" -Wl,-i"C:/Users/royce/workspace_v12/multi_role_LP_CC2652R7_test1/Release/syscfg" -Wl,-i"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-armllvm_3.2.2.LTS/lib" -Wl,--reread_libs -Wl,--define=FLASH_ROM_BUILD=2 -Wl,--define=OAD_IMG_E=1 -Wl,--define=SECURITY -Wl,--diag_suppress=16002-D -Wl,--diag_suppress=10247-D -Wl,--diag_suppress=10325-D -Wl,--diag_suppress=10229-D -Wl,--diag_suppress=16032-D -Wl,--diag_wrap=off -Wl,--display_error_number -Wl,--warn_sections -Wl,--xml_link_info="multi_role_LP_CC2652R7_test1_linkInfo.xml" -Wl,--rom_model -o "multi_role_LP_CC2652R7_test1.out" "./bim_util.o" "./syscfg/ti_ble_config.o" "./syscfg/ti_devices_config.o" "./syscfg/ti_radio_config.o" "./syscfg/ti_drivers_config.o" "./syscfg/ti_sysbios_config.o" "./Application/board_key.o" "./Application/multi_role.o" "./Application/multi_role_menu.o" "./Application/two_btn_menu.o" "./Drivers/NV/crc.o" "./Drivers/NV/nvocmp.o" "./OAD/crc32.o" "./OAD/flash_interface_ext_rtos_NVS.o" "./OAD/oad.o" "./OAD/oad_image_header_app.o" "./Profiles/devinfoservice.o" "./Profiles/simple_gatt_profile.o" "./Startup/main.o" "./Startup/osal_icall_ble.o" "./Startup/rom_init.o" "./common/Util/util.o" "./iCall/icall.o" "./iCall/icall_cc2650.o" "./iCall/icall_user_config.o" "./iCallBLE/ble_user_config.o" "./iCallBLE/ble_user_config_stack.o" "./iCallBLE/icall_api_lite.o" "../cc13x2x7_cc26x2x7_app_tirtos7.cmd"  -Wl,-lti_utils_build_linker.cmd.genlibs -Wl,-llibc.a 
makefile:179: recipe for target 'multi_role_LP_CC2652R7_test1.out' failed
 
 undefined                            first referenced            
  symbol                                  in file                 
 ---------                            ----------------            
 ti_sysbios_gates_GateMutex_construct ./syscfg/ti_sysbios_config.o
 ti_sysbios_gates_GateMutex_enter     ./syscfg/ti_sysbios_config.o
 ti_sysbios_gates_GateMutex_leave     ./syscfg/ti_sysbios_config.o

我正在关注的教程是: https://dev.ti.com/tirex/explore/node?node=A__AdzaR5YxHU3-EzX70EuRBg__com.ti.SIMPLELINK_ACADEMY_CC13XX_CC26XX_SDK__AfkT0vQ__LATEST

我能够在 Launchpad 上构建和运行片上 OAD 项目。 但针对片外项目始终会收到此错误。

当我在 init 函数中注释掉对 OAD_open()的调用时、该错误就会消失。

请帮我解决这个问题。

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

    您好!

    感谢您联系我们。 只是为了确认、您是否已将 OAD 符号添加到新工程中?

    此致、

    1月

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

    您好!  

    您还能否提供您使用的 CCS 和 SDK 版本?

    此致、
    Tarek

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

    是的、我已经添加了培训模块中提到的预定义符号。

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

    尊敬的 Tarek:

    CCS 版本为12.8.1.00005、SDK 版本为8.30.01.01。  

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

    你好、Royce、

    感谢您的耐心等待! 请尝试通过 SysConfig 添加一个 GateMutex。 我附上了一个屏幕截图、其中显示了应在 SysConfig 文件中的何处配置该设置。 这应该能解决您的问题。



    此致、
    Tarek

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

    尊敬的 Tarek:

    非常感谢您的支持。 这样就解决了问题。

    此致、

    Royce