Простой ответ:
Это невозможно.
Почему?
Если бы микроконтроллер имел такую функцию, он не смог бы ничего сделать, кроме простого добавления все байты в памяти Fla sh.
Если в памяти Fla sh есть ошибки, будет вычислена та же неверная контрольная сумма, которую вы вычислили. Вы бы сравнили неверную контрольную сумму с неправильной контрольной суммой микроконтроллера и обнаружили бы, что они идентичны.
Что делать вместо этого?
В автомобильной промышленности вы вычислите контрольную сумму перед записью программы память Fla sh (например, вы используете файл HEX для вычисления контрольной суммы).
Затем вы записываете вычисленную вами контрольную сумму в память Fla sh микроконтроллера. Конечно, при вычислении контрольной суммы вы должны оставить область памяти, в которой хранится сама контрольная сумма.
Чтобы выполнить проверку, вы вычисляете контрольную сумму по памяти Fla sh (на микроконтроллере) и сравните ее с контрольной суммой, которую вы рассчитали перед записью программы в память Fla sh.