77

主题

4

好友

1797

积分

侠之大者 当前在线

该用户已被禁言

Rank: 6Rank: 6

UID
5331
帖子
1767
精华
0
经验
1797 点
金钱
1471 ¥
注册时间
2005-8-23
发表于 2025-7-2 22:50 | 显示全部楼层
本帖最后由 mzzfg 于 2025-7-2 23:39 编辑

故事,要回顾到20多年前那个风雨交加的晚上,我当时正在使用一台国产山寨级CD机欣赏着发烧天碟,每次大跨度的选曲,都能体会到生命在飞速流逝。这时,一个朋友抱来了他的万利达N28,表达了想要小小的PK一下的诉求。作为一名资深发烧友,把友机P得体无完肤乃是人生的至高享受,于是我欣然同意,果断摆开了战场。甚至,我已经预测到了他铁青着脸抱走机器的画面,要知道我的“山寨货”里可是塞满了各种发烧运放、补品电容及各种高端线材,重放效果已非吴下阿蒙,早达到了登峰造极之境!
PK开始,接下来,我深深的体会到了什么叫被P得体无完肤!未经任何打摩的万利达一开声,立即展现出它强大的技术优势,平衡温暖又不失细腻的声音,甩开了那台山寨货几大条街。山寨货冷硬、浮燥又不失呆板的缺点暴露无余,尤其是飞利浦机芯那超强的读盘能力,和火箭一般的寻迹速度,简直就是降维秒杀。夜已深,心满意足的友人绽放着满脸的菊花,早抱着他的爱机走了,我抽着闷烟陷入了深深的沉思。至那以后,无数个日日夜,每当我看到角落散满灰尘CD唱片,友人那张灿烂的笑脸总会浮现在眼前,脑海里不由自主又回荡起CDM12顺滑的寻迹声……时光飞逝,转眼间20多年过去了,在我的人生记忆深处,偶尔还会回响起CDM12中顺滑的寻迹声音。终于,今天我决定要终结它——我要手搓一台飞机。
第一步:先搞个机芯。
VCD作为当年最普及的家庭影音设备,曾风靡了整个中国的大江南北。淘汰后,大量涌入二手市场上被拆解成各种部件,花了两包烟的代价,我很轻易的就得到了两个CDM12机芯,其中一个是SAA7345,另一个是SAA7372,两者并没有多大区别,控制系统完全兼容。

微信图片_20250630225336.jpg 微信图片_20250630225340.jpg

拿到机芯后的第一步就是做个彻底的清理,除灰尘、洗光头、打润滑脂等,确保机芯状态正常。

微信图片_20250630224845.jpg 微信图片_20250630224932.jpg

随后,检查PCB,把存在虚焊、明显损坏的地方进行修复,由于年代久远,板上的电容元件特别是电解电容,很容易漏电失效,把它们全部换掉。

微信图片_20250630224921.jpg
微信图片_20250630224917.jpg


DSA控制接口和数字输出接口,有清晰标示,无需去查DSP管脚。至此,机芯性能应该已经恢复到巅峰状态,接下就该进行第二步了。

