Thread 中讨论的其他器件:SYSBIOS、 CC2650
大家好、
客户使用 ti-cgt-armllvm_2.1.2.sts/bin/tiarmhex.exe 编译的 bin 在刷写后无法正确启动、编程的十六进制文件正常。 日志如下:
Building target: "arryve_CC26X2R1_tirtos7_ticlang.out" Invoking: Arm Linker "C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmclang.exe" @"E:/djt/arryve_CC26X2R1_tirtos7_ticlang_2023/Release/syscfg/ti_ble_app_config.opt" @"E:/djt/arryve_CC26X2R1_tirtos7_ticlang_2023/Release/syscfg/ti_build_config.opt" @"C:/ti/simplelink_cc13xx_cc26xx_sdk_6_40_00_13/source/ti/ble5stack/config/build_components.opt" @"C:/ti/simplelink_cc13xx_cc26xx_sdk_6_40_00_13/source/ti/ble5stack/config/factory_config.opt" -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mlittle-endian -mthumb -Oz -DDeviceFamily_CC26X2 -DFLASH_ROM_BUILD -DNVOCMP_NWSAMEITEM=1 -DHEAPMGR_CONFIG=0x80 -DHEAPMGR_SIZE=0x0 -gdwarf-3 -march=armv7e-m -Wl,-m"arryve_CC26X2R1_tirtos7_ticlang.map" -Wl,-i"C:/ti/simplelink_cc13xx_cc26xx_sdk_6_40_00_13/source" -Wl,-i"C:/ti/simplelink_cc13xx_cc26xx_sdk_6_40_00_13/kernel/tirtos7/packages" -Wl,-i"E:/djt/arryve_CC26X2R1_tirtos7_ticlang_2023/Release/syscfg" -Wl,-i"C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/lib" -Wl,--reread_libs -Wl,--define=FLASH_ROM_BUILD=2 -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="arryve_CC26X2R1_tirtos7_ticlang_linkInfo.xml" -Wl,--rom_model -o "arryve_CC26X2R1_tirtos7_ticlang.out" "./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" "./Application/util.o" "./Application/yk_gatt_server_app.o" "./Communication/yk_comm_queue_task.o" "./Communication/yk_comm_task.o" "./Communication/yk_uart.o" "./Drivers/NV/crc.o" "./Drivers/NV/nvocmp.o" "./ICCE/Crc16/crc16_ccit.o" "./ICCE/yk_command_hadler.o" "./Profiles/arryve_profile/cc26xx/yk_ble_gatt_service.o" "./Profiles/dev_info/cc26xx/devinfoservice.o" "./SDK/ti/ble5stack/icall/app/ble_user_config.o" "./SDK/ti/ble5stack/icall/app/icall_api_lite.o" "./SDK/ti/ble5stack/icall/src/icall.o" "./SDK/ti/ble5stack/icall/src/icall_cc2650.o" "./SDK/ti/ble5stack/icall/src/icall_user_config.o" "./SDK/ti/ble5stack/icall/stack/ble_user_config_stack.o" "./SDK/ti/ble5stack/rom/agama_r1/common_rom_init.o" "./SDK/ti/ble5stack/rom/agama_r1/rom_init.o" "./Startup/main.o" "./Startup/osal_icall_ble.o" "./custom/arryve_cc2642_golble.o" "./custom/yk_sleep.o" "./custom/uartlog/CustomUartLog.o" "../cc13x2_cc26x2_app_tirtos7.cmd" -Wl,-lti_utils_build_linker.cmd.genlibs -Wl,-l"ti/devices/cc13x2_cc26x2/driverlib/bin/ticlang/driverlib.lib" -Wl,-llibc.a Finished building target: "arryve_CC26X2R1_tirtos7_ticlang.out" Building secondary target: "arryve_CC26X2R1_tirtos7_ticlang.bin" Building secondary target: "arryve_CC26X2R1_tirtos7_ticlang.hex" Invoking: Arm Hex Utility "C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmhex.exe" --diag_wrap=off --binary -o "arryve_CC26X2R1_tirtos7_ticlang.bin" "arryve_CC26X2R1_tirtos7_ticlang.out" Invoking: Arm Objcopy Utility "C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmobjcopy.exe" "arryve_CC26X2R1_tirtos7_ticlang.out" "arryve_CC26X2R1_tirtos7_ticlang.hex" Translating to Binary format... "arryve_CC26X2R1_tirtos7_ticlang.out" .resetVecs ==> .resetVecs "arryve_CC26X2R1_tirtos7_ticlang.out" .rodata.1 ==> .rodata.1 "arryve_CC26X2R1_tirtos7_ticlang.out" .text ==> .text "arryve_CC26X2R1_tirtos7_ticlang.out" .rodata.2 ==> .rodata.2 "arryve_CC26X2R1_tirtos7_ticlang.out" .cinit ==> .cinit "arryve_CC26X2R1_tirtos7_ticlang.out" .ccfg ==> .ccfg Finished building secondary target: "arryve_CC26X2R1_tirtos7_ticlang.bin" Finished building secondary target: "arryve_CC26X2R1_tirtos7_ticlang.hex"
以下两个命令生成的 bin 文件之间有何区别? 为什么命令1生成的 bin 文件不能正确刻录?
:1 μ s
"C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmhex.exe "--diag_wow=off -二进制-o simple_peripheral_CC26X2R1_LAUNCHXL_tirtos7_ticlang.bin" simple_peripheral_CC26X2R1_LAUNCHXL_tirtos7_ticlang.out"
//在同一代码中,此命令生成的二进制大小为137KB,芯片在烧录后无法正确启动。
命令2:
C:/ti/ccs1220/ccs/utils/tiobj2bin/tiobj2bin array_CC26X2r1_tirtos7_ticlang.out arryve_CC26X2R1_tirtos7_ticlang.bin C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmofd C:/ti/ccs1220/ccs/tools/compiler/ti-cgt-armllvm_2.1.2.LTS/bin/tiarmhex C:/ti/ccs1220/ccs/utils/tiobj2bin/mkhex4bin
//在同一个代码中,此命令生成大于十六进制文件大小352KB 的 bin 文件,此文件在文件烧录后正常开始。
谢谢。
此致、
樱桃