Hallo,
welche Fehler sollen denn erkannt werden (Einzelbitfehler oder mehr)? Im
ersteren Fall kann man eine einfache Summe über den zu sichernden
Speicherbereich bilden -> schnell und wenig Programmcode.
Sollen Mehrbitfehler erkannt werden, ist ein leistungsfähigerer Code
(z.B. CRC16/CRC32) erforderlich.
Ablauf: Nach dem Binden wird auf dem HEX-file die Checksumme mit dem
gewählten Algorithmus über den zu sichernden Bereich berechnet und an
eine der uC-SW bekannte Stelle im ROM eingetragen. Zur Laufzeit prüft
die uC-SW (einmalig/zyklisch/zu sonstwie definierten Zeitpunkten) den
selben Bereich und vergleicht mit der erstmalig ermittelten Prüfsumme.
Manche Controller haben eine eingebaute CRC-Maschine. Die muß nur
angestoßen werden und danach ist kaum SW-Interaktion erforderlich. Ob
die V850-Derivate sowas haben, weiß ich nicht. Ebenso unterstützen auch
einige Linker die Bildung von Prüfsummen. In diesem Fall müßte man kein
PC-Tool schreiben/finden/kaufen, das dies erledigt.
Gruß
Martin