秀自制的WAVE播放器(多图执续更新)
前段时间使用OO板、ARM7模块和PCM1793 DAC芯片等器件DIY了一台WAVE播放器,使用了一段时间,觉得音质还是不错的(相对于一千多元的组合音响)。本想买个组合音响放卧室,通过对比后觉得1000多的组合音响音质真的不如自制的WAVE播放器,于是决定还是自己做一套吧。
功放部分自己手头有了八达PH-30,30W+30W的,做个WAVE播放源,再买一对千元以下的书架箱,这样的组合应该比市面1500左右的组合音响强多了吧。
自己拟定需求如下:
1.能播放16bit和24bit 44.1k 的WAVE文件
2.4个按键控制,播放/暂停,上一首,下一首,停止
3.使用LCD1602液晶显示屏显示播放时间,当前播放曲目,总曲目数(彩屏需要字库,暂时就不支持了,这一点不如论坛的X5了)
4.显示屏和按键由专门的单片机控制,通过串口与ARM7通信。使ARM7处理器单线程工作,只读卡播放WAVE文件
5.支持FAT16和FAT32
6.外部使用CPLD做I2S控制器,ARM7和DAC芯片的I2S接口工作在SLAVE状态,最大限度降低JITTER。(ARM处理器内部由于使用锁相环,会使时钟产生JITTER,所以最好的方式是晶振出来的时钟直接用CPLD分频产生BCK和WS)
7.具备掉电记忆功能
8.各模块相互独立,可分开组合使用
使用方案如下:
1.ARM7处理器使用飞利浦的LPC1768,运行频率100MHz,有I2S和SPI接口,SD卡只能工作在SPI模式了,不过实测读速度也能达到6~7Mbps,已大大高于24bit/44.1k音频的2.1168Mbps,数据送到I2S的FIFO使用的是DMA方式,不什么占用CPU,能满足要求了。
2.CPLD使用的是XILINX 的XC9572XL,输入时钟为16.9344MHz,8分频得到Bck(2.1168MHz),384分频得到Ws(44.1KHz)
3.DAC使用PCM1798
4.单片机使用ATMEGA88,内部有512字节EEPROM,可做掉电记忆功能
PCB设计完成
淘宝得知100mm X100mm以下制板要100元,觉得既然做板了,就多做几个方案,各种模块可以相互组合,于是在100mm X 90mm的PCB上同时做了PCM1793,PCM1798两种DAC,CPLD模块,ARM模块和FPGA模块5种独立的模块。单片机板从别处拿了好几块,就不需做了。
在WAVE播放中,FPGA可以完成ARM和CPLD的功能,I2S的FIFO也可做得更大。
pcb打样回来了
PCB背面
先分割成ARM部分和FGPA部分两大部分,
一部分为ARM7+CPLD+PCM1798
另一部分为FPGA+PCM1793
还可以分出CPLD模块,PCM1793模块等,各模块之间留有链接座,可互联
ARM播放板焊好了2块,一块用于装成整机,一块用于调试
PCM1798部分特写
通电运行
未完待续 真行!难度有点大吧! 不错, 支持一下. 本帖最后由 jgk1818 于 2013-1-9 21:24 编辑
软硬兼施,LZ强大!DAC可以换成TDA1541玩玩吗? 简直太帅啦! 强大,支持下 这个难度有点大! 楼主牛人一个! LZ强大,是学习的榜样。 强大的,都要支持! 难度有点大 表面安装怎么搞的?很厉害啊! 很不错。支持 崇拜楼主啊! 谢谢大家的关注
1、板上没有BGA封装的器件,使用普通电烙铁就可以焊接好所有贴片器件了,不过有大量0402封装的电阻电容,需要很细的镊子才能快速焊接好。
2、可以接TDA1541的,TDA1541和PCM1798都可工作在I2S模式,只有BCK不一样,改一改I2S控制器就可以了。
3、ARM播放板已调试完成,不过固件还没有完善好,目前还不支持FAT32的卡,后续再完善吧。
4、使用FPGA播放WAVE是完全可行的,FPGA开发板有从CF卡播放WAVE的例子,自己对这个例子加以改进,在开发板上成功试过从SD卡播放WAVE文件,SD卡工作在SPI模式。这次做的FPGA播放板还没来的及调试,有空了再调试吧。
5.打算中午休息时装整机(正在上班),下午下班后上图。 谢谢大家的关注
1、板上没有BGA封装的器件,使用普通电烙铁就可以焊接好所有贴片器件了,不过有大量0402封 ...
jamming 发表于 2013-1-10 08:57 http://bbs.hifidiy.net/images/common/back.gif
老兄好我最近也在学这个 我是初学者所以打算搞简单点因为STM32资料比较多所以我打算用STM32F103RCT6这个CM3架构的ARM单片机一块单片机搞定用它的I2S接口直接输出您觉得是否可行 楼主太强大了; 又完成一部分了,更新一下
解码板介绍
解码板背面
有源晶振
LCD1602
单片机板接口
SD卡小板
机箱
布局
面板
面板背面
底板打孔
后板安装