第二步:选择控制方式。
光有机芯是没有任何作用的,得想办法让它动起来。这就需要有一块控制板,通过DSA指令对CDM12进行操作。关于控制板,有三个选择:1、买成品的控制板,这不符合手搓的定义,而且价格不菲,这会让本来就不富裕的我更加的雪上加霜,PASS。2、用51单片机,下载别人写好的程序。我找遍了全网,只找到创梦前辈开放的一个程序,但创梦的程序有两个显示的BUG,一个是出仓逻辑有问题,通过修改硬件接线加装一个到位检测开关可以解决,但另一个BUG让我不得不放弃了使用它。那就是一旦读盘出错,它就会果断的死机,没有任何反应,唯有强行把碟片取出再重启,严重影响使用体验。那么最后只剩下一个选择,3、自己写程序,优点是自由度高,可随意修改。由于编程水平有限,我决定选择性能强悍无匹的ESP32,它具有强大的运算能力和大的内存,完全可以轻松驾驭我的屎山代码,且ESP32还拥有WIFI和蓝牙,可以让CD机轻松实现物联控制等更具现代化的功能。
微信图片_20250630233519.jpg
ESP32开发板,体积小巧性能强劲。
微信图片_20250630233313.jpg
给它做了一块扩展板,一是为了日后方便连接固定,二是放大GPIO编号标识,毕竟年纪大了眼神不好,顺便把CDM12的供电部分也画在了上面。
第三步:控制程序的编写。
相对前两步来说,程序的编写要困难一些,因为本人是编程小白,代码能力相当有限,很多东西都是现学现卖的。为了降低难度,选择了相对容易学习的python语言,其中参考了国外很多大神的文章,并借鉴了一个Arduino的库,最终才完成了代码的编写。目前有很多单片机支持用Python开发,其中ESP32就属于价格便宜量又足的,在电脑上安装好Thonny软件就可以编写代码了。用Thonny开发ESP32非常方便,它自带的交互窗口可以实时观察代码的运行情况,而且代码是即改即生效的,仅仅只是点击一下“运行”,完全省去了繁琐的编译、上传过程。 微信图片_20250702213618.png
其实说穿了飞机的控制很简单,就是通过单片机向伺服CPU发送DSA指令,伺服CPU收到指令后控制机芯执行相应的动作。比如发送0x03给伺服CPU,伺服CPU就会开启激光器并启动转盘电机开始读取光碟的目录,读取成功后返回曲目数总时长等信息。具体的指令和用途,可参考飞利浦的DSA文档,内有详细说明。我在编写的过程中,发现快速向前和向后搜索(快进、快退)指令不起作用,也不知道是什么原因,好在并不影响日常使用,就索性取消了这个功能。

第四步:人机接口。
人机接口就是控制面板,人机接口的好坏,关系着整部机器的使用体验。最初的时候,我是使用了一块I2C接口的1602显示屏,配合ADC电阻键盘使用,整体操作流畅显示效果也还过得去。但,对于一台高级CD机来说,这样的组合显得很不高级,很容易让我回忆起当初的那台山寨货。
微信图片_20250702214711.jpg 微信图片_20250702215129.jpg

帖子太长,编辑很困难,重开一楼(论坛BUG下面多了一张图片,无法删除):




微信图片_20250630224927.jpg

77

主题

4

好友

1797

积分

侠之大者 当前在线

该用户已被禁言

Rank: 6Rank: 6

UID
5331
帖子
1767
精华
0
经验
1797 点
金钱
1471 ¥
注册时间
2005-8-23
 楼主| 发表于 2025-7-2 23:11 | 显示全部楼层
本帖最后由 mzzfg 于 2025-7-2 23:40 编辑

为了解决美观问题,加上机箱的问题也是个大问题。考虑再三,咬咬牙又花了三包烟捡回来一台坏的万利达N28A,本以为又有一个CMD12机芯,没想到N28A根本不是飞利浦的机芯,虽然有点小失望但我本来目的就是要那个机箱。

微信图片_20250702223127.jpg

一番拆解后,我得到一个非常漂亮的VFD显示屏,还免费赠送了键盘扫描电路,还有一个现成的红外接收头可用。VDF和键盘扫描的控制芯片是常见的16312,经查询PDF文件后,为它编写了读写代码,先实现指令的发送和数据接收,再使用土办法把每一个显示点的段码找出来,虽然耗了点时间,但当屏幕的所有字符被点亮后,感觉一切都是值得的。

微信图片_20250702223038.jpg 微信图片_20250702223032.jpg

第五步:音频解码。
关于音频解码部分,可供选择的实在太多,因为CDM12的可玩性极高,它可通过软件设置不同的输出格式,我这里选择的是PCM1794。一是因为1794这颗解码本就是为高级CD设计的,拥有不俗的性能指标的同时价格还相当便宜,同样是可玩性极高的一颗芯片。它不仅支持多种数据格式输入,还可通过跳线选择内部数字滤波器的斜率,我个人喜欢的模式是I2S输入、平缓滤波。在这种模式下,1794有着非常通透的高频和温暖的声底。

微信图片_20250702225853.jpg

为了省钱,除了芯片本身花了1包半烟外,其它元件都是拆机的旧元件,4颗大S的5534是20多年前收藏的藏品。记得当时它静静躺在某电子元件经营部无人问津,被我低价全部拿下了。

