音乐盒一(摇杆)
Yanglibin@microduino.cc(讨论 | 贡献)2015年9月15日 (二) 13:25的版本
Language | English |
---|
目的搭建一个音乐盒,可播放TF卡中的音乐文件,用Joystic摇杆进行选歌,及音量操作。 原理检测摇杆X-Y方向的动作,通过读取模拟值来判断。同时判断停留时间长短来选择控制方式。 设备
加载代码
软件调试
#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;
}
//主界面,可自由定义
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));
}
搭建硬件
如何操作结果通过Joystick摇杆来控制音乐的播放、暂停与切歌。你也可以通过乐高搭建一个漂亮的外观。 视频 |