【求助】arduino怎么同时播放多首MP3
本帖最后由 阿花花 于 2013-3-1 10:44 编辑请问如果arduino不连电脑怎么用多个喇叭同时播放多首MP3
需要哪些硬件?
谢谢~ 你敢把问题描述清楚点么? 邓维安 发表于 2013-3-1 16:44 static/image/common/back.gif
你敢把问题描述清楚点么?
就是像电子钢琴一样两个键按下同时发出两个音,不过我要的是同时播两个曲子 int adc_key_val ={50, 200, 400, 600, 800 };
int NUM_KEYS = 5;
int adc_key_in;
int key=-1;
int oldkey=-1;
void setup()
{
Serial.begin(19200);
pinMode(10, INPUT);//D10
delay(2000);//等待2秒钟播放器初始化完成
Serial.println("\\:v 250"); // 音量设置最大数字 0-255 数字越大音量越大
delay(50);
}
//接收串口命令字符,执行相应操作
void loop()
{
int val,i;
adc_key_in = analogRead(0); // read the value from the sensor
key = get_key(adc_key_in); // convert into key press
if (key != oldkey) // if keypress is detected
{
delay(50); // wait for debounce time
adc_key_in = analogRead(0); // read the value from the sensor
key = get_key(adc_key_in); // convert into key press
if (key != oldkey)
{
oldkey = key;
if (key >=0){
switch(key)
{
case 0:
Serial.println("\\:p");//暂停播放
Serial.println("OK");
break;
case 1:
Serial.println("\\:s");//继续播放
Serial.println("OK");
break;
case 2:
Serial.println("\\:n");// 播放下一首
Serial.println("OK");
break;
case 3:
Serial.println("\\:u"); // 播放上一首
Serial.println("OK");
break;
case 4://播放名称为yes的音频文件
//注意:必须将音量控制放在播放之前
Serial.println("\\:v 250"); // 音量设置250 数字 0-255 数字越大音量越大
//Serial.println("\\yes");
Serial.println("OK");
break;
}
}
}
}
delay(100);
}
// Convert ADC value to key number
int get_key(unsigned int input)
{
int k;
for (k = 0; k < NUM_KEYS; k++)
{
if (input < adc_key_val)
{
return k;
}
}
if (k >= NUM_KEYS)k = -1;// No valid key pressed
return k;
}
改一下switch case 估计可以实现 邓维安 发表于 2013-3-5 10:05 static/image/common/back.gif
int adc_key_val ={50, 200, 400, 600, 800 };
int NUM_KEYS = 5;
int adc_key_in;
arduino怎样播放mp3呢?是不是只能通过vs1003? 恺之 发表于 2013-3-9 22:55 static/image/common/back.gif
arduino怎样播放mp3呢?是不是只能通过vs1003?
把mp3转换成wav以后直接用arduino+SD卡就能播放,不过同一时间只能播放一首~~如果要播放多首的话。。多个控制板吧。。
页:
[1]