Checksumme für das Flash ermitteln und erzeugen.

Hallo,
für eine Anwendung muss ich sicher gehen das der Sketch im Arduino sich nicht verändert hat. Dafür möchte ich eine Checksummer verwenden. Aber wie mache ich das mit dem Arduino? Es gibt keinen Befehl um den Flash Speicher auszulesen. Get das fileicht über ASM, sofern die IDE das unterstützt.
Bin für jede Info dankbar.
Gruss TFT

temucin:
Hallo,
für eine Anwendung muss ich sicher gehen das der Sketch im Arduino sich nicht verändert hat. Dafür möchte ich eine Checksummer verwenden. Aber wie mache ich das mit dem Arduino? Es gibt keinen Befehl um den Flash Speicher auszulesen. Get das fileicht über ASM, sofern die IDE das unterstützt.
Bin für jede Info dankbar.
Gruss TFT

Das kannst du automatisieren!

Die Hexdatei findet sich im Build Ordner.
In der Build Prozedur kannst du einen Hook einhängen.

Das Programm welches du da aufrufst, muss die Hexdatei lesen, die Prüfsumme bilden, und sie in die Hex eintragen.
Am besten am oberen Ende des Flash.

Es gibt keinen Befehl um den Flash Speicher auszulesen.

Das ist nicht wahr!
Es gibt keinen Menupunkt, aber AVR Dude kann das.

Natürlich kann ein AVR sein Flash lesen!
z.B. pgm_read_byte()
Und damit kannst du im laufenden Betrieb die Checksumme prüfen.

Hallo,
Die Arduino IDE hat jedenfals kein Problem mit dieser Zeile

b == pgm_read_byte(0) ;

daraus entnehme ich das es grundsätzlich funktionieren sollte. Danke für den Tip.