2014-7-22 18:30:06 [显示全部楼层]
7267浏览
查看: 7267|回复: 9

[已解决] 求助求助!!!MP3播放模块波特率问题!!!

[复制链接]
    话说楼主上上周做了个语音控制的小车,但是好多筒子们跟楼主说,语音控制模块和小车放在一起是不行滴,因为小车会带着语音控制模块一起离家出走!!!Soga~~~今儿个楼主想着这个事总是要解决滴,所以拿了两块蓝牙,准备将语音识别模块和UNO 板作为手持端,小车与MP3播放模块作为小车端,两者通过蓝牙进行控制。
    但是,楼主遇到了一个问题!!!对,就是MP3播放模块不听话了。。。这个问题最后还是解决了,但是楼主表示一头雾水很是困惑啊~~~~(>_<)~~~~ 所以大家快来帮帮忙吧~~三鞠躬~~~
    好了,现在来说说问题吧。
   mp3播放模块的官方wiki上是有明确说,波特率是19200,但是按常规来明显不是楼主的风格呀,所以楼主那个不太智能的语音控制小车波特率设置成了9600,当时,MP3模块是很听话的,让它唱歌就唱歌,让它停止就停止,简直就是亲妈啊!!!
   但是这次,楼主为了让小车智能一点,分成了手持端和小车端,这就需要用到蓝牙了。蓝牙也是需要串口的,所以楼主就给它设了个软串口,波特率还是9600,蓝牙通信妥妥的没有问题啊。可是,一点变化都没有做的MP3模块不播放了。楼主苦思冥想抓耳挠腮试过各种方法以后,终于发现,只要把MP3模块的波特率设置为19200就还是OK的。
   问题解决了,留下一个困惑的楼主。筒子们,求解答~~~~(>_<)~~~~

terminaterfxy  初级技师

发表于 2014-7-23 10:58:44

说明你蓝牙传MP3模块的波特率MP3模块无法识别了?
回复

使用道具 举报

tzlzy  高级技师
 楼主|

发表于 2014-7-23 11:03:42

terminaterfxy 发表于 2014-7-23 10:58
说明你蓝牙传MP3模块的波特率MP3模块无法识别了?

具体怎么回事现在还没想明白,现象就是使用蓝牙和mp3一块的时候,MP3模块模特率得设置成19200.。。
回复

使用道具 举报

tzlzy  高级技师
 楼主|

发表于 2014-7-23 11:04:56

还有一个问题,我测试mp3模块的时候,使用这段代码:void setup()
  {
    Serial.begin(19200);
    delay(2000);//等待2秒钟播放器初始化完成
    Serial.println("\\:v 250");    // 音量设置最大  数字 0-255 数字越大音量越大
    delay(50);
  }

//按按键播放下一首
void loop()
  {
                  Serial.println("\\:n");  // 播放下一首
                  Serial.println("OK");
    }

RX,TX拔掉它就播放,插上就不播放,这个又是为什么呀,各路大神求解。。
回复

使用道具 举报

terminaterfxy  初级技师

发表于 2014-7-24 09:19:07

因为你loop是循环一直在print
回复

使用道具 举报

Leotower  中级技师

发表于 2014-7-24 09:20:29

you should add delay in LOOP.   
回复

使用道具 举报

tzlzy  高级技师
 楼主|

发表于 2014-7-25 15:57:41

Leotower 发表于 2014-7-24 09:20
you should add delay in LOOP.

我试了一下,加了delay,还是这个样子的,,
回复

使用道具 举报

tzlzy  高级技师
 楼主|

发表于 2014-7-25 15:58:44

terminaterfxy 发表于 2014-7-24 09:19
因为你loop是循环一直在print

我好奇的是,我拔掉TX,RX,mp3模块和uno板卡应该不再通信了,为什么此时反而唱起歌来了呢?谢谢啦。
回复

使用道具 举报

terminaterfxy  初级技师

发表于 2014-7-28 14:00:57

tzlzy 发表于 2014-7-25 15:58
我好奇的是,我拔掉TX,RX,mp3模块和uno板卡应该不再通信了,为什么此时反而唱起歌来了呢?谢谢啦。 ...

你拔掉以后他就有时间执行命令了,你不信在loop最后加上delay(999999);
回复

使用道具 举报

tzlzy  高级技师
 楼主|

发表于 2014-7-28 14:29:25

terminaterfxy 发表于 2014-7-28 14:00
你拔掉以后他就有时间执行命令了,你不信在loop最后加上delay(999999);

好的,我试试,谢谢啦
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

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

硬件清单

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

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

mail