想把vs1053采集到的音频数据,通过串口发送出去,可是收到的十六进制数据和原始音频对不上

2019-08-13 22:34发布

求各位大神指教,小弟刚开始接触stm32,感激不尽。图片是我的程序
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
1052130982
1楼-- · 2019-08-16 11:15
super910906 发表于 2017-9-26 09:30
VS1053这芯片用了2年了,你这个问题出在你对原始音频进行了重新编码,得到的数据是采样率为8K,位率****(0 ...

想把VS1053采集到的数据直接通过串口发出去,该用什么方法,求指导!!!
super910906
2楼-- · 2019-08-16 13:42
 精彩回答 2  元偷偷看……
super910906
3楼-- · 2019-08-16 14:11
                SYS_VAL.Cnt = VS10X3_RD_Reg(0x09);
                if((SYS_VAL.Cnt >=256)&&(SYS_VAL.Cnt <896))
                {
                        SYS_VAL.Idx = 0;
                        while(SYS_VAL.Idx < 512)
                        {
                                SYS_VAL.Cnt = VS10X3_RD_Reg(0x08);
                                MP3_Send_Buf[SYS_VAL.Idx++]=SYS_VAL.Cnt>>8;
                                MP3_Send_Buf[SYS_VAL.Idx++]=SYS_VAL.Cnt&0xFF;
                        }
                        UART4_SendData(MP3_Send_Buf,512);
                        while(UART4_Send_Size);//等待发送完成
                }
1052130982
4楼-- · 2019-08-16 19:26
super910906 发表于 2017-9-27 09:44
SYS_VAL.Cnt = VS10X3_RD_Reg(0x09);
                if((SYS_VAL.Cnt >=256)&&(SYS_VAL.Cnt >8;
                                MP3_Send_Buf[S ...

我现在采样率是8000.串口波特率是115200。收到数据转成音频是快进的那种,明显丢了数据。把串口波特率调到256000,转成的音频是对的。还是采集太快,串口发的太慢。怎么能把速度降下来,因为我的串口蓝牙最高只能115200.
super910906
5楼-- · 2019-08-17 00:48
1052130982 发表于 2017-9-27 11:11
我现在采样率是8000.串口波特率是115200。收到数据转成音频是快进的那种,明显丢了数据。把串口波特率调 ...

你把设置编码寄存器的那段代码贴上来,我就知道你的编码位率是多少了,然后才能帮你看看怎么改。

一周热门 更多>