5770浏览
查看: 5770|回复: 11

[进阶] 快乐智造营 | 15 音乐播放器

[复制链接]
本帖最后由 怀若谷 于 2021-7-20 21:51 编辑

本系列教程主要分享基于开源硬件和激光建模的创客作品的制作,每个作品涉及两三个电子模块的使用,让学习者能够轻松、扎实地掌握创客制作的知识和技能,并体会到智造的乐趣。
【目录】
05.快乐智造营 | 05 台灯09.快乐智造营 | 09 桌面温度计
10.快乐智造营 | 10 多功能测量仪
11.快乐智造营 | 11 遥控电风扇
12.快乐智造营 | 12 电子像素画板
13.快乐智造营 | 13 物品存放柜
14.快乐智造营 | 14 留言机15.快乐智造营 | 15 音乐播放器

v 15.1项目概述

快乐智造营 | 15 音乐播放器图1


图15-1


      “音乐播放器”,如图15-1所示,是一个MP3音频播放器,造型和播放开关控制仿照了留声机制作,既具复古风格又增添了趣味。通过该项目的学习,可以掌握串口MP3模块和磁感应传感器的使用。

       功能介绍:放上用黑色亚克力制成的“黑胶碟片”,将唱针(条形磁铁)移到“碟片”上,“碟片”随即旋转起来并开始播放音乐;将探针移开并重新移回,音乐会进行随机切换。(受串口MP3模块存储容量限制,本项目中存放了3首歌曲)

演示视频



v 15.2材料准备
快乐智造营 | 15 音乐播放器图2


图15-2


       本项目所需要的硬件材料,如图15-2所示,分别为:

      (1)DFRduino Uno R3  1块

      (2)IO扩展板       1块

      (3)磁感应传感器   1个

      (4)360°舵机      1个

      (5)串口MP3模块   1个
   
      (6)小音箱         1个

v 15.3电子模块的使用
15.3.1  磁感应传感器
       磁感应传感器,可以用来对磁性材料(如磁铁)进行探测,探测范围可达3cm左右。其属于数字输入设备,一般情况下,当检测到磁性时其数字值为1(高电平),否则为0(低电平)。

快乐智造营 | 15 音乐播放器图3

图15-3


      在与Arduino Uno主控板连接时,参照数字按钮模块,可连接到除D0、D1外的任一引脚,连接示例如图15-3所示,GND、VCC、数据三个引脚要分别对应。

快乐智造营 | 15 音乐播放器图4


图15-4


       在编程软件Mind+中,可以使用【引脚操作】中【读取数字引脚(2)】积木来读取该传感器的的输入信号,如图15-4所示。在使用前时,需要通过串口打印等方式进行调试,以掌握其特性。

15.3.2 串口MP3模块
       串口MP3模块,通过串口与单片机进行通讯,一般会内置一定容量的存储空间,或者外接SD卡。存储方式和使用U盘一样简单,可随时更新模块内的音频文件(MP3或者WAV格式)。可执行指定播放、循环播放、音量调节等指令。 模块板载喇叭接口,可以接3W无源小喇叭,也可以外接有源音响。其属于执行器。

快乐智造营 | 15 音乐播放器图5


图15-5


       在与Arduino Uno主控板连接时,有两种连接方式:(1)硬串口——D0、D1引脚;(2)软串口——D2、D3引脚。当采用硬串口连接时,由于电脑上的程序上传到主控板也是通过串口完成的,两者会产生冲突。所以,需要先上传程序再连线或者将扩展板切换到“PROG”模式待传完程序再切回“RUN”模式。建议采用软串口连接,软串口连接示例如图15-5所示,GND、VCC、RX、TX四个引脚要分别对应。

快乐智造营 | 15 音乐播放器图6


图15-6


      在编程软件Mind+中,串口MP3模块的积木有4个,如图15-6所示,需到【扩展】中的【执行器】下找到【串口MP3模块】,然后选择添加才会在积木区出现。示例程序如图15-7所示,该程序执行的结果是以最大音量播放MP3模块中存放的第1首歌曲。

快乐智造营 | 15 音乐播放器图7


图15-7

v 15.4 项目制作
15.4.1 硬件搭建
      将串口MP3模块连接到扩展板的D2和D3引脚、磁感应传感器连接到D8引脚、360°舵机连接到D13引脚,如图15-8所示。

