以前のリビジョンの文書です


注意

タイマー割り込みを実行するためにはinterrupt_handlers.cの385行目あたりを以下のように書き換えてください(HEWであればintprg.cに載っています)

void interrupt_cmt0(void); #pragma interrupt INT_CMT_CMTO void INT_CMT0_CMI0(void){

interrupt_cmt0();

}

さて、タイマー割り込みとは何でしょう。

今まで書いてきたプログラムは、上から下まで順に実行する(サブルーチンはその通り飛ぶとして)ものです。 これが出来ればライントレースも大分近くなります。 頑張りましょう!

例えれば、 -Aさんと話す→(話し終わる)→Bさんと話す というようなものです。とりあえずひとつづつ消化しなくてはいけません。 これが割り込みというシステムを使うと、 -Aさんと話す→Bさんが話しかけてくる→Aさんに待ってもらう→Bさんと話す→(話し終わる)→Aさんとの話の続きをする と言う感じになります。 プログラム的には、main文で「Aさんと会話」、割り込み文で「Bさんと会話」と言う感じです。 つまり、同時に色々なことをしたいときに良く使うものです。 例のように「Bさんが話しかけてくる」というような 何かのアプローチがあって割り込みが入る場合もありますが 今回は、時間で割り込みをかけてみたいと思います。 1sごとに指定された割り込み文を実行する、などと言うことです。 実際にやってみる

まず、時間を使って割り込む事をタイマー割り込みといいます。 タイマー割り込みをつかうには、初期設定が必要です。

Coming soon.

/home/users/2/deca.jp-mice/web/cgi/dokuwiki/data/attic/exercise4_タイマー割り込みcmt.1425071703.txt.gz · 最終更新: 2015/02/28 06:15 by member
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0