質問: PIC24FのブートローダについてAN1157というサンプルを使って勉強しながら実装を試みております。 今までブートローダを使ったプログラムを経験したことがないのでよく理解できずに困っております。 ブートローダを組み込み際、ベクタテーブルを再配置するのはなぜか教えてください。
回答: ベクタテーブルというのは、リセット、割り込み、(あるいは例外発生)のときに、どこのアドレスから実行を行うか決めるテーブルです 出来合いのコードであるなら、出来合いのブートローダを出来合いの場所に配置するので、決め打ちした出来合いのベクタテーブルを持ってくればそれですみます。 が、ユーザが独自にブートローダを書くとなると、どこに配置するのかはユーザ次第となってしまいます。 そのため、出来合いのベクタテーブルは使えなくなるので、ユーザがそれを用意する必要があります