OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 11352|回复: 16

1053无法录音,求助!

[复制链接]

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
发表于 2012-7-30 09:47:57 | 显示全部楼层 |阅读模式
最近在做1053录音 修改了官方的1053代码和网上的1003的代码,也试了芯片手册上的那些指令,可就是不出声音,读取SPI_HDAT1的值始终是0,请各位大虾帮我分析一下原因,还有就是录音初始化激活之后,会有回声,回声是什么样的?注:目前能播放音乐
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-7-30 09:59:13 | 显示全部楼层
录音什么格式的?
WAV还是OGG?
默认的wav是有压缩的.OGG需要加入plugin.
如果要未压缩的wav,则也是需要plugin的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-7-30 12:43:39 | 显示全部楼层
没有其他的设置,应该是默认的wav格式的,用了vs1053手册上的patch(手册上所列的SPI_WRAMADDR, SPI_WRAM,的那个表直接写下来的),存储器、正弦和mp3测试都还行,可一直不能录音,估计是录音功能还未激活,但参考了网上好多例程,基本上设置都差不多的,按芯片手册上的激活方法也还是不行,请大家帮我回答一下我的疑问,十分感谢!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-7-30 13:59:34 | 显示全部楼层
//进入ADPCM 录音模式
//agc:0,自动增益.1024相当于1倍,512相当于0.5倍,最大值65535=64倍   
void recoder_enter_rec_mode(u16 agc)
{
//如果是IMA ADPCM,采样率计算公式如下:
  //采样率=CLKI/256*d;
//假设d=0,并2倍频,外部晶振为12.288M.那么Fc=(2*12288000)/256*6=16Khz
//如果是线性PCM,采样率直接就写采样值 
    VS_WR_Cmd(SPI_BASS,0x0000);    
  VS_WR_Cmd(SPI_AICTRL0,8000); //设置采样率,设置为8Khz
  VS_WR_Cmd(SPI_AICTRL1,agc); //设置增益,0,自动增益.1024相当于1倍,512相当于0.5倍,最大值65535=64倍
  VS_WR_Cmd(SPI_AICTRL2,0); //设置增益最大值,0,代表最大值65536=64X
  VS_WR_Cmd(SPI_AICTRL3,6); //左通道(MIC单声道输入)
VS_WR_Cmd(SPI_CLOCKF,0X2000); //设置VS10XX的时钟,MULT:2倍频;ADD:不允许;CLK:12.288Mhz
VS_WR_Cmd(SPI_MODE,0x1804); //MIC,录音激活    
  delay_ms(5); //等待至少1.35ms 
  VS_Load_Patch((u16*)wav_plugin,40);//VS1053的WAV录音需要plugin
}
这是我的设置,不过有一个plugin.这个上vlsi自行下载.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

31

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
233
金钱
233
注册时间
2012-3-19
在线时间
2 小时
发表于 2012-7-31 10:16:28 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
表示我也在弄vs1003的录音,代码写好调试至今好久了都没能实现录音啊啊啊 ,原子哥能不能共享个完整源码
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-7-31 12:33:54 | 显示全部楼层
完整代码等豪华版出来再放出.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-7-31 12:51:40 | 显示全部楼层
用了版主代码,依然只能读出0,请问原子哥这段代码是在你那测试通过的吗?我用的是ALIENTEK的vs1053模块,不知道你用的是不是这款,还有怎么测试mic有没有坏呀?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-7-31 15:32:49 | 显示全部楼层
回复【7楼】xingdong2hao:
---------------------------------
设置了MIC模式以后,会在耳机听到MIC的录音,如果能听到,说明录音部分没问题.不能听到,说明有问题了.
我的代码是豪华板上面的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-7-31 22:40:01 | 显示全部楼层
如原子哥所说的,我有时设置了运行之后,戴上耳机会听到周围的一些 声音 好像被放大了,这是你上面说的 “录音部分没问题”吗?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-7-31 23:30:09 | 显示全部楼层
是的
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-8-1 09:26:26 | 显示全部楼层
十分感谢原子哥!看来我得从其他方面找原因了
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-8-2 21:00:58 | 显示全部楼层
由于自己对录音这方面了解的较少,现在做vs1053遇到问题后难以想到对策,各位能分享一下1003,1053的录音经验吗?谢谢!
我的录音程序在 VS_Load_Patch()函数这加断点,照原子哥说的,能听见放大了的外面的声音;但程序往下执行这种声音就没有了,这种现象正常吗?请原子哥和各位大侠帮忙回答一下,十分感谢!现在我的录音部分仍然读不到数据,读vs1053寄存器对spi的速度要求都是一样的吧?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-3 00:19:30 | 显示全部楼层
不正常.
只要是录音,一定会有声音的,而且无法关闭.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-3 00:21:18 | 显示全部楼层
//VS1053的WAV录音有bug,这个plugin可以修正这个问题      
const u16 wav_plugin[40]=/* Compressed plugin */ 

0x0007, 0x0001, 0x8010, 0x0006, 0x001c, 0x3e12, 0xb817, 0x3e14, /* 0 */ 
0xf812, 0x3e01, 0xb811, 0x0007, 0x9717, 0x0020, 0xffd2, 0x0030, /* 8 */ 
0x11d1, 0x3111, 0x8024, 0x3704, 0xc024, 0x3b81, 0x8024, 0x3101, /* 10 */ 
0x8024, 0x3b81, 0x8024, 0x3f04, 0xc024, 0x2808, 0x4800, 0x36f1, /* 18 */ 
0x9811, 0x0007, 0x0001, 0x8028, 0x0006, 0x0002, 0x2a00, 0x040e,  
}; 
这就是我上面代码所用的patch,很短.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-8-3 10:25:09 | 显示全部楼层
十分感谢原子哥的回答,不过我的上面的plugin是按照vs1053芯片手册上   这样 VS_WR_Cmd(SPI_WRAMADDR,0x8010); VS_WR_Cmd(SPI_WRAM,0x3e12);……一条一条写的,和原子哥的上面的plugin应该是一样的,这好像不是真正的原因
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2012-7-30
在线时间
0 小时
 楼主| 发表于 2012-8-6 18:20:58 | 显示全部楼层
能录音了,原来是底层的驱动和RIFF标头有些问题,现在录音中存在的噪声很大,是那种 继续的“突突”声,不知道大家有没有遇到类似的问题,希望大家给点建议!
回复 支持 反对

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2012-4-27
在线时间
0 小时
发表于 2012-8-13 17:48:01 | 显示全部楼层
开始时候放的时候有澡音,现在又遇录音问题,原厂发来的板子,录的时候 有时也会有突突的声音.我来来回回试了好几边.
VLSI-代理.我这里提供,开发板,样片,技术资料.15361638451
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 07:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表