求助,DFRobot Arduino TTL串口SD卡mp3播放器串口5无法返回低电平
2014-03-128567
AI 快速预览详细
本文讨论了DFRobot Arduino TTL串口SD卡mp3播放器在使用过程中遇到的串口5无法返回低电平的问题。用户希望在mp3播放完毕后再播放下一个mp3,但发现串口5始终返回高电平。文章提供了详细的排查步骤和解决方案,包括修改代码中的条件判断语句。通过这些方法,用户可以解决mp3播放完毕后无法检测到低电平的问题,确保声音传感器触发播放项目正常运行。
|
有人用过这个模块吗?这个mp3播放模块介绍说音频文件播放完毕后会输出一个低电平。但我试了一下没有成功。我把串口的5号接到Arduino的数字口8上,但是mp3播放完毕数字口检测不到低电平。Serial.print(digitalRead(playing))在monitor上总是返回1; ,如果有输出低电平的话应该会返回0吧?还是说我的线路连的不对吗? *我在做一个通过声音传感器触发播放mp3的玩具,现在的问题就是如果一个mp3还没播放完毕,再次检测到声音就会播放下一个mp3了。我想让mp3播放完毕,再放下一个mp3。、 ps:wiki上面的代码有问题,必须把(digitalRead(button)==LOW)改成if(digitalRead(button)==HIGH)才能正常工作,不过就算改了也还是有点问题,按钮按下去的时候会重复触发这个if判断句,直到放开按钮才会执行。 还有就是说明上面写着“语音文件名称\r\n 播放相应名称的歌曲,如果找到歌曲播放正确将返回 Play ok\r\n“ 但是我就算在代码中写上了\r\n,也不会返回我Play ok。我的意思是我得不到任何返回值 产品wiki: https://wiki.dfrobot.com.cn/index.php/(SKU:TOY0008)DFRduino_Player_V2.0(.NET_Gadgeteer_Compatible)MP3%E6%92%AD%E6%94%BE%E6%A8%A1%E5%9D%97 |





另外你写的下一曲命令是错误的
//按按键播放下一首
void loop()
{
if(digitalRead(button)==HIGH) //检测是否有按钮按下,注意看看你手上的DF单按钮是不是按下是高电平,新版本是按下高电平。
{
delay(50); //延迟去抖动
if(digitalRead(button)==HIGH)
{ Serial.println("\\:n"); // 播放下一首
Serial.println("OK");
while( digitalRead(PlayEnd)==HIGH) ; // OUT管脚如果是高一直死循环,等待歌曲完成推出,再次检测按钮按下
}
}
}