关于VS1003录音时,读取VS_HDAT1寄存器,一只是0。求助。。。
在做VS1003录音时,读取VS_HDAT1寄存器,一只是0,忘遇到过此类问题的朋友帮帮忙。尝试过好几种录音初始化代码,都是一样的情况。 配置
VS_WR_Cmd(SPI_BASS,0x0000);
VS_WR_Cmd(SPI_AICTRL0,12); //1053和1003有些许区别,1003是由公式得出的分配系数,1053是直接填入比特率
VS_WR_Cmd(SPI_AICTRL1,0);
VS_WR_Cmd(SPI_AICTRL2,0);
VS_WR_Cmd(SPI_AICTRL3,6);
VS_WR_Cmd(SPI_CLOCKF,0X9800);
VS_WR_Cmd(SPI_MODE,0x1804);
delay_ms(5);
我现在的情况是录了音,放不出来,录10秒,播放只播放了5秒就播放完了。而且声音是杂音来的。完全无规律。感觉有可能是我的wav头部有问题?
纯文本查看 复制代码
struct file_wav head = {
.chunkid = 0x4646952,
.chunksize = 0,
.format = 0x45564157,
.subchunk1id =0x20746d66,
.subchunk1size = 16,
.audioformat = 0x01,
.numofchannels= 1,
.samplerate = 8000,
.byterate = 0xfd7, //这个不清楚应该填多少
.blockalign =2,
.bitspersample = 16,
.subchunk3id = 0x61746164,
.subchunk3size = 0
};
还有可能就是我获取数据的时候出问题了,搞了两天了。~~~~(>_<)~~~~help me
页:
[1]