最后一步:组装。
到了这一步,其实也没多少可写的了,无非就是一些打孔对位上螺丝的工作。电源方面一组5V供ESP32和面板芯片,一组9V供机芯。另外有一组+-12供给运放,两组单独的5V分别供给1794的数字和模拟电源。值得一提的是,+-12V电源在使用时,7912的温升比7812要高很多,也不知道是什么原因,等后续换一片稳压IC试试。
微信图片_20250702231216.jpg

微信图片_20250702231210.jpg 微信图片_20250702231744.jpg

试听感受:
整机完成后,迫不及待的进行了试听,结果令我非常满意。飞机强悍的数字伺服系统,保障了数字音频信号输出的稳定,加上高素质的PCM1794,整体声场庞大稳如泰山,背景干净如黑夜般宁静,高频光滑如丝绸,低频深沉有力不浮不紧,可以说是全面秒杀当年的n28。最后感慨的说一句:终于在20多年后,我成功的击败了万利达N28!如今,那丝滑无比的寻迹声,已经进入现实,再也不会在梦中出现!




1

主题

0

好友

211

积分

业余侠客 当前离线

Rank: 4

UID
917118
帖子
216
精华
0
经验
211 点
金钱
209 ¥
注册时间
2021-8-19
发表于 2025-7-3 10:55 | 显示全部楼层
致敬楼主的执着、学习能力、动手能力,至今还保留着当年的N28,我记得这款机器是中置片仓啊,型号我记错了?

1

主题

0

好友

150

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
1099620
帖子
158
精华
0
经验
150 点
金钱
148 ¥
注册时间
2024-5-13
发表于 2025-7-3 12:07 | 显示全部楼层
楼主确实牛啊

54

主题

2

好友

1452

积分

侠之大者 当前离线

Rank: 6Rank: 6

UID
585168
帖子
2337
精华
0
经验
1452 点
金钱
1339 ¥
注册时间
2013-4-20
发表于 2025-7-3 12:47 | 显示全部楼层
我的N28在老家用过好几年,后来流行DVD,再后来改用纯CD,N28用料扎实,可能被老妈、爸当废品卖了,一直没找到。

77

主题

4

好友

1797

积分

侠之大者 当前在线

该用户已被禁言

Rank: 6Rank: 6

UID
5331
帖子
1767
精华
0
经验
1797 点
金钱
1471 ¥
注册时间
2005-8-23
 楼主| 发表于 2025-7-3 14:34 | 显示全部楼层
LN_YXY 发表于 2025-7-3 10:55
致敬楼主的执着、学习能力、动手能力,至今还保留着当年的N28,我记得这款机器是中置片仓啊,型号我记错了 ...

这是N28A,N28有好几个型号。

77

主题

4

好友

1797

积分

侠之大者 当前在线

该用户已被禁言

Rank: 6Rank: 6

UID
5331
帖子
1767
精华
0
经验
1797 点
金钱
1471 ¥
注册时间
2005-8-23
 楼主| 发表于 2025-7-3 14:35 | 显示全部楼层
hezh0769 发表于 2025-7-3 12:47
我的N28在老家用过好几年,后来流行DVD,再后来改用纯CD,N28用料扎实,可能被老妈、爸当废品卖了,一直没 ...

N28的面板特别适合改CD,低调工整。

20

主题

5

好友

1507

积分
     

侠之大者 当前离线

Rank: 6Rank: 6

UID
318978
帖子
2077
精华
0
经验
1507 点
金钱
1427 ¥
注册时间
2011-4-14
发表于 2025-7-3 14:44 | 显示全部楼层
要省钱又会写代码为什么不用1792?便宜一半效果一样。

77

主题

4

好友

1797

积分

侠之大者 当前在线

该用户已被禁言

Rank: 6Rank: 6

UID
5331
帖子
1767
精华
0
经验
1797 点
金钱
1471 ¥
注册时间
2005-8-23
 楼主| 发表于 2025-7-3 16:21 | 显示全部楼层
cq120104 发表于 2025-7-3 14:44
要省钱又会写代码为什么不用1792?便宜一半效果一样。

代码水平太低,以搜索和借鉴(抄袭)为主

271

主题

5

好友

494

积分
     

业余侠客 当前离线

音响玩了近30年,对于发烧的热忱从未改变过。

Rank: 4

UID
510515
帖子
7286
精华
0
经验
494 点
金钱
301 ¥
注册时间
2012-7-12
发表于 2025-7-3 16:42 | 显示全部楼层
20多年前那个风雨交加的晚上....
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc.

返回顶部