main.cpp で定義されています。
#include <ccblkfn.h>
#include <signal.h>
#include "afw.h"
#include "utilbf537.h"
#include "pb.h"
#include "param.h"
関数 | |
| void | pbIntHandler (int ivg) |
| 割り込みハンドラ関数 | |
| void | main (void) |
| メイン関数 | |
変数 | |
| const pb::eSwitch | sw = pb::sw10 |
| 割込みを発生させるスイッチ | |
| void main | ( | void | ) |
メイン関数
各ペリフェラルを初期化後、割り込み待ちに入る。
参照先 pb::enableInterrupt()・afw::init()・utilbf537::initPLL()・pbIntHandler()・afw::startAudio()・sw.
00060 { 00061 utilbf537::initPLL(); // PLLを設定する 00062 00063 afw::init(); // オーディオ・フレームワーク初期化 00064 afw::startAudio(); // オーディオ処理開始 00065 00066 interrupt( SIGIVG12, &pbIntHandler ); // 割込みハンドラ登録 00067 pb::enableInterrupt( sw ); // プッシュボタン割込み許可 00068 00069 while(1) 00070 ; // 割り込み待ち 00071 }
| void pbIntHandler | ( | int | ivg | ) |
割り込みハンドラ関数
プッシュ・ボタンからのFLAG IO割り込みを受けて、ゲインを変更する。
参照先 pb::clearInterrupt()・param::gain・pb::interruptRequested()・pb::pushed()・sw.
参照元 main().
00078 { 00079 00080 if ( pb::interruptRequested() // PORTFからの割り込みか 00081 & pb::pushed( sw ) ){ // プッシュ・ボタン割り込みがかかっているのか 00082 00083 if ( 0.0r != param::gain ) // ゲインを変更する 00084 param::gain = 0.0r; 00085 else 00086 param::gain = 1.0r; // 1.0は表現できないので、最大値に飽和する 00087 pb::clearInterrupt( sw ); // 割り込みをクリアする 00088 } 00089 ssync(); // パイプライン・バス上の書きこみが 00090 // 終了するまで待つ 00091 }
1.4.7