音乐盒一(摇杆)

来自Microduino Wikipedia
跳转至: 导航搜索
Language English

目的

搭建一个音乐盒,可播放TF卡中的音乐文件,用Joystic摇杆进行选歌,及音量操作。

原理

检测摇杆X-Y方向的动作,通过读取模拟值来判断。同时判断停留时间长短来选择控制方式。

设备

模块 数量 功能
mCookie-CoreUSB/zh 1 核心板
mCookie-Hub/zh 1 传感器转接板
mCookie-Audio/zh 1 音频模块
mCookie-Amplifier/zh 1 功率放大模块
mCookie-BM/zh 1 电池管理
Microduino-Joystick/zh 1 摇杆传感器
  • 其他设备:
    • 喇叭两个
    • 电池1个
    • TF存储卡

加载代码

  • Setup 1:用USB线将CoreUSB模块与PC/Mac相连,并打开Arduino IDE。
  • Setup 2:点击文件 > 示例 > mCookie > _MusicBox_Joystick, 加载程序
  • Setup 3:选择好板卡和COM端口下载程序。

软件调试

  • ” audio.h”控制Audio模块文件
  • Audio模块串口使用
#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

#define AUDIO_PORT mySerial
  • 检测摇杆值
int uiStep()         //切歌
{
  if (analogRead(A0) < 100)  //Y-up
  {
    delay(50);       //延迟50毫秒输出
    if (analogRead(A0) < 100)      //
      return 1;      //回到动作1
  }
  if (analogRead(A1) < 100)    //
  {
    delay(50);       //延迟50毫秒输出
    if (analogRead(A1) < 100)  //X-Right
      return 2;      //回到动作2
  }
  if (analogRead(A1) > 900)    //X-Left
  {
    delay(50);       //延迟50毫秒输出
    if (analogRead(A1) > 900)  //
      return 3;      //回到动作3
  }
  return 0;
}
  • OLED显示界面,用户可以改
 //主界面,可自由定义
void draw()
{
  setFont_L;

  u8g.setPrintPos(4, 16);
  u8g.print("Music_sta:");
  u8g.print(music_status ? "play" : "pause");

  u8g.setPrintPos(4, 16 * 2);
  u8g.print("Music_vol:");
  u8g.print(music_vol);
  u8g.print("/30");
  u8g.setPrintPos(4, 16 * 3);
  u8g.print("Music_num:");
  u8g.print(music_num);
  u8g.print("/");
  u8g.print(music_num_MAX);
  u8g.setPrintPos(4, 16 * 4);
  u8g.print("....Microduino....");
  //u8g.print(rtc.formatTime(RTCC_TIME_HMS));
}

搭建硬件

  • Setup 1:用连接线将OLED接到Hub模块的IIC接口上,Joystick传感器安装到A0,A1。
  • Setup 2:将TF卡装在AudioShield模块的卡槽中。
MusicBox Joystick TF.jpg
  • Setup 3:将Audio和AudioShield模块堆叠并连接PC,就可以将想要播放的MP3文件储存在TF卡根目录下,最多储存9首。
MusicBox Joystick song.jpg
  • Setup4:将两个喇叭接到Amplifier上
MusicBox Joystick song speak.JPG
  • Setup5:将Audio,Audio shield,Amplifier三个叠堆到一块。
MusicBox Joystick 3 speak.JPG
  • Setup6:将激活后的电池盒与BM模块相连
CoreUSB Ble steup2.jpg
  • Setup7:将所有模块堆叠在一起,顺序随意(除了Audio,AudioShield和Amplifier三个要挨在一起),电路部分搭建完成了!

如何操作

结果

通过Joystick摇杆来控制音乐的播放、暂停与切歌。你也可以通过乐高搭建一个漂亮的外观。

视频