快乐智造营 | 15 音乐播放器图8


图15-8


15.4.2 编写程序
       编程思路:(1)建立变量“播放状态”,用来记录当前播放状态,初始值为“0”;(2)当磁感应传感器检测到有磁性(数字值为1)且当前变量“播放状态”值为“0”时,启动360°舵机旋转、以100%音量随机播放1首歌曲并将变量“播放状态”的值设为“1”;(3)当磁感应传感器没有检测到磁性(数字值为0)时,让360°舵机停止旋转、设置MP3播放音量为0%并将变量“播放状态”的值设为“0”。

      根据编程思路,在Mind+软件中进行编程,示例程序如图15-9所示。编写好程序后,上传到主控板,进行初步调试。

快乐智造营 | 15 音乐播放器图9


图15-9


15.4.3 设计、加工结构件
      使用制图软件进行结构的设计,设计图如图15-10所示。

快乐智造营 | 15 音乐播放器图10


图15-10


      图纸设计好后,使用激光切割机进行切割。切割好的木板件如图15-11所示。

快乐智造营 | 15 音乐播放器图11


图15-11

15.4.4 装配调试
     将切割好的木板和硬件进行组装,步骤如图15-12、图15-13所示。

快乐智造营 | 15 音乐播放器图12


图15-12


       (1)组装喇叭模型

       (2)组装盒体

      (3)固定主控板

      (4)安装小音箱

      (5)固定舵机

      (6)装上转轴

快乐智造营 | 15 音乐播放器图13


图15-13


     (7)安装转盘

     (8)固定磁感应传感器

     (9)合上顶板、装上喇叭模型

     (10)组装唱针及转臂

     (11)将转臂装在转轴上

     (12)放上“唱片”,通电测试

v 15.5 思维拓展
     保持结构不做大的改动,你可以使用其他传感器来达到同样的效果吗?

     如果让你使用电位器来替代磁感应传感器作为触发器,你会怎么做?






sunny71  学徒

发表于 2021-12-23 16:13:54

我按照这个实例做出来后,为什么不播放音乐?只有一点电流声?
回复

使用道具 举报

怀若谷  高级技匠
 楼主|

发表于 2022-1-2 10:25:10

sunny71 发表于 2021-12-23 16:13
我按照这个实例做出来后,为什么不播放音乐?只有一点电流声?

我没看到你的,不好判断哪个环节的问题,仔细检查程序吧
回复

使用道具 举报

r7suEPFHTZiL  学徒

发表于 2022-2-24 09:10:08

大佬,请问一下我DFR0299 MP3模块,快捷积木“设置DFplayer MP3模块播放第()首歌曲,不管我括号里填数字多少都只会播放第一首歌曲,内存卡里的歌曲都是存放在根目录的,命名规则为1,2,3,。。。
回复

使用道具 举报

怀若谷  高级技匠
 楼主|

发表于 2022-3-1 19:58:35

r7suEPFHTZiL 发表于 2022-2-24 09:10
大佬,请问一下我DFR0299 MP3模块,快捷积木“设置DFplayer MP3模块播放第()首歌曲,不管我括号里填数字 ...

https://wiki.dfrobot.com.cn/_SKU ... i%E6%A8%A1%E5%9D%97
这个模块我没用过,你看看这个文档,有没有帮助。
回复

使用道具 举报

大胆的去做  见习技师

发表于 2022-3-16 10:48:45

这个留声机做的很适合放在家里或者公司做摆件
回复

使用道具 举报

赤星三春牛!  初级技神

发表于 2022-3-16 18:48:10

呵呵呵呵
回复

使用道具 举报

赤星三春牛!  初级技神

发表于 2022-3-16 18:49:25

6666666666
回复

使用道具 举报

赤星三春牛!  初级技神

发表于 2022-3-16 18:50:30

赞赞赞赞赞
回复

使用道具 举报

赤星三春牛!  初级技神

发表于 2022-3-16 18:55:46

厉害厉害
回复

使用道具 举报

 初级技匠

发表于 2022-4-14 12:13:42

大胆的去做 发表于 2022-3-16 10:48
这个留声机做的很适合放在家里或者公司做摆件

对                 
回复

使用道具 举报

 初级技匠

发表于 2022-4-14 12:15:22

外观就很吸引人,
很复古
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail