revised version of F746_SD_GraphicEqualizer
Dependencies: BSP_DISCO_F746NG F746_GUI F746_SAI_IO FrequencyResponseDrawer LCD_DISCO_F746NG SDFileSystem_Warning_Fixed TS_DISCO_F746NG mbed
Fork of F746_SD_GraphicEqualizer by
Revision 4:14f401cb069a, committed 2016-05-04
- Comitter:
- MikamiUitOpen
- Date:
- Wed May 04 12:41:02 2016 +0000
- Parent:
- 3:c3976d34cde9
- Child:
- 5:a5a4f9d7b26c
- Commit message:
- 5
Changed in this revision
--- a/MyClasses_Functions/SAI_Output.cpp Sun May 01 14:13:51 2016 +0000
+++ b/MyClasses_Functions/SAI_Output.cpp Wed May 04 12:41:02 2016 +0000
@@ -1,6 +1,6 @@
//-----------------------------------------------------------
// SiaIO class for output
-// 2016/04/20, Copyright (c) 2016 MIKAMI, Naoki
+// 2016/05/04, Copyright (c) 2016 MIKAMI, Naoki
//-----------------------------------------------------------
#include "SAI_Output.hpp"
@@ -14,28 +14,15 @@
outBuffer_ = new int16_t[(size*2)*2];
tmp_ = new int16_t[size*2];
xferred_ = false;
+ InitCodecOut();
}
+
SaiIO_O::~SaiIO_O()
{
delete[] tmp_;
delete[] outBuffer_;
}
- void SaiIO_O::InitCodecOut()
- {
- if (BSP_AUDIO_OUT_Init(OUTPUT_DEVICE_HEADPHONE, VOLUME_OUT_, FS_) == AUDIO_ERROR)
- ErrorTrap();
- for (int n=0; n<bufferSize_; n++) outBuffer_[n] = 0;
- for (int n=0; n<nData_*2; n++) tmp_[n] = 0;
-
- NVIC_SetVector(AUDIO_OUT_SAIx_DMAx_IRQ, (uint32_t)AUDIO_OUT_SAIx_DMAx_IRQHandler);
- BSP_AUDIO_OUT_SetAudioFrameSlot(CODEC_AUDIOFRAME_SLOT_02);
-
- if (BSP_AUDIO_OUT_Play((uint16_t *)outBuffer_,
- bufferSize_*AUDIODATA_SIZE) == AUDIO_ERROR)
- ErrorTrap();
- }
-
bool SaiIO_O::IsXferred()
{
if (xferred_)
@@ -64,6 +51,21 @@
}
}
+ void SaiIO_O::InitCodecOut()
+ {
+ if (BSP_AUDIO_OUT_Init(OUTPUT_DEVICE_HEADPHONE, VOLUME_OUT_, FS_) == AUDIO_ERROR)
+ ErrorTrap();
+ for (int n=0; n<bufferSize_; n++) outBuffer_[n] = 0;
+ for (int n=0; n<nData_*2; n++) tmp_[n] = 0;
+
+ NVIC_SetVector(AUDIO_OUT_SAIx_DMAx_IRQ, (uint32_t)AUDIO_OUT_SAIx_DMAx_IRQHandler);
+ BSP_AUDIO_OUT_SetAudioFrameSlot(CODEC_AUDIOFRAME_SLOT_02);
+
+ if (BSP_AUDIO_OUT_Play((uint16_t *)outBuffer_,
+ bufferSize_*AUDIODATA_SIZE) == AUDIO_ERROR)
+ ErrorTrap();
+ }
+
void SaiIO_O::FillBuffer(uint32_t offset)
{
int k = offset;
--- a/MyClasses_Functions/SAI_Output.hpp Sun May 01 14:13:51 2016 +0000
+++ b/MyClasses_Functions/SAI_Output.hpp Wed May 04 12:41:02 2016 +0000
@@ -1,6 +1,6 @@
//-----------------------------------------------------------
// SiaIO class for output (Header)
-// 2016/04/20, Copyright (c) 2016 MIKAMI, Naoki
+// 2016/05/04, Copyright (c) 2016 MIKAMI, Naoki
//-----------------------------------------------------------
#ifndef F746_SAI_IO_HPP
@@ -17,9 +17,7 @@
public:
SaiIO_O(int size, int fs);
~SaiIO_O();
-
- void InitCodecOut();
-
+
bool IsXferred();
void Output(int16_t xL, int16_t xR);
@@ -54,6 +52,7 @@
__IO int32_t tmpIndex_;
+ void InitCodecOut();
static void FillBuffer(uint32_t offset);
};
}
--- a/main.cpp Sun May 01 14:13:51 2016 +0000
+++ b/main.cpp Wed May 04 12:41:02 2016 +0000
@@ -5,7 +5,7 @@
// 上記以外の形式は扱わない
// 出力:モノラル
//
-// 2016/05/01, Copyright (c) 2016 MIKAMI, Naoki
+// 2016/05/04, Copyright (c) 2016 MIKAMI, Naoki
//--------------------------------------------------------------
#include "MyFunctions.hpp"
@@ -111,7 +111,6 @@
playOk = false;
bool stopOk = false;
- mySai.InitCodecOut(); // SAI の初期化
// IIR フィルタの内部の遅延器のクリア
for (int k=0; k<STAGES; k++) hn[k].Clear();
