00001 /** \mainpage 00002 * 00003 * このプログラムは、ADSP-BF537を搭載する評価基板、EZ-KIT BF537のデモ・プログラムである。 00004 * 外部のボリュームより値を読み込み、その値を元にオーディオデータにフランジャー効果を施す。 00005 * 00006 * ::main 関数を実行すると、各種の初期化を行い、割り込みハンドラ afw::ISRを登録した後、 00007 * 割り込みとDMAを許可してオーディオ信号の送受信を行う。オーディオ信号はSPORT0経由で入力 00008 * し、DMAによってメモリ上に格納される。2次元DMAの各行が終わるたびにオーディオ信号受信割り込み 00009 * が発生し、 afw::ISRが呼び出される。 00010 * 00011 * afw::ISRは割り込みをクリアし、トリプルバッファの制御を行う。そしてしかるべきデータを 00012 * DMAの受信バッファから取り出すと、使いやすいよう並べなおしてユーザー定義のコールバック関数 00013 * afw::processDataを呼び出す。 00014 * 00015 * afw::processDataでは ad7998::getValue()関数によって、ADコンバーターAD7998より 00016 * 値を読み込む。遅延を制御する制限派の振幅と周波数である。 00017 * 00018 * EZ-KIT Lite BF-537のディップスイッチの設定は以下のとおり 00019 - SW1 : すべてOFF 00020 - SW7 : すべてON 00021 - SW8 : 1-2をON、残りはすべてOFF 00022 */ 00023 00024 /** \file main.cpp 00025 * \brief メイン関数定義ファイル 00026 * \author アナログ・デバイセズ株式会社 00027 * 00028 * このプログラムはVisualDSP++ 4.5のサンプル・アプリケーション、TalkTrhoughから 00029 * 派生させたものである。EZ-KIT BF537のリソースを初期化し、48Ksample/Sのオーディオ 00030 * フレームワークを起動する。受信データはコールバック関数 afw::processData によって 00031 * 処理される。 00032 */ 00033 00034 00035 #include <ccblkfn.h> 00036 00037 #include "afw.h" 00038 #include "cec.h" 00039 #include "twi.h" 00040 #include "ad7998.h" 00041 #include "utilbf537.h" 00042 00043 00044 /** メイン関数 00045 * 00046 * 各ペリフェラルを初期化後、割り込み待ちに入る。 00047 */ 00048 void main(void) 00049 { 00050 utilbf537::initPLL(); // PLLを設定する 00051 00052 // 各ライブラリの初期化 00053 cec::init(); // コア・イベント 00054 twi::init(120); // TWIペリフェラル 00055 ad7998::init(); // ad7998 00056 afw::init(); // オーディオ・フレームワーク 00057 00058 // 各作業の処理開始 00059 cec::start(); // コア・イベント 00060 twi::start(); // TWI 00061 ad7998::start(); // AD7998 00062 afw::start(); // オーディオ処理 00063 00064 while(1) 00065 idle(); // 割込み待ち 00066 } 00067 00068 00069 00070
1.5.2