搜索
bottom↓
回复: 97
打印 上一主题 下一主题

【原创开源】班门弄斧,我的便携WAV播放器,希望大家支持

  [复制链接]

出0入21汤圆

跳转到指定楼层
1
发表于 2013-10-16 10:15:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 kunnsd 于 2013-11-14 11:23 编辑

写在开始:
这个播放器是我历时三年,断断续续做的,当时也承诺过阿莫要开源的,说实话,这个播放器的功能有限,功耗还比较大,只是音质还不错,我知道在论坛有很多音响方面的高手,所以我的标题就说了是班门弄斧,还请高手们留下建议与激励,讽刺与谩骂就不要留下了,之所以选在我任版主的板块开源,就是方便我的管理,音响类的东西,很容易骂声一片,虽是小人行径,还请大家见谅!
作品介绍:
这个播放器从2010年开始断断续续的已经做了3年了,每次都是只有在假期才能进行一点点改进,这个PCB是今年寒假就做好了,当时只是简单的硬件测试就撂下了,这个暑假开始完善
MCU使用nios ii,本来考虑过STM32,但是为了得到更高的IIS信号质量所以用FPGA做,在FPGA里做了硬件IIS模块,并且开辟了48bit 4k的FIFO进行缓冲,以保证信号质量,
DAC使用常见的WM8740,LPF用了两片OPA2604,耳机放大使用了TPA6120,电源部分FPGA部分是TPS63001+TPS76301,模拟部分是TPS61087升压,TPS63700负压转换,
LT1962正线性稳压,LT1964负线性稳压,TPS76301给WM8740的模拟部分。LPF和耳机放大使用了±8V的供电电压,所以整机耗电惊人,单节锂电供电,电流消耗大概340mA,
使用的3700mAh的电池也就10个小时,使用MAX1926为电池充电,充电电压比较宽泛,达到了5~12V,充电电流800mA。
MCLK时钟使用双时钟,24.576MHz和22.5792MHz,可以支持44.1kHz 16bit至96kHz 24bit 的WAV文件。
移植了FATFS,支持中文长文件名,准备下一次做板是加上录音功能,也支持44.1kHz 16bit至96kHz 24bit,实现当年的想法:
http://www.amobbs.com/forum.php? ... ighlight=sony%2Bm10
以上是抄我在三文鱼板块发的帖子的内容,就算是简单介绍了。

显示使用了尺寸为1.77寸的彩色OLED,分辨率为160×128。在该播放器中把它当单色来使用,就是黑底白字,非常漂亮,只有在显示开机画面时才能看到是彩屏。
显示的字宽度是不同的,这样可以有效利用分辨率不高的显示器。


照片:






开机画面:




原理图:

PCB:








对于SD卡的访问,使用SPI模式,大家都知道SD卡使用SPI模式是初始化要用低速率的时钟几百KHz,初始化完成后使用高速率的时钟(最大25MHz)以实现高速读取,对于一般的单片机来说只是设置一下SPI时钟控制寄存器而已,但是愚蠢的NIOS II处理器的SPI时钟速率是固定的,不能通过设置寄存器来改变,所以就在NIOS II的CPU里做了两个SPI接口,一个低速的100KHz,用于SD卡的初始化,另一个25MHz高速的,用于SD卡的读取。
因为使用了FATFS R0.09a,所以现在使用SPI读取SD卡只能实现96kHz 24bit WAV文件的播放,不使用文件系统则可以播放192kHz 24bit的文件,但是支持192kHz的意义不大,我找到的唯一一个192kHz 24bit的文件就是那个四百多兆的《加州旅馆》,而96k 24bit得出支持还是很有必要的,资源和比较多。
可以支持32G的SDHC卡,存储容量是没有问题的,现在SANDISK的32G C10的卡在京东上也不过就130块,我手头有2G,4G,8G,16G,32G的卡,都测试过,没有问题,品牌有金士顿,SANDISK,SONY和NOKIA手机带的不知品牌但标着NOKIA的2G TF卡戴套。

