Почему-то не добавляется контрольная сумма в прошивку (по адресу 0x001c). В исходном файле axf тоже нет (значение 00 00 00 00). Однако при программировании через MT-link контрольная сумма прописывается правильно. Пришлось написать утилиту, считающую контрольную сумму.
Код
lpc_fix firmware.bin
Цитата
6. Criterion for Valid User Code
The reserved ARM Cortex-M3 exception vector location 7 (offset 0x0000 001C in the
vector table) should contain the 2’s complement of the check-sum of table entries 0
through 6. This causes the checksum of the first 8 table entries to be 0. The boot loader
code checksums the first 8 locations in sector 0 of the flash. If the result is 0, then
execution control is transferred to the user code.