IAR で STM32F100 バリュー ライン プロセッサを使用しています。未使用のコード メモリを Reset_Handler (または HardFault_Handler) へのジャンプで埋めたいと思います。IAR を使用してこれを行うにはどうすればよいですか?
質問する
2210 次
2 に答える
3
ほとんどのhexファイル ジェネレーターは、要求があればメモリをいっぱいにします。おそらく IDE 内でそれを行うことができます。
ただし、未使用のフラッシュを空白 (0xffff) のままにしておくと、無効な命令例外が生成され、イメージ サイズが最小化されます。
リセット ハンドラへのジャンプは、リセットの実行と同じではないことに注意してください。ハードウェアの状態は非決定論的です。おそらくより良い方法は、ウォッチドッグを有効にして、メモリをB .
(自己への分岐) 0xE7FE で満たすことです。ウォッチドッグはタイムアウトし、真のリセットを作成します。
于 2013-11-07T12:16:19.013 に答える
1
Embedded Workbench を使用していると仮定すると、[Project Options] -> [Linker] カテゴリの下に、未使用のメモリを埋めたり、メモリのチェックサムを計算したりするオプションを含む [Checksum] タブがあります。ハンドラアドレスでメモリを埋める必要があります。迷子の実行をトラップしたい場合は、メモリ保護ユニットが適しています。
于 2013-11-06T22:12:00.313 に答える