在调试含bootloader的app程序时,往往由于程序分部在两个区域,用Keil MDK无法联合调试,需要一个个程序单独调试,然后再修改app配置,下载运行完成的固件。其实只需简单配置下,就可以实现bootloader及app的联合调试了。
MDK版本:V5.27.1.0
硬件平台:STM32F407VGTx
首先存在两个工程app、bootloader,它俩的flash排布如下
app的flash起始及结束地址:
#define APP_FLASH_START_ADDRESS 0x8008000
#define APP_FLASH_END_ADDRESS 0x80FFFFF
bootloader的flash起始及结束地址:
#define BOOT_FLASH_START_ADDRESS 0x8000000
#define BOOT_FLASH_END_ADDRESS 0x8007FFF
bootloader的配置如下:
修改bootloader的flash起始地址及占用的大小
app的配置如下:
修改app的flash的起始地址及占用的大小
当然app部分的程序要设置好向量表的偏移
做完以上配置后,只需分别下载bootloader及app程序及调试任一个程序了。
本文暂时没有评论,来添加一个吧(●'◡'●)