Ich habe ein Bootloader-Image für meinen STM32 erstellt und es in einem bestimmten Bereich des Speichers gespeichert. Ich habe ein neues Keil-Projekt, das die Anwendungsschicht darstellt. Standardmäßig generiert Keil eine HEX-Datei. Was ich tun möchte, ist, das Bootloader-Image beizubehalten und die Anwendungsschicht in einem anderen Bereich im Speicher zu flashen. Die endgültige FW überprüft einen GPIO-Eingang. Wenn es sich auf einem hohen Level befindet, wird das Bootloader-Image gestartet und die Anwendungsschicht mit einem neuen Image aktualisiert, andernfalls (der GPIO-Eingang befindet sich auf einem niedrigen Level) Der normale Modus wird aktiviert und die Anwendung wird ausgeführt. Meine Frage ist:
Beachten Sie, dass Sie Ihre Binärdatei möglicherweise mit einer Prüfsumme signieren möchten. Der Armlinker kann dies nicht. Aber Sie können dies mit SRecord tun . (auch Regionen entfernen/konvertieren)
Ich bin mit der Keil-Toolchain nicht vertraut, daher kann ich nur allgemeine Antworten geben, deren Einzelheiten Sie in Ihrem Toolchain-Handbuch recherchieren müssen.
krambo