Stlink: [Feature] Prüfsummen für Flash-Operationen berechnen

Erstellt am 24. Feb. 2020  ·  13Kommentare  ·  Quelle: stlink-org/stlink

Hallo,

Gibt es eine Möglichkeit, die Prüfsumme aus einer Binärdatei zu erhalten? wie das st-link-tool unter windows hat? Ich möchte zwei auf meinem Computer erstellte Binärdateien mit einer Standarddatei vergleichen.

codfeature-request componenst-flash generadocumention staturesolved

Alle 13 Kommentare

Meinst du eine Prüfsumme des Speichers auf dem Gerät? Und das mit einer Datei auf Ihrem Computer vergleichen?

Ich dachte an eine Binärdatei, in meinem Anwendungsfall hatte ich Probleme mit einer auf meinem Computer kompilierten und heruntergeladenen Binärdatei, der Quellcode war der gleiche, aber die Binärdateien stimmten nicht überein, ich habe eine neuere Toolchain verwendet, also die neue Binärdatei war beschädigt

Beim st-link-Tool berechnet ti beim Laden einer Binärdatei eine Prüfsumme, also habe ich das verwendet, um herauszufinden, wann ich die richtige Toolchain hatte

https://i.ibb.co/5TS7twF/figure.png

Ah okay. Diese Tools tun dies nicht für Sie, wie es steht. Unter Windows kann ich den HxD-Hex-Editor empfehlen, um eine Binärdatei zu überprüfen (oder einfach zwei Binärdateien schnell zu vergleichen). Sind Sie auf Windows?

@vitormhenrique : Leider kann ich den Inhalt des von dir verlinkten Bildes nicht lesen, da die Auflösung dafür zu niedrig ist. Können Sie einen größeren Screenshot oder ein relevantes Detail davon einfügen?

keine ahnung warum das bild so klein war....

https://i.ibb.co/mq8vvpP/pic.png

Ich verstehe - also suchen wir hier eigentlich nach einer Feature-Anfrage.
Der Flashloader überprüft die Integrität des geflashten Inhalts hinter den Kulissen, daher gehe ich davon aus, dass diese Funktionalität erweitert werden kann. Es will unbedingt angeschaut werden.

Wenn keine speziellen Algorithmusbeschränkungen angegeben werden, ist es meiner Meinung nach ziemlich einfach, einen Prüfsummenalgorithmus (md5, sha256 usw.) in den Dateiladeprozess zu integrieren. Vielleicht kann ich es mal ausprobieren, wenn ich frei bin.

Das Dienstprogramm stlink (das im Capture) definiert die Prüfsumme in seiner Dokumentation (UM0892) als einfache arithmetische Summe, gekürzt auf 32bit ... (seufz)

Speicherprüfsumme
Berechnet den Prüfsummenwert einer angegebenen Speicherzone definiert durch die
Adress- und Größenfelder im Bereich Speicheranzeige des Hauptfensters.
Die Prüfsumme wird basierend auf einem arithmetischen Summenalgorithmus berechnet, Byte pro
Byte. Das Ergebnis wird auf ein 32-Bit-Wort gekürzt.
Der Prüfsummenwert wird im Protokollfenster angezeigt

Dies ist zwar ziemlich grob und nicht wirklich zuverlässig, aber es ist billig zu implementieren und die Aufrechterhaltung der "Kompatibilität" mit st-utility wäre schön.

@grevaillot Vielen Dank für Ihre Informationen, ich werde dies in meiner PR unterstützen.

Sollten wir dazu in unserem Tutorial eine Dokumentation haben?

Der Algorithmus, der von STs Windows-Programm verwendet wird, benötigt möglicherweise eine Dokumentation, zumindest für Entwickler, denke ich.

Ok, kannst du dann unserem Tutorial einen Abschnitt mit ein paar Zeilen hinzufügen (am Ende des überprüften Teils)? Das wäre nett. Kümmere dich dort aber nicht zu sehr um die Formatierung, da ich sowieso noch an diesem Dokument arbeite...

Ich frage mich immer noch, ob die beiden Methoden alle zusammengeführt werden sollten.
Wenn ja, muss ich möglicherweise die beiden Funktionen für ein besseres Format anpassen. Die aktuellen beiden Commits würden eine etwas zu ausführliche Ausgabe verursachen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen