例程:Basic_Device_Firmware_Upgrade
现象:使用ModusToolbox debug DFU例程时会发现,bootloader project是可以成功debug的,但是blinky project是无法成功debug的
原因:bootloader启动时会对blinky app进行校验,但是该工程默认生成的blinky hex文件是没有校验的
解决方法:
1. 修改blinky project的makefile文件,添加以下代码:
# Custom post-build commands to run.
CY_ELF_TO_HEX_TOOL=$(MTB_TOOLCHAIN_GCC_ARM__BASE_DIR)/bin/arm-none-eabi-objcopy
POSTBUILD+=\
$(CY_TOOL_cymcuelftool_EXE_ABS) --sign $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME).elf CRC --output $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME)_crc.elf && \
$(CY_TOOL_cymcuelftool_EXE_ABS) -P $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME)_crc.elf --output $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME)_crc.cyacd2 && \
$(CY_ELF_TO_HEX_TOOL) -O ihex $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME)_crc.elf $(MTB_TOOLS__OUTPUT_CONFIG_DIR)/$(APPNAME)_crc.hex
2. 在工具栏"Run"->"Debug Configurations..."中找到该工程的debug配置的"Startup"tab
|