打印
[开源硬件]

【21ic分享赛】 基于51单片机的MP3点播器

[复制链接]
6080|38
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

在当今ARM风行天下的时代,传统的51单片机其生存空间可谓是“压,压力压力大”呀。
那能用51单片机做点啥呢?
其实51单片机若能合理地与一些功能模块相配合,还是能够有所作为的,不信就看看这
个基于51单片机的MP3点播器吧,来请上三视图吧。
该点播器所用的是一种支架式的安装结构,由于是供实验测试的样机,所以连线比较乱,
若是成品的话会更美观些。当然最终的结构应是在现有基础上,进一步折叠化,使其更便
于携带,也更加精致。
                   图1 侧视图
         图2前视图                            3后视图

一、结构构成   
    该设计主要由三部分构成,即双色OLED显示环节、核心处理环节及MP3播放环节,具体内容如图4所示。
其中,点播菜单及相应功能的选择是通过0.96’双色OLED屏来显示的,它是一种无需
背光的自发光器件。尽管该模块体积很小,但分辨率却达128*64。对于采用IIC接口的
OLED,其引脚只有4,所以很节省GPIO资源。该双色OLED显示屏,其上部的1/3为黄
色,余下的2/3则为蓝色,其显示效果如图所示。
    4个引脚从左到右的排列顺序依次为VCC(3.3~5V)、GND、SCL时钟、SDA数据引脚。



图5 OLED显示效果


至于MP3播放模块,则是实现语音播放的关键,它有2种工作模式,即简单的独立操控
模式和基于通讯的指令操控模式。
对于独立操控模式,只需配置几个小按键就可对它进行控制,所对应的操作有播放
第一首、下一首、上一首、增加音量、减小音量等。在配置相应电阻的情况下,还可
通过电位的变化来实现播放顺序的指定。
对于指令操控模式,其操控要相对灵活,但需要有串行通讯来配合工作,其通讯波特率
为9600bps。
MP3播放模块的外观及引脚排列顺序如图所示,在以简单模式工作时,其线路原理图如下。

        图6 Mini MP3播放模块

   图7简单控制方式

该模块各引脚的功能如下:
          图8 引脚功能图
    在整个设计中,STC89C52单片机是控制核心,为了便于统一管理,MP3播放模块并没有
直接连接如何按键,而是通过单片机来检测按键状态并进行相应分析,从而显示相应的文字
信息,并将执行的操作通过串口发送给MP3播放模块来实现歌曲的播放。
为了实现中文菜单的显示,可以构建小字库的方式来完成的,所用的工具为PCtoLCD2002,
其界面如图9所示。
       图9 PCtoLCD2002界面
二、MP3播放模块测试方法
为了掌握MP3播放模块的使用,可以两种方式来验证该模块的用法。
1)采用按键测试播放功能
首先按图7的原理图完成连线,然后打开电源,先按下“第一首”的按键,此时MP3播放
模块的指示灯会被点亮。当歌曲播放完毕后,指示灯才熄灭。然后按下“上一首”或
“上一首”按键,则实现相应歌曲的播放。此处需要注意的是播放顺序是与SD卡中存放
的顺序相关的,应记录下这种顺序排列,以便在后面的菜单设计时使用,从而建立菜单
与歌曲的正确对应关系,这一点十分重要!
当然,你如果长按“上一首”或“上一首”的按键,还会起到调节音量的功效。
2)采用串行通讯测试播放功能
有了上面的使用经验,你会问既然这么简单就可以使用了,还设计一个系统来进行控制
不是多此一举吗?
其实并不是这样的,因为在这种方面下除非你整个通过全部的歌曲并将它们的顺序记下,
否则你是不清楚下一首歌的内容的。此外,你也只能按序向上或向下顺序播放,是不能
按意愿进行有选择的跳跃式播放的。
另外,还一个情况就是这样要派上不少的按键,而在本设计中各种操作则只需一个按键
就能完成。
在进行串口测试前,你需要提前在电脑中安装一个串口助手软件,并配备一个RS232转TTL的
串行通讯模块,这样就可以将控制指令传送给MP3模块,从而验证指令及其格式的对错了,也
为后面的程序设计提前做好了准备工作。
           图10 串行通讯指令控制
控制MP3模块的常用的指令有:
播放:7E FF 06 0D 00 00 00 FE EE EF
暂停:7E FF 06 0E 00 00 00 FE ED EF
上一首:7E FF 06 01 00 00 00 FE FA EF
下一首:7E FF 06 02 00 00 00 FE F9 EF
结束:7E FF 06 16 00 00 00 FE E5 EF
测试时,先将MP3模块与串口转换模块连接好,然后再按图10进行通讯参数的设置,并打开串口。
之后,将测试的指令复制到方式栏,并点按“发送”按键就可将指令传送到MP3模块,在指令
正确的情况下,MP3模块马上就会响应指令并执行。