时钟使用双时钟,时钟速率的选择是根据DAC的手册提供的时钟表确定的,只是22.5782MHz的晶振不是很好买。


我觉得这个播放器如果用STM32F407+FPGA/CPLD的话应该会更好些,F407的SDIO口应该更快,没有试过,F103的SDIO用过,不稳定,不知407会不会改进。用FPGA/CPLD做时钟和IIS和其他的一些数字音频接口,这样的话应该功耗会低一些。

DAC使用大家熟悉的WM8740,这个DAC指标比较高而且价格低廉,容易买到,LPF使用WM8740数据手册中推荐的线路,耳放也是TPA6120数据手册的推荐线路,所以电路部分很简单。

播放功能很简单,支持文件夹播放,单曲循环,全部循环和顺序播放,所以可以将一张专辑建一个文件夹。




编辑中……

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入21汤圆

2
 楼主| 发表于 2013-10-16 10:15:42 | 只看该作者
站位                                   

出0入21汤圆

3
 楼主| 发表于 2013-10-16 10:16:04 | 只看该作者
站位                              

出0入0汤圆

4
发表于 2013-10-16 10:19:23 | 只看该作者
精品贴留名占位,广告位招租。

出0入0汤圆

5
发表于 2013-10-16 10:20:44 | 只看该作者
顶起!!  前辈现在是研究生还是留校当老师了?

出0入0汤圆

6
发表于 2013-10-16 10:24:24 | 只看该作者
顶~~期待开源

出100入101汤圆

7
发表于 2013-10-16 10:35:40 | 只看该作者
等待高手解析

出0入0汤圆

8
发表于 2013-10-16 10:39:10 | 只看该作者
占位支持~

出0入0汤圆

9
发表于 2013-10-16 10:40:58 | 只看该作者
好贴期待中。。。

出0入0汤圆

10
发表于 2013-10-16 10:58:55 来自手机 | 只看该作者
前排招租 已经感兴趣好久了 一直打算自己也做一个

出0入0汤圆

11
发表于 2013-10-16 11:03:36 | 只看该作者
标记!!!!

出0入0汤圆

12
发表于 2013-10-16 11:16:41 | 只看该作者
标记一下,要是stm32搞的还可以深入研究一下

出0入0汤圆

13
发表于 2013-10-16 11:20:51 | 只看该作者
火钳刘明                       关注一下 lz                                                              

出0入0汤圆

14
发表于 2013-10-16 11:29:36 | 只看该作者
顶起,膜拜。

出0入0汤圆

15
发表于 2013-10-16 11:37:31 | 只看该作者
火钳刘明

出0入0汤圆

16
发表于 2013-10-16 11:40:40 | 只看该作者
标记~~~~~~~~~~~~~~~~~~~

出0入0汤圆

17
发表于 2013-10-16 11:41:31 | 只看该作者
先顶了 漫漫看

出0入0汤圆

18
发表于 2013-10-16 11:52:07 来自手机 | 只看该作者
出个套件吧!

出0入0汤圆

19
发表于 2013-10-16 11:55:14 来自手机 | 只看该作者
我想直接要一个成品,跟当年要示波器成品一样。

出0入0汤圆

20
发表于 2013-10-16 12:04:57 | 只看该作者
顶坤哥,目测会火。

出0入0汤圆

21
发表于 2013-10-16 12:14:17 | 只看该作者
顶                           

出0入0汤圆

22
发表于 2013-10-16 12:15:24 | 只看该作者
支持,

出0入0汤圆

23
发表于 2013-10-16 12:24:48 | 只看该作者

出20入0汤圆

24
发表于 2013-10-16 12:32:40 | 只看该作者
好东西,看日后有没发行套件

出0入0汤圆

25
发表于 2013-10-16 12:39:16 | 只看该作者
话说我很的很感激你的电源部分!!!!!!!!!

~~~~~

出0入0汤圆

26
发表于 2013-10-16 12:39:37 | 只看该作者
软核 + 逻辑?

出0入0汤圆

