[音源] 试玩WM8805的软控

[复制链接] 查看: 24039|回复: 43

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

发表于 2011-11-6 15:25 | 显示全部楼层
本帖最后由 arbore 于 2011-11-6 17:19 编辑

接收部分用WM8805,因为它有8路输入,另外内置的PLL也不错,就拿它来练手吧。花了好多天,终于把程序调通了。单按键切换5路输入,实时显示输入的采样频率。兴奋,忍不住随手拿起相机上图,虽然桌面上很乱。

a1.jpg
a2.jpg
a3.jpg

    WM8805我使用了5路输入,分别定义为同轴,USB,光纤,平衡,BNC.现在USB是用了一块同事的PCM2707来测试,光纤就直接用笔记本输出来测试,同轴就用自己的CDM4转盘来试,至于平衡和BNC,暂时不管了,重新排PCB时再试吧。USB,光纤从笔记本里输出,可以很方便更换采样频率。WM8805检测采样频率是分4档的:
A.32K
B.44.1K-48K
C.96K
D.192k
可惜TDA1307最高只支持48K,所以96k以上的采样频率是没有声音的,另外我的笔记本也不能输出192K,所以48K以上的频率不管了。

d1.jpg
d2.jpg
d3.jpg
d4.jpg
d5.jpg
d6.jpg
d7.jpg
d8.jpg
d9.jpg

整个过程中遇到最大的麻烦竟然不是程序问题,而是一个电路上的问题。看图。

b1.jpg
b2.jpg

因为一开始写好程序时,我是接上一块1541解码来试的,8805直接输出到7220再到1541,很顺利,以为成功了,于是就换上了DF7解码,怎知没有声音,怎么也想不通,7220比1307更老,怎会7220可以,1307不行?其实是输入电平问题,现在的DIR芯片如DIR9001,CS8416,WM8805等都是3.3V供电,输出电平很低,与1307这类5V供电的芯片输入电平是不匹配的,准确来说,应该加一个电平转换芯片,我在8805与1307之间加了一片74HCT32作为转换。。像cs8412,8414等5V供电的DIR,则可以直连,不用转换。为何8805直接输出到7220又正常呢?因为我查了7220的输入电平要求,发现它比较低,所以它可以出声,大家可以对比下各芯片的PDF.呵呵,就是这个问题困扰了我好多天,可能因为我手上没有5V类的DIR吧,所以没有注意到。

31

主题

0

好友

252

积分
     

业余侠客 当前离线

Rank: 4

UID
258729
帖子
682
精华
0
经验
252 点
金钱
235 ¥
注册时间
2010-11-18
发表于 2011-11-6 15:33 | 显示全部楼层
学习

22

主题

0

好友

918

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
105834
帖子
1272
精华
0
经验
918 点
金钱
875 ¥
注册时间
2009-5-21
发表于 2011-11-6 17:21 | 显示全部楼层
无从入手,是否来点建议。

17

主题

1

好友

752

积分
     

职业侠客 当前离线

Rank: 5Rank: 5

UID
102762
帖子
1076
精华
0
经验
752 点
金钱
737 ¥
注册时间
2009-5-9
发表于 2011-11-6 17:47 | 显示全部楼层

8

主题

0

好友

215

积分

业余侠客 当前离线

Rank: 4

UID
160159
帖子
427
精华
0
经验
215 点
金钱
215 ¥
注册时间
2010-1-1
发表于 2011-11-6 17:51 | 显示全部楼层
gaoshou

77

主题

2

好友

1794

积分

侠之大者 当前离线

Rank: 6Rank: 6

UID
20675
帖子
5891
精华
0
经验
1794 点
金钱
1656 ¥
注册时间
2007-3-23
发表于 2011-11-6 19:09 | 显示全部楼层
要求上代码,讲讲主要原理也行。

22

主题

2

好友

153

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
124767
帖子
2968
精华
0
经验
153 点
金钱
144 ¥
注册时间
2009-8-14
发表于 2011-11-6 19:11 | 显示全部楼层
接收部分用WM8805,因为它有8路输入,另外内置的PLL也不错,就拿它来练手吧。花了好多天,终于把程序调通了 ...
arbore 发表于 2011-11-6 15:25



    其实是输入电平问题,
提到了问题,很好,不过这样摸索真的很慢。这样的问题也有很多解决方法。你这种方法多少会有点影响音频质量。但楼主的精神真的可加啊,我在搞的系统时碰到这类问题实在太多了,我现在年纪大了,可没那么大的耐性了。

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

 楼主| 发表于 2011-11-6 19:37 | 显示全部楼层
本帖最后由 arbore 于 2011-11-6 19:50 编辑
其实是输入电平问题,
提到了问题,很好,不过这样摸索真的很慢。这样的问题也有很多解决方法。 ...
muco 发表于 2011-11-6 19:11


“你这种方法多少会有点影响音频质量。”这个说法有点奇怪。请看下这台马兰士 SA-1,同样是DF7,它的数字部分用了这么多74系列IC,是否表示音质已经差到是没法听了?
saa.JPG
sa1.jpg
sa2.jpg
既然高手出现了,请解释下SA-1的原理,为何要用那么多74IC,影响音质很严重啊?
另外,可以的话,请说下你用的不影响音质的方法,小弟很认真地听教。

11

主题

1

好友

495

积分

业余侠客 当前离线

终极电流

