ここ
Libopencm3 interrupt table on STM32F4
この質問への答えでうまく全体の仕組みを説明したが、私が取得することは、ブロッキングハンドラで満たさ全体ベクタテーブルがあります。LibOpenCM3ベクタテーブルには、すべてのブロック・ハンドラ
私が知っているのは、それがデバッガであるからです(それ以外の点では動作しません):disassembly screenshot showing vector table。
リンカは単に例えば、私のうまく定義された割り込みハンドラ関数(複数可)を無視するかのようにそれがある:
void sys_tick_handler(void)
{
...
}
void tim1_up_isr(void)
{
...
}
を私はEmBitz IDEを使用していますが、libopencm3を動作させるために、このチュートリアルhereを踏襲している(とそれがありませんこの問題以外の作業)。
私は関数名をn倍にチェックし、libopencm3-examplesプロジェクトのものを含むいくつかのオンラインの例を試しました。
すべてがコンパイルされ、ターゲットボード(STM32F103C8)にロードされ、正常に実行されます - ISRが呼び出されない(割り込みは発生しますが、ブロッキングハンドラではスタックしません)。
なぜこのようなことが起こっているのでしょうか?
libopencm3-examplesからプロジェクトをビルドして実行するときに同じ問題が発生するのは間違いですか?もしそうなら、あなたはそれらをどのように構築していますか?対応するプロジェクトディレクトリで 'make'を実行するだけですか?どのOSを使用していますか? –
@ Sam、質問に記載されているEmBitz IDEを使用しています。私はWin 7 VMでそれを実行していますが、どのように関連する可能性があります表示されません。 EmBitzの問題だろうか? – spacer