📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 400行目: | 400行目: | ||
== サンプルコード == | == サンプルコード == | ||
以下の例では、タイマA0 CCR0の比較一致割り込み (CCR0の割り込みサービスルーチン) により、LEDを1秒ごとにトグルしている。<br> | |||
<br> | |||
タイマA0の設定を以下に示す。<br> | |||
* CCR0の比較一致割り込みを有効する。 | |||
* CCR0に <math>32768 - 1</math> を設定して、1秒間隔で割り込みが発生するように設定する。 (ACLKは、32.768[kHz]) | |||
* タイマA0のクロックソースをACLKに設定して、アップモードで動作させる。 | |||
<br> | |||
<syntaxhighlight lang="c"> | <syntaxhighlight lang="c"> | ||
#include <msp430.h> | #include <msp430.h> | ||
| 429行目: | 436行目: | ||
P1OUT ^= LED_PIN; // LEDの状態を切り替え | P1OUT ^= LED_PIN; // LEDの状態を切り替え | ||
} | } | ||
</syntaxhighlight> | |||
<br> | |||
また、Timer_A3モジュールのタイマA0を使用する場合、Timer_A3モジュールの割り込みベクトル名は<code>TIMER0_A1_VECTOR</code>であるため、割り込みベクトル名を変更する必要がある。<br> | |||
したがって、変更点は、割り込みサービスルーチンの宣言部分のみとなる。<br> | |||
<syntaxhighlight lang="c"> | |||
#pragma vector=TIMER0_A1_VECTOR | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<br><br> | <br><br> | ||