Audio singal input and output example for DISCO-F746. Input: MEMS mic, Output: CN10 OUT, Acoustic effect: echo and frequency shift. DISCO-F746 によるオーディオ信号入出力.入力:MEMS マイク,出力:CN10 OUT,音響効果:エコー,周波数変換.

Dependencies:   F746_GUI F746_SAI_IO

Revision:
8:9378fea59845
Parent:
7:a392487bcf7d
Child:
9:1221ba81a1bb
--- a/main.cpp	Sun Nov 06 13:36:22 2016 +0000
+++ b/main.cpp	Thu Nov 10 12:53:05 2016 +0000
@@ -2,13 +2,14 @@
 //  MEMS マイクの入力に対して音響効果を与える
 //      音響効果:エコー生成,周波数シフト
 //
-//  2016/11/06, Copyright (c) 2016 MIKAMI, Naoki
+//  2016/11/10, Copyright (c) 2016 MIKAMI, Naoki
 //--------------------------------------------------------------
 
 #include "EffectorInitializeGUI.hpp"
 #include "SAI_InOut.hpp"
 #include "Echo.hpp"
 #include "WeaverModulator.hpp"
+#include "Array.hpp"
 
 using namespace Mikami;
 
@@ -36,10 +37,9 @@
     int menuNum = 0;    
     
     // 入出力の波形表示で使用
-    int16_t *snIn, *snOut;
-    snIn = new int16_t[mySai.GetLength()];
-    snOut = new int16_t[mySai.GetLength()];
-    
+    Array<int16_t> snIn(mySai.GetLength());
+    Array<int16_t> snOut(mySai.GetLength());
+
     mySai.RecordIn();
     mySai.PlayOut();
     mySai.PauseOut();
@@ -75,15 +75,15 @@
             {
                 case 0: barEcho->Inactivate();  // Through
                         barFqCh->Inactivate();
-                        frqLabel->Draw(GuiBase::ENUM_INACTIVE_TEXT);   
+                        frqLabel->Redraw(GuiBase::ENUM_INACTIVE_TEXT);   
                         break;
                 case 1: barEcho->Activate();    // Echo
                         barFqCh->Inactivate();
-                        frqLabel->Draw(GuiBase::ENUM_INACTIVE_TEXT);   
+                        frqLabel->Redraw(GuiBase::ENUM_INACTIVE_TEXT);   
                         break;
                 case 2: barEcho->Inactivate();  // Frequency shifter
                         barFqCh->Activate();
-                        frqLabel->Draw(GuiBase::ENUM_TEXT);   
+                        frqLabel->Redraw(GuiBase::ENUM_TEXT);   
                         break;
             }