問題タブ [stm32f0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
stm32 - フラッシュ メモリ内のアプリケーションの後にブートローダを配置する
STM32F042k6 ボード用のブートローダーを作成しましたが、これはかなりうまく機能します。システム リセット時にブートローダーが起動され、後でアプリケーションにジャンプできます。それはすごかった:)。今度は、Flash で反対のことをしたいと思います。0x08000000 以外の開始アドレスでブートローダーを起動したいのですが、0x08007000 としましょう。リンカー スクリプトで変更を行うと、プログラムをデバッグできません。簡単に言えば、フラッシュの最後にブートローダーを配置したいと考えています。ブートローダは、常にリセット後に最初に実行されるコードであることを忘れないでください。あなたの助けとコメントを前もって感謝します これが私のリンカースクリプトです:
embedded - STM32F030F4P6 は、フラッシュから起動する場合にのみ割り込みハンドラを実行します。ブートローダーからの起動時にリセット
コード -
質問で述べたように、このコードは、フラッシュ (GND に接続された BOOT0) から直接起動すると問題なく動作しますが、ブートローダーを使用すると動作しません。割り込みが発生するとすぐに、チップがリセットされ、再びブートローダーに戻ります。どうすればこれを修正できますか?
カスタムリンカー スクリプトと大幅に変更されたboot.sを使用していることに言及する必要があります。