ひやしたです。
>> ポーリングというのは、たとえば、割り込み動作をしているとき、
>> 割り込み処理後にそのフラグをセットしてやり、(bt_int_set = TRUEとか)
>> メインでは無限ループ内部でたとえば、
>>...
>> のような方法を指しているのでしょうか?
わたしはこんな意味の事をいいましたです。(3048/20MHzの場合)
/*************************************************************************
初期化
**************************************************************************/
void init_itu()
{
ITU1.TCR = 0x23; /* clear GRA comparematch,1/8clock */
ITU1.TIOR = 0x00 ; /* No use ITU pins */
ITU1.TIER = 0x00 ; /* No use interrupt */
}
/*************************************************************************
t はマイクロ秒(1〜32767)
**************************************************************************/
void stimer(short t)
{
ITU.TSTR &= ~0x02; /* タイマー停止 */
ITU1.TSR &= ~0x01; /* IMFAフラグクリア */
ITU1.TCNT = 0; /* カウンタクリア */
ITU1.GRA = (t * 2 -1) ; /* 62.5ns * 8 = 500nsec */
ITU.TSTR |= 0x02; /* カウント開始 */
}
#define countup() ((ITU1.TSR & 0x01)? 1 : 0)
void delay(int duration)
{
stimer(duration);
while( ! countup());
}
※かなり省略してコピペしたので大歩危が有るかもしれません。