PSoC6的DFU例程是个双核例程,包含一个CM0 project(bootloader)和一个CM4 project(application). 通常情况下,该例程的正常使用步骤是:
使用ModusToolbox或者mtb-programmer将bootloader的hex文件烧写到芯片中,然后使用MTB提供的DFU Host Tool将生成的 blinky_cm4_crc.cyacd2 升级到芯片中。
但是往往大家很习惯使用MTB debug CM4工程,此时发现该例程在debug时无法正常进去main。原因是:
该例程生成的blinky_cm4.hex不包含crc校验,若在debug时直接使用这个hex,bootloader启动后会进行crc校验,发现校验不通过,就无法正常跳转到CM4中。
如何修改:
我们需要修改CM4工程的makefile,生成一个包含crc校验的hex文件,使用这个文件去debug:
1. 在CM4的makefile中添加以下命令
2. 在Debug configuration中进行以下修改
经过以上修改以后,先使用mtb-programmer将bootloader.hex烧写到芯片中,然后就可以正常使用MTB debug CM4工程了。
|