|
@@ -294,12 +294,15 @@ int Process(const int16_t* data, size_t length)
|
|
|
static unsigned long long AudioSumVal=0;//
|
|
|
static unsigned int AudioCntIdx=0;
|
|
|
static unsigned char AudioDbVal=0;//分贝值
|
|
|
+static int AudioValMin=0;
|
|
|
+static int AudioValMax=0;
|
|
|
|
|
|
void Audio_to_uart_start()
|
|
|
{
|
|
|
// char audioVal=0;
|
|
|
short audioVal=0;
|
|
|
- if (sMicCurVariable.mMicEnable == MIC_DISABLE)
|
|
|
+ int indexL=0;
|
|
|
+ if (sMicCurVariable.mMicEnable == MIC_DISABLE)
|
|
|
return;
|
|
|
int audioWPtr = HREADW(CORE_ADCD_ADDR) ;
|
|
|
int bufferLen = Audio_get_buffer_len();
|
|
@@ -309,22 +312,33 @@ void Audio_to_uart_start()
|
|
|
|
|
|
//Original sound sampling(pcm)
|
|
|
testPtr = (short *)sMicCurVariable.mReadPtr;
|
|
|
- for(int indexL = 0; indexL < (ENCODE_INPUT_LEN>>1); indexL++)
|
|
|
+ for( indexL = 0; indexL < (ENCODE_INPUT_LEN>>1); indexL++)
|
|
|
{
|
|
|
- //audioVal = *(testPtr+ indexL)/10; //串口显示波形用
|
|
|
- //printfsend(&audioVal,1);
|
|
|
- audioVal = *(testPtr+ indexL);
|
|
|
+// audioVal = *(testPtr+ indexL)/100; //串口显示波形用
|
|
|
+// printfsend((uint8_t*)&audioVal,1);
|
|
|
|
|
|
+ audioVal = *(testPtr+ indexL);
|
|
|
+ if(audioVal<AudioValMin)
|
|
|
+ {
|
|
|
+ AudioValMin = audioVal;
|
|
|
+ }
|
|
|
+ if(audioVal>AudioValMax)
|
|
|
+ {
|
|
|
+ AudioValMax = audioVal;
|
|
|
+ }
|
|
|
+
|
|
|
if(AudioCntIdx<ENCODE_INPUT_LEN*100)
|
|
|
{
|
|
|
AudioSumVal+=abs(*(testPtr+ indexL));
|
|
|
AudioCntIdx++;
|
|
|
}else
|
|
|
{
|
|
|
- AudioCntIdx=0;
|
|
|
AudioDbVal = (int)(10.0*log10(AudioSumVal));
|
|
|
AudioSumVal=0;
|
|
|
- MyPrintf("val:%ddb\r\n",AudioDbVal);//计算分贝值打印
|
|
|
+ AudioCntIdx=0;
|
|
|
+ //MyPrintf("sys:%d val:%ddb AudioValMax:%d AudioValMin:%d SumVal:%d\r\n",sys_time_handle.get_run_tickms(),AudioDbVal,AudioValMax,AudioValMin,AudioSumVal);//计算分贝值打印
|
|
|
+ MyPrintf("val:%ddb \r\n",AudioDbVal);
|
|
|
+ AudioValMin=0;AudioValMax=0;
|
|
|
}
|
|
|
|
|
|
//MyPrintf("%c",*(sMicCurVariable.mReadPtr + indexL));
|