找回密码
 -注册-
查看: 14246|回复: 12
打印 上一主题 下一主题

WM8805软控测试分享

[复制链接]
跳转到指定楼层
1
发表于 2012-7-26 12:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式 来自 湖南省长沙市
WM8805软控电路图如下



这个图纸复位要接上拉。

之前因为我的硬件问题,请教论坛的haluo兄得到不少帮助,谢谢haluo 兄,调试完成后,和他讨论一些问题,WM8805的控制难点在176.4HE 192K的解码,其实只要在192的时候设置正确NK就可以解决。WM8805的内部寄存器读取识别频率在44.1和48K,88.2和96K都是一个数值,确实很难区分,我采用的方法是检测外部的LRCK来获取正确的频率作为一个判断条件。
也可以采用判断UNLOCK的电平或者读取UNLCOK的BIT位来判断。我测试的结果是判断BIT位准确点。

我的测试记录如下,共参考。

//{0x07,0x36,0xFD,0x21},
//{0x07,0x21,0xB0,0x89},
// 44.1K 88.2K 176.4K
//{0x08,0x0C,0x49,0xBA}
//32K 48K 96K 192K
/*
————————————————————————————————————————————————————————————————————
全部设置为{0x07,0x36,0xFD,0x21}
44.1,48K,88.2,176。4K,96K 能正常解码出声音,UNLOCK 为0V
192K解码不了,UNLOCK 为3.3V。

开机      01000000                     3.3V
RX0 44.1  00100000  bit5-4 = 10     0V
  48   00100000  bit5-4 = 10     0V
  88.2  00010000  bit5-4 = 01     0V
  96   00010000  bit5-4 = 01     0V
  176  00000000  bit5-4 = 00     0V
  192  01000000     bit5-4 = 00   解码不了,LCD无显示 3.3V
————————————————————————————————————————————————————————————————————
全部设置为{0x07,0x21,0xB0,0x89}
44.1,88.2,176。4K,能正常解码出声音。
48K能解码但有噪声UNLOCK 为0,96K和192K解码不了,UNLOCK 为3.3V。

开机      01000000                     3.3V
RX0 44.1  00100000  bit5-4 = 10     0V
  48   00100000  bit5-4 = 10     0V
  88.2  00010000  bit5-4 = 01     0V
  96   01010000  bit5-4 = 01     解码不了,LCD无显示 3.3V
  176  00000000  bit5-4 = 00     0V
  192  01000000     bit5-4 = 00   解码不了,LCD无显示 3.3V
————————————————————————————————————————————————————————————————————
全部设置为{0x08,0x0C,0x49,0xBA}
48K,96K,192K,能正常解码出声音。
44.1,88.2,176。4K,不能解码,44.1K的UNLOCK 电平输出在1.4V-2.5V之间变化。

开机      01000000                     3.3V
RX0 44.1  00100000  bit5-4 = 10     解码不了,LCD无显示 1.4V-2.5V
          01100000     bit5-4 = 10     2个数组在变化
  48   00100000  bit5-4 = 10     0V
  88.2  01010000  bit5-4 = 01     解码不了,LCD无显示 3.3V
  96   00010000  bit5-4 = 01     0V   
  176  00000000  bit5-4 = 00     解码不了,LCD无显示,但是为0V
  192  00000000     bit5-4 = 00   0V
————————————————————————————————————————————————————————————————————
设置为
{0x07,0x21,0xB0,0x89}
{0x08,0x0C,0x49,0xBA}
44.1K,96K,192K,能正常解码出声音。
48K能解码但有噪声,176.4不能解码但是UNLOCK 电平输出为0.5V。
————————————————————————————————————————————————————————————————————
设置为
{0x07,0x36,0xFD,0x21}
{0x08,0x0C,0x49,0xBA}
全部可以解码。

RX0 44.1  00100000  bit5-4 = 10
  48   00100000  bit5-4 = 10
  88.2  00010000  bit5-4 = 01
  96   00010000  bit5-4 = 01
  176  00000000  bit5-4 = 00
  192  00000000     bit5-4 = 00

*/

1.jpg (55 KB, 下载次数: 98)

1.jpg
2
发表于 2012-7-26 13:51 | 只看该作者 来自 北京市
xin wanju

DSC05878.jpg (144 KB, 下载次数: 143)

DSC05878.jpg

DSC05879.jpg (111 KB, 下载次数: 108)

DSC05879.jpg
回复

使用道具 举报

