打印

在21IC DIY U盘开发板上利用128M FLASH和VS1003B实现MP3播放器(圈

[复制链接]
5602|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
computer00|  楼主 | 2009-4-12 23:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
经过周末两天不眠奋斗,终于让这个MP3播放器完工了~~~~可以播放
MP3、WMA、WAV、MIDI等文件。由于MP3模块占了LCD的位置,所以
这个播放器没得显示,这点比较郁闷……所以只能顺序选曲,不能
随便选曲……

从这里下载整个文件包:https://bbs.21ic.com/upfiles/img/20094/200941415024895.rar

本程序使用21IC DIY U盘开发板+MP3模块实现MP3播放器的功能。
使用板上自带的128MB NAND FLASH作为存储器,因此跳线J18要
设置为FLASH的片选。

当开机时,按住板上任意一个按键,即可进入U盘模式。可以将
音频文件通过U盘模式复制到FLASH中。可以把音频文件放在根
目录下,也可以放在创建的文件夹中(目前程序设置只支持最多
5层目录,如果需要更多的目录层次,需要自己修改程序),播放
时会自动搜索这些目录下的所支持的音频文件(包括MP3、WAV、
WMA、MID)。注意MID文件只支持格式0,其它非格式0的MIDI文件
需要自己先用软件转换为格式0。

本程序只支持FAT32文件格式,因此在格式化U盘时,要选择FAT32。
否则将无法播放音频文件。

开机时,没有任何键按下,将进入MP3播放模式。此时将自动搜索
FLASH中的文件并开始播放。播放完毕后将自动播放下一个文件。

KEY1为播放上一首;KEY6为播放下一首;

KEY2为增加,KEY5为降低,它们在调节音量、低音、高音时使用。

KEY3为播放/暂停控制。

KEY4为KEY2和KEY5功能选择键,按动KEY4时,将在3种功能下切换,
同时LED3和LED4用来指示当前状态。当LED3和LED4都灭时,KEY2和
KEY5用来调节音量大小;当只有LED3亮时,KEY2和KEY5用来调节
低音(截止点80Hz);当只有LED4亮时,KEY2和KEY5用来调节高音
(截止点8KHz)。在调节时,可以长按KEY2和KEY5以增加调节速度,
当按住1s以上不放时,将自动击键,速率为每秒20次。

                                   圈圈  2009-04-12  13:15

相关帖子

沙发
古道热肠| | 2009-4-13 10:34 | 只看该作者

好,鼓掌

哈哈,进展蛮快的,果然牛人一个.建议您还可以研究一个红外遥控接收器的程序,用随开发板配备的遥控器操作开发板比较实用.

使用特权

评论回复
板凳
古道热肠| | 2009-4-13 10:40 | 只看该作者

再传一份红外遥控器芯片的PDF文档,最新找到的,时序较详细

以前的测试程序未实现重复按遥控器按键的重码接收解码功能,在下面这个文档中有详细的介绍,利用其时序图,昨晚已完成在"古道热肠MP3-V2.1"平台上连续按键解码的信号解析操作.打算下一步移植以DIY优盘板上.
相关链接:https://bbs.21ic.com/upfiles/img/20094/2009413103422800.pdf

使用特权

评论回复
地板
古道热肠| | 2009-4-13 10:51 | 只看该作者

请教圈圈,有什么软件可将其它格式的Midi转换成0格式的Midi

电脑圈圈为21IC写的那首Midi在VS1003B上就没放出来,格式不对.

使用特权

评论回复
5
computer00|  楼主 | 2009-4-13 11:25 | 只看该作者

这个把红外模块加上去就行了嘛...遥控器麻烦哦,还要装电

使用特权

评论回复
6
computer00|  楼主 | 2009-4-13 11:30 | 只看该作者

我用的是cakewalk转换的哦……先导入到cakewalk,然后另存为,

格式选择为MIDI 格式0就OK了……不过这个芯片的MIDI合成功能不咋的,比微软的软波表还差很多。

使用特权

评论回复
7
xwj| | 2009-4-13 11:34 | 只看该作者

呵呵,蛋蛋的效率可真高啊~~~

莫非...
















































































用滚的?


























还是...






































有什么扯着?

使用特权

评论回复
8
古道热肠| | 2009-4-13 11:56 | 只看该作者

哈哈,老X不懂了吧,圈圈有贤内助,效率当然高

俺家有个拖后脚的,不到晚上十点干不成活.哈哈,别误会,拖后脚的是俺家小宝.

使用特权

评论回复
9
古道热肠| | 2009-4-13 12:00 | 只看该作者

这VS1003B放Midi是不太好听

当年的<Pal>中多美的Midi,到了里面硬是没感觉.贴上一个能直接放的Midi压缩包.
相关链接:https://bbs.21ic.com/upfiles/img/20094/2009413115736312.rar

使用特权

评论回复
10
computer00|  楼主 | 2009-4-14 15:02 | 只看该作者

修正了程序中的小bug,重新上传一下~~~

原本一个强制转换漏掉了一个“*”,还有在暂停后不能按其它键,否则就死机,同时增加了LED指示暂停状态。
另外还增加了自动切换歌曲前软件复位(MIDI文件除外),防止有些歌曲无声的现象。

欢迎下载:https://bbs.21ic.com/upfiles/img/20094/200941415024895.rar

使用特权

评论回复
11
computer00|  楼主 | 2009-4-14 16:11 | 只看该作者

另外整理一个keil下用RealView版本的程序,没有CARM的可以用这

使用特权

评论回复
12
古道热肠| | 2009-4-14 17:25 | 只看该作者

哈哈,俺下载下来测试了一下,效果蛮好的.

哈哈,圈圈现在的代码比过去为D12写的那些规范多了,整个工程的可读性.可移植性和可维护性都还不错.

使用特权

评论回复
13
computer00|  楼主 | 2009-4-14 23:12 | 只看该作者

哈哈……这个工程就是从俺书中的D12代码移植过来的呀……

另外说到可移植性,在FileSystem.c里面还有一些字节转32位数据的操作直接用的指针操作,这个在移植时会出现大小端的问题,因而可移植性变差了。
可以改成移位和加法的方式来写,但是相应的速度会有所下降。

使用特权

评论回复
14
jetftain| | 2009-4-22 20:29 | 只看该作者

请问这个开发板哪里有卖?

正想找这功能的板子,请问这个开发板哪里有卖?

使用特权

评论回复
15
computer00|  楼主 | 2009-4-27 00:10 | 只看该作者

联系starwx姐姐。

使用特权

评论回复
16
hq_y| | 2009-4-27 01:51 | 只看该作者

果然牛人。。。学习。。。

使用特权

评论回复
17
lixupengarm| | 2011-6-7 00:39 | 只看该作者
学习顶起!!!!!!

使用特权

评论回复
18
lilihua0721| | 2011-6-13 20:14 | 只看该作者
厉害!

使用特权

评论回复
19
FZK374470412| | 2012-8-19 09:20 | 只看该作者
学习了....................

使用特权

评论回复
20
vlsi源合| | 2012-11-26 11:09 | 只看该作者
学习了,顶下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

246

主题

14693

帖子

210

粉丝