目次
前
次
ブザー鳴動
マイコンの出力ポートの1ビットに、適当な周期(1ms〜100ms)で
HかLを出力すると、接続したブザーを鳴らせる。
タイマー割込みで、周期を作成し、割込み処理中にHかLを
出力すれば、ブザー鳴動を実現できる。
タイマー割込みでの実現
1msの割込みがあった場合には、次のようにする。
ENABLE_BUZZERをONにすると、ブザー鳴動。
OFFでブザーがならないように制御する。
unsigned char count ;
void timer_handler(void)
{
unsigned char tmp;
/* 割込み関連処理 */
/* ブザー鳴動 */
tmp = OFF ;
count++ ;
if ( ENABLE_BUZZER == ON ) {
tmp = count & 1 ;
}
BUZZER_BIT = tmp ;
}
周期を変化させるには、以下のようにHとLの持続時間を
変化させる。
unsigned char period ;
unsigned char count ;
void timer_handler(void)
{
unsigned char tmp;
/* 割込み関連処理 */
/* ブザー鳴動処理 */
tmp = OFF ;
if ( ENABLE_BUZZER == ON ) {
periode-- ;
if ( periode == 0 ) {
periode = PERIODE_MAX ;
count++ ;
}
tmp = count & 1 ;
}
BUZZER_BIT = tmp ;
}
目次
前
次