Rank: 4

UID
6329
帖子
828
精华
0
经验
495 点
金钱
424 ¥
注册时间
2005-11-14
发表于 2011-11-6 21:23 | 显示全部楼层
呵呵,不错,不错,8805的软控其实不会特别难,我也在玩这

3

主题

2

好友

1967

积分

侠之大者 当前离线

Rank: 6Rank: 6

UID
22550
帖子
2151
精华
0
经验
1967 点
金钱
1953 ¥
注册时间
2007-5-13
发表于 2011-11-6 22:10 | 显示全部楼层
有没有在数字滤波环节处理码率和采样频率的软控及计算方式,能够用一种解码芯片适应所有的数字音频方式,这样的做法在APOGEE、DCS、EMM LABS等专业解码中常见,曾经看过DCS的解码,支持16BIT~24BIT、32khz~192khz,接受芯片后接软控及存储芯片后接解码芯片,解码就是18BIT.这样的方式可能对音质影响最小。

22

主题

2

好友

153

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
124767
帖子
2968
精华
0
经验
153 点
金钱
144 ¥
注册时间
2009-8-14
发表于 2011-11-6 22:17 | 显示全部楼层
“你这种方法多少会有点影响音频质量。”这个说法有点奇怪。请看下这台马兰士 SA-1,同样是DF7,它的数 ...
arbore 发表于 2011-11-6 19:37


不要这么急,我没有说影响音质很严重。就当我没说算了。

22

主题

2

好友

153

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
124767
帖子
2968
精华
0
经验
153 点
金钱
144 ¥
注册时间
2009-8-14
发表于 2011-11-6 22:19 | 显示全部楼层
我更没说音质已经差到是没法听啊。

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

 楼主| 发表于 2011-11-6 22:20 | 显示全部楼层
有没有在数字滤波环节处理码率和采样频率的软控及计算方式,能够用一种解码芯片适应所有的数字音频方式,这 ...
ygw70 发表于 2011-11-6 22:10


只不过是尝试下WM8805的软件控制方式,至于“数字滤波环节处理码率和采样频率的软控及计算方式”扯远了,这些是DAC数字领域的高手研究的东西,非我这些业余烧友所能做的。

3

主题

2

好友

1967

积分

侠之大者 当前离线

Rank: 6Rank: 6

UID
22550
帖子
2151
精华
0
经验
1967 点
金钱
1953 ¥
注册时间
2007-5-13
发表于 2011-11-6 22:24 | 显示全部楼层
只不过是尝试下WM8805的软件控制方式,至于“数字滤波环节处理码率和采样频率的软控及计算方式”扯远了 ...
arbore 发表于 2011-11-6 22:20

提研究尚远,但国内破解个把DSP芯片还是有能力的,破解之后再提研究不迟啊
头像被屏蔽

152

主题

14

好友

3215

积分

禁止发言 当前离线

DAC7天下无敌

UID
23806
帖子
4807
精华
0
经验
3215 点
金钱
3198 ¥
注册时间
2007-6-19
发表于 2011-11-7 09:49 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

 楼主| 发表于 2011-11-7 20:05 | 显示全部楼层
不错,下一步就是加入8741软控吧?
op111op 发表于 2011-11-7 09:49


8741的寄存器不多,应该不难,有空再研究下。WM8805有30个寄存器,暂时是我接触最多的了。TDA1307也就只有10个。

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

 楼主| 发表于 2011-11-9 14:43 | 显示全部楼层
搞了一块CS8416+CS4398的DAC板,坛上一位烧友的。洞洞板搭起来很麻烦,还是用现成的改来试试。原板是硬件模式,被我改了,这次再试8416的软件模式,可以跟WM8805有个比较。主要看中CS8416的输出接口可以上升到5V供电,这样可以直接与1307连接。控制部分照搬8805部分,接口都是用I2C,重新修改寄存器就行了。CS8416相比8805更简单点,8805的192K PLL还要重写PLL_N/K值。程序刚搞好,还没有接DF7,先用4398试用下。

1.jpg
2.jpg
3.jpg
4.jpg
5.jpg

56

主题

12

好友

6087

积分
     

青铜剑侠 当前离线

小熊猫

Rank: 8Rank: 8

UID
59487
帖子
7495
精华
0
经验
6087 点
金钱
5744 ¥
注册时间
2008-10-20
发表于 2011-11-9 14:56 | 显示全部楼层
8805上192很简单吧。

108

主题

1

好友

799

积分
     

认证会员 当前离线

arbore.blog.163.com

Rank: 4

UID
12285
帖子
1478
精华
0
经验
799 点
金钱
661 ¥
注册时间
2006-9-12

认证会员

 楼主| 发表于 2011-11-9 15:04 | 显示全部楼层
8805上192很简单吧。
卡西利亚斯 发表于 2011-11-9 14:56


软件模式下,检测到192K时重写PLL_N/K值就行。

35

主题

2

好友

3079

积分

罗宾汉 当前离线

Rank: 7Rank: 7Rank: 7

UID
27774
帖子
3054
精华
0
经验
3079 点
金钱
3027 ¥
注册时间
2007-9-27
发表于 2011-11-9 15:12 | 显示全部楼层
8805上192很简单吧。
卡西利亚斯 发表于 2011-11-9 14:56


硬件模式都可以32~192k通杀,软件貌似反而麻烦些。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc.

返回顶部