AVRマイコンのTiny2313で手っ取り早く周期割り込みを動かす例。
8bitのTIMER0のオーバーフロー割り込みを使う。
下記でクロック周波数/1024/256のインターバルで割り込みが来る。
8MHzで動かしているなら32.768msec周期で割り込みが来る。
さらに長い周期が必要なら割り込みハンドラでカウンター数えるのかな。
プリスケーラーは他の分周比も選べるので、もっと短い周期の設定可能。
#include <avr/interrupt.h>
ISR(TIMER0_OVF_vect)
{
/* some process. */;
}
main()
{
TCCR0B = _BV(CS02) | _BV(CS00); /* 1/1024 pre-scale */
TCNT0 = 0;
TIMSK = _BV(TOIE0);
}
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