27
发表于 2013-10-16 12:48:19 来自手机 | 只看该作者
mark         

出0入0汤圆

28
发表于 2013-10-16 13:07:26 | 只看该作者
支持再出个套件

出0入0汤圆

29
发表于 2013-10-16 13:07:26 | 只看该作者
都落灰了,果然凉了很久了

出0入0汤圆

30
发表于 2013-10-16 13:11:52 | 只看该作者
这个,要支持一下

出0入0汤圆

31
发表于 2013-10-16 13:34:51 | 只看该作者
为什么fpga的IIS信号质量会更好呢

出0入0汤圆

32
发表于 2013-10-16 14:33:27 | 只看该作者
MCU为什么不用M4呢?能省不少事吧 USB的什么都全

出0入21汤圆

33
 楼主| 发表于 2013-10-16 16:16:15 | 只看该作者
yuhang 发表于 2013-10-16 14:33
MCU为什么不用M4呢?能省不少事吧 USB的什么都全

刚开始弄这个的时候,M4还没出来呢

出0入21汤圆

34
 楼主| 发表于 2013-10-16 16:18:35 | 只看该作者
bulejeans 发表于 2013-10-16 13:34
为什么fpga的IIS信号质量会更好呢

使用独立的时钟系统,时钟不经过PLL,而且IIS输出开辟了4k的fifo,没有一般MCU的中断问题,数据绝不断流

出0入0汤圆

35
发表于 2013-10-16 16:24:41 | 只看该作者
很厉害!!!mark

出0入0汤圆

36
发表于 2013-10-16 17:05:05 | 只看该作者
支持, 东西很不错, 赞一个.

其实我觉得ARM I2S slave + codec I2S master方案更好, 比如stm32F4+wm8804, 毕竟专业音频芯片厂家能很好控制PLL和jitter, 个人写的fpga/cpld的I2S时序未做严格测试, jitter和wander未必有保证, 未必好过音频厂家.

出0入4汤圆

37
发表于 2013-10-16 17:17:23 | 只看该作者
大师的作品要顶!

出0入0汤圆

38
发表于 2013-10-21 02:25:11 | 只看该作者
用到这颗FPGA,成本下不来

出0入0汤圆

39
发表于 2013-10-21 23:55:21 | 只看该作者
这个要支持。
192K音源慢慢也多起来了,目前USB声卡都在抄32bit/384Khz与DSD音源。

出0入0汤圆

40
发表于 2013-10-22 08:38:15 来自手机 | 只看该作者
顶了    支持下

出0入0汤圆

41
发表于 2013-10-22 08:45:49 | 只看该作者
学习, mark

出0入0汤圆

42
发表于 2013-10-29 14:15:32 | 只看该作者
占位收藏~

出0入0汤圆

43
发表于 2013-10-30 08:52:32 | 只看该作者
kunnsd 的知识面是在是太宽了,各个领域都游刃有余。

出0入0汤圆

44
发表于 2013-10-30 09:09:34 | 只看该作者
太牛啦!

出0入0汤圆

45
发表于 2013-10-30 09:12:52 | 只看该作者
拿着小刀看耍斧头的!!!店家,有斧头卖没?

出0入0汤圆

46
发表于 2013-10-31 19:15:00 | 只看该作者
哪天有空也搞搞看看...

出0入0汤圆

47
发表于 2013-10-31 19:46:15 | 只看该作者
感谢魏大师的无私奉献!

出235入8汤圆

48
发表于 2013-10-31 19:58:12 | 只看该作者
真是不错的东西

出0入0汤圆

49
发表于 2013-10-31 22:06:27 | 只看该作者
相当的好啊,FPGA果然万能

出0入0汤圆

50
发表于 2013-11-7 10:24:44 | 只看该作者
顶一下 强烈支持!!!

出0入0汤圆

51
发表于 2013-11-8 09:31:01 | 只看该作者
要是发布套件多好,我想要一套。

出0入0汤圆

52
发表于 2013-11-10 13:27:47 | 只看该作者
好东西,静等出套件!

