442浏览
查看: 442|回复: 0

[进阶] 快乐智造营 | 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 音乐播放器qw1.jpg


图15-1


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

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

演示视频



v 15.2材料准备
快乐智造营 | 15 音乐播放器qw2.jpg


图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 音乐播放器qw3.jpg

图15-3


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

快乐智造营 | 15 音乐播放器qw4.jpg


图15-4


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

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

快乐智造营 | 15 音乐播放器qw5.jpg


图15-5


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

快乐智造营 | 15 音乐播放器qw6.jpg


图15-6


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

快乐智造营 | 15 音乐播放器qw7.jpg


图15-7

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

快乐智造营 | 15 音乐播放器qw8.jpg


图15-8


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

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

快乐智造营 | 15 音乐播放器qw9.jpg


图15-9


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

快乐智造营 | 15 音乐播放器qw10.jpg


图15-10


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

快乐智造营 | 15 音乐播放器qw11.jpg


图15-11

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

快乐智造营 | 15 音乐播放器qw12.jpg


图15-12


       (1)组装喇叭模型

       (2)组装盒体

      (3)固定主控板

      (4)安装小音箱

      (5)固定舵机

      (6)装上转轴

快乐智造营 | 15 音乐播放器qw13.jpg


图15-13


     (7)安装转盘

     (8)固定磁感应传感器

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

     (10)组装唱针及转臂

     (11)将转臂装在转轴上

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

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

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






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

本版积分规则

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

硬件清单

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

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

mail