В простейшем случае приходит в голову следующий алгоритм.
1. В командном файле линкера установить сегмент CHECKSUM не в конце адресного пространства CODE, а в конце приложения (= вместо #).
Код
-Z(CODE)CHECKSUM=0-_..X_FLASH_END
2. Собрать приложение и в map файле посмотреть где заканчивается приложение. Скорректировать стороку в командном файле линкера
Код
-Z(CODE)CHECKSUM=0-1FEBF
, т. е. вместо _..X_FLASH_END указать реальный адрес окончания приложения.
PS при пересборке нужно сначала восстановить максимальное значение, а потом снова вписать реальное.