出0入0汤圆

53
发表于 2013-11-10 14:55:26 | 只看该作者
坤大,正在研究你的这个prj,看坤大的代码和fpga构架,真是软硬高手啊,不过小弟有两点不明,1是那个atmega8-16单片机的用途,2是u19 ,从原理图看是个串行flash,但是你的板子上也没焊接,它有什么用呢?

出0入0汤圆

54
发表于 2013-11-12 12:02:44 | 只看该作者
楼主牛人啊!顶下

出500入0汤圆

55
发表于 2013-11-12 14:58:46 | 只看该作者
请问这个音量是怎么控制的?谢谢!

出0入0汤圆

56
发表于 2013-11-13 15:29:45 | 只看该作者
tendy 发表于 2013-11-10 14:55
坤大,正在研究你的这个prj,看坤大的代码和fpga构架,真是软硬高手啊,不过小弟有两点不明,1是那个atmega ...

ROM是保存FPGA程序的,和FPGA相连的。这个没有问题。
我的一个问题和你相同,就是ATMEGA8是做什么用的?从图上看应该是没有用到,也不用下载程序进去了。还请楼主帮忙看一下。

出0入0汤圆

57
发表于 2013-11-13 15:35:41 | 只看该作者
why800 发表于 2013-11-13 15:29
ROM是保存FPGA程序的,和FPGA相连的。这个没有问题。
我的一个问题和你相同,就是ATMEGA8是做什么用的? ...

rom不是存epcs配置芯片吗?另外这个atmega8我搞懂了,是坤大专门用来做电量显示用的,只用了adc功能,其实完全可以用个串行adc芯片就行了,用这个atmega8还要单独写程序,不过好像坤大的代码里面没看到这个atmega8的程序。

出0入42汤圆

58
发表于 2013-11-13 16:05:24 | 只看该作者
看起来不错,就是体积稍大了些

出0入0汤圆

59
发表于 2013-11-13 19:37:11 | 只看该作者
很佩服楼主做的数字示波器,有空了我也想做一个。还想问楼主4G以上的卡可以使用SPI总线控制吗?

出0入0汤圆

60
发表于 2013-11-13 20:05:14 来自手机 | 只看该作者
bucuo 不错

出0入0汤圆

61
发表于 2013-11-13 23:16:15 | 只看该作者
楼主做的不错啊

出0入0汤圆

62
发表于 2013-11-14 19:29:05 | 只看该作者
赞一个,不错的设计

出0入0汤圆

63
发表于 2013-11-15 19:43:44 | 只看该作者
这个OLED屏啥型号,楼主提供下购买网站吧

出0入0汤圆

64
发表于 2013-11-15 20:38:18 | 只看该作者
不错不错,收藏了。

出0入0汤圆

65
发表于 2013-11-18 17:01:06 | 只看该作者
楼主谦虚了,不要太吊哦,厉害啊

出0入0汤圆

66
发表于 2013-11-18 18:01:14 来自手机 | 只看该作者
支持一下!!!

出0入0汤圆

67
发表于 2013-11-27 14:58:01 | 只看该作者
mark 不错

出0入0汤圆

68
发表于 2013-11-29 10:02:37 | 只看该作者
很好,谢谢楼主分享

出0入0汤圆

69
发表于 2013-11-29 16:14:11 | 只看该作者
多谢分享

出0入0汤圆

70
发表于 2013-12-4 21:11:57 | 只看该作者
强大的楼主。

出0入0汤圆

71
发表于 2013-12-4 21:53:48 | 只看该作者
好帖要顶,多谢楼主啊

出0入0汤圆

72
发表于 2013-12-4 21:59:29 | 只看该作者
哎呦不错哦

出0入0汤圆

73
发表于 2013-12-5 09:34:54 | 只看该作者
很好,多谢分享

出0入0汤圆

74
发表于 2014-3-6 19:51:10 | 只看该作者
很好,多谢分享

出0入0汤圆