3
发表于 2012-7-26 14:27 | 只看该作者 来自 天津市河东区
就是测试各种往寄存器写的值,然后看看结果?
回复

使用道具 举报

4
发表于 2012-7-26 17:08 | 只看该作者 来自 广东省汕头市
[s:25]
回复

使用道具 举报

5
发表于 2012-7-26 20:30 | 只看该作者 来自 广东省汕头市
[s:2] 我连R12都省掉了。
回复

使用道具 举报

6
发表于 2012-7-26 20:31 | 只看该作者 来自 广东省汕头市
貌似你图中的第三脚,SPDIFO这个接错了。
回复

使用道具 举报

7
 楼主| 发表于 2012-7-26 20:48 | 只看该作者 来自 湖南省长沙市
引用第5楼哈罗于2012-07-26 20:31发表的 :
貌似你图中的第三脚,SPDIFO这个接错了。

没有哦,我这样输入也是可行的,1.6V左右的电平。实际还是用官方的输入也行的。
FS必须的128FS。
回复

使用道具 举报

8
发表于 2012-7-26 23:22 | 只看该作者 来自 加拿大
这个很强。这两年一直想做一个8选1的数字音频选择器,WM8805的s/pdif 输出有de-jitter很吸引我,但苦于自己mcu编程荒废多年,再捡起来要有些毅力才行,一直没动手。

我的设想简单的很,MCU顺序选择WM8805 的8个s/pdif 输入通道,一旦检测到有效信号(利用WM8805的 UNLOCK 管脚或者通过总线读内部状态标志),就停止在那个输入通道上,直至这个通道信号消失导致WM8805失锁,此时MCU又恢复上面的顺序轮询操作。这个功能要有个开关,需要手动选择通道的时候,就用开关把自动轮询功能禁止掉。

希望你能早日出成品。
回复

使用道具 举报

9
发表于 2012-7-27 01:21 | 只看该作者 来自 天津市河东区
你的设想不简单,一片pic16的极少部分功能就能干,但如果把大量自动化的程序都灌进去,比如自动选择信号通道、自动升频、自动mute、红外遥控器都加上,这就是个高性能的成品机了。

可喜的是,更加省时省力的数字功放控制器已经出来了,spdif信号直接变数字功放信号,没模拟信号什么事,这大概是这两年spdif接收器和DAC不发展的关键因素。
回复

使用道具 举报

10
发表于 2017-3-12 02:21 | 只看该作者 来自 加拿大
一晃快5年过去!!!生命短暂、不能等下去拉。最近终于狠心咬牙动手实现自己的8选1选择器。4个同轴输入,4个Toslink光纤输入,输出是同轴、光纤各一路。软控就偷懒直接用Arduino Nano,用现成的Arduino IDE开发、编译环境,用USB线上载程序到微处理器,用com终端调帮助试程序。目前WM8805核心功能控制已经能正常运行, 8个S/PDIF通道的锁定/失锁判断和通道切换已经实现。下面要做的一是把176.4/192的正确识别完善起来,二是把OLED屏显加进去,三是增加一个简单的单功能遥控,实现手动强迫切换信号通道。

sch-p.jpg (306.02 KB, 下载次数: 155)

sch-p.jpg

pcb.jpg (300.94 KB, 下载次数: 152)

pcb.jpg
回复

使用道具 举报

11
发表于 2017-4-22 18:02 | 只看该作者 来自 江苏省徐州市
怎么不搞c6632 这个芯片更好
回复

使用道具 举报

12
发表于 2017-4-22 18:02 | 只看该作者 来自 江苏省徐州市
hd600240df 发表于 2017-3-12 02:21
一晃快5年过去!!!生命短暂、不能等下去拉。最近终于狠心咬牙动手实现自己的8选1选择器。4个同轴输入,4 ...

怎么不搞c6632 这个芯片更好
回复

使用道具 举报

13
发表于 2017-5-27 02:29 | 只看该作者 来自 加拿大
c6632 没听说啊,怎么好?能给个链接吗?

功能上,WM8805虽有不能自己识别176.4K和192K的缺陷,需要靠控制单片机的帮助实现完整功能,但因它的数字式PLL可以降低透传Spdif 码流jitter,不存在模拟PLL无法避免的VCO附加噪声,还是很有吸引力。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|粤icp备09046054号|耳机网-耳机大家坛

粤公网安备 44030602000598号 耳机大家坛、www.erji.net、网站LOGO图形均为注册商标

GMT+8, 2024-4-19 16:43

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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