相关帖子

沙发
chensy279| | 2016-7-18 11:21 | 只看该作者
51原来还可以这么用 学习了

使用特权

评论回复
板凳
21ic小喇叭| | 2016-7-18 11:37 | 只看该作者
这个很赞!

使用特权

评论回复
地板
jinglixixi|  楼主 | 2016-7-18 12:49 | 只看该作者
chensy279 发表于 2016-7-18 11:21
51原来还可以这么用 学习了

感兴趣就一起玩吧!

使用特权

评论回复
5
changle11sdo5| | 2016-7-18 13:29 | 只看该作者
意思是说人工先写入歌名给单片机?我也有个MP3模块,没看到资料说支持串口,有空试试

使用特权

评论回复
6
kk118a| | 2016-7-18 13:34 | 只看该作者
大神

使用特权

评论回复
7
jinglixixi|  楼主 | 2016-7-18 14:40 | 只看该作者
changle11sdo5 发表于 2016-7-18 13:29
意思是说人工先写入歌名给单片机?我也有个MP3模块,没看到资料说支持串口,有空试试 ...

因为51单片机的程序空间有限,应该改为串行通讯下载菜单,然后存入AT24C64中,这样灵活性更强。

使用特权

评论回复
8
chensy279| | 2016-7-18 14:41 | 只看该作者
jinglixixi 发表于 2016-7-18 12:49
感兴趣就一起玩吧!

好 啊  多向你学习

使用特权

评论回复
9
jinglixixi|  楼主 | 2016-7-18 14:43 | 只看该作者
chensy279 发表于 2016-7-18 14:41
好 啊  多向你学习

客气了,后续写完在供大家分享。

使用特权

评论回复
10
chensy279| | 2016-7-18 14:52 | 只看该作者
好的 多发帖啊

使用特权

评论回复
11
chensy279| | 2016-7-18 14:55 | 只看该作者
jinglixixi 发表于 2016-7-18 14:43
客气了,后续写完在供大家分享。

对了 你除了玩单片机 有没有玩过其他的板子 比如说arm的

使用特权

评论回复
12
changle11sdo5| | 2016-7-18 15:52 | 只看该作者
jinglixixi 发表于 2016-7-18 14:40
因为51单片机的程序空间有限,应该改为串行通讯下载菜单,然后存入AT24C64中,这样灵活性更强。 ...

STC可以存2万多个汉字

使用特权

评论回复
13
jinglixixi|  楼主 | 2016-7-19 10:27 | 只看该作者
changle11sdo5 发表于 2016-7-18 15:52
STC可以存2万多个汉字

现在有一种小的字库模块卖,也不太贵加上邮费就贵了,一直没狠心买,它会很解决问题,且放在别处也可以用。

使用特权

评论回复
14
jinglixixi|  楼主 | 2016-7-19 10:31 | 只看该作者
chensy279 发表于 2016-7-18 14:55
对了 你除了玩单片机 有没有玩过其他的板子 比如说arm的

用的比较杂,如ADUC841、NXPLPC1114/1768/4088、新唐MO58S/MO516/M451、STM32F030/F411/L073/L432、GD32F190等。

使用特权

评论回复
15
chensy279| | 2016-7-19 10:44 | 只看该作者
jinglixixi 发表于 2016-7-19 10:31
用的比较杂,如ADUC841、NXPLPC1114/1768/4088、新唐MO58S/MO516/M451、STM32F030/F411/L073/L432、GD32F ...

好多 我只过stm32 和三星的4418 6818 是之前买friendlyarm的开发板时学习的

使用特权

评论回复
16
jinglixixi|  楼主 | 2016-7-19 16:17 | 只看该作者
chensy279 发表于 2016-7-19 10:44
好多 我只过stm32 和三星的4418 6818 是之前买friendlyarm的开发板时学习的

三星的没用过,用的杂了就是费钱呀,哈哈!

使用特权

评论回复
17
chensy279| | 2016-7-19 16:52 | 只看该作者
jinglixixi 发表于 2016-7-19 16:17
三星的没用过,用的杂了就是费钱呀,哈哈!

对啊 是挺费钱的 但是板子信价比高 也就值了

使用特权

评论回复
18
jinglixixi|  楼主 | 2016-7-20 10:47 | 只看该作者
chensy279 发表于 2016-7-19 16:52
对啊 是挺费钱的 但是板子信价比高 也就值了

只好提高利用率了,努力!

使用特权

评论回复
19
chensy279| | 2016-7-20 13:31 | 只看该作者
jinglixixi 发表于 2016-7-20 10:47
只好提高利用率了,努力!

嗯嗯呢 加油

使用特权

评论回复
20
黑猫警长不吃糖| | 2016-7-20 16:12 | 只看该作者
好厉害的样机,会技术就是好

使用特权

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

本版积分规则

464

主题

2780

帖子

38

粉丝