75
发表于 2014-4-15 17:42:31 | 只看该作者
楼主真的厉害啊!

出0入0汤圆

76
发表于 2014-4-22 09:55:30 | 只看该作者
体积比较大哦,拿起来不方便

出0入0汤圆

77
发表于 2014-6-3 16:51:29 | 只看该作者
强烈要求出套件,自已制作播放器

出0入0汤圆

78
发表于 2014-7-7 22:05:34 | 只看该作者
有没有套件?

出0入0汤圆

79
发表于 2014-7-29 23:11:20 | 只看该作者
今晚上好像 附件浏览不了

出0入0汤圆

80
发表于 2014-8-19 09:45:44 | 只看该作者
怎么现在才发现这个帖子呢,实在太感谢了!

出0入0汤圆

81
发表于 2014-8-27 17:14:29 | 只看该作者
首先对楼主的手艺赞一下,
请问楼主48bit 4k的FIFO进行缓冲,对于不同的IIS格式都能缓冲吗? 16bit和24bit是不是分别一个单元可以放3个或者2个数据? 对于24bit192k有40ms缓冲时间吗

出0入21汤圆

82
 楼主| 发表于 2014-8-29 17:07:14 | 只看该作者
david2002guo 发表于 2014-8-27 17:14
首先对楼主的手艺赞一下,
请问楼主48bit 4k的FIFO进行缓冲,对于不同的IIS格式都能缓冲吗? 16bit和24bit ...

这个FIFO是对并行的48bit数据进行缓冲,在IIS之前,也就是两个通道的24bit,如果是16bit的文件则只占用高16bit

出0入0汤圆

83
发表于 2014-8-30 11:24:30 | 只看该作者
谢谢回答,FIFO的存储是通过外扩的SDRAM吗,还是FPGA(altera cyclone)内部的? 不太懂FPGA架构。
FIFO的好处是I2S的时钟可以去抖动,那么新的时钟用的时钟源是外部有源晶振吗,是什么厂家的,性能怎样

出0入0汤圆

84
发表于 2014-9-7 20:17:10 | 只看该作者
很好,多谢分享。

出0入0汤圆

85
发表于 2014-9-7 20:54:10 | 只看该作者
好东西嘿嘿 学习了

出0入0汤圆

86
发表于 2014-9-7 21:38:24 | 只看该作者
好东西,好东西

出0入0汤圆

87
发表于 2014-9-15 00:15:11 来自手机 | 只看该作者
好东西,学习了

出0入0汤圆

88
发表于 2014-10-15 20:06:49 | 只看该作者
支持魏坤的作品,默默的关注好久了,你是国产大学生的榜样!

出0入0汤圆

89
发表于 2014-10-15 20:12:13 | 只看该作者
哇 牛人   

出0入0汤圆

90
发表于 2014-11-6 13:35:24 | 只看该作者
谢谢分享,Mark一下

出0入0汤圆

91
发表于 2014-11-13 17:45:51 | 只看该作者
楼主说F103的SDIO用过,不稳定,是什么现象呢,我用了好久没发现问题啊。。

出0入0汤圆

92
发表于 2015-4-14 20:23:44 | 只看该作者
谢谢,分析

出0入0汤圆

93
发表于 2015-8-5 21:33:53 | 只看该作者
请教魏老师那个AT的单片机是干啥用的,驱动屏幕吗??

出0入0汤圆

94
发表于 2015-8-6 03:59:17 | 只看该作者
高手这个能播放MP3吗?

出0入0汤圆

95
发表于 2015-10-31 21:32:22 来自手机 | 只看该作者
支持一下!!!

出0入0汤圆

96
发表于 2015-12-24 13:12:50 | 只看该作者
好高级的,我也想做个!想和楼主一起讨论下

出0入0汤圆

97
发表于 2017-9-9 16:15:45 | 只看该作者
挖到了!看到了MAX1926,还是可以的,最大可以2A,你电路上设置了560mA。
有一个问题,估计电路功耗比较高,外部电源插入,电池在边充电边放电。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 22:14

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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