你用的UNO吧?是不是只有一个串口?兰牙模块是不是接在这唯一的串口上了?
呵
是UNO,只接了蓝牙模块。没有其他的接口 我说你程序有问题你偏不信!
1,你定义的一个字符型娈量 val但没有给确定的值,即使你不给值,系统仍然会自己定义一个值的。
2,void loop(){
val=Serial.read();
Serial.println(val);
if(val=='q'){
Serial.println("OK");
你自己看这个LOOP,里面有一句 Serial.println(val);当然相应的功能就是不论你串口有没有数据,无休止地给你输出VAL么!!!!!
3,你想要做测试的话,至少要把这个程序好好重写,至少在程序中要有,串口缓存是不是到达了数据要做判断的,有了数据才去读回啊......
4,用ARDUINO的串口监视器观察的话,可能会和兰牙有冲突的,你只有一个串口,稳重一点办法是增加一个软串口......
拾瑞 发表于 2013-7-18 16:24 static/image/common/back.gif
我说你程序有问题你偏不信!
1,你定义的一个字符型娈量 val但没有给确定的值,即使你不给值,系统仍然会 ...
首先,感谢你的回答。但是这个代码是为了测试蓝牙的接收值的。你说这个代码有问题我觉得讲得过去,但是你说本来我做LED的那个代码有问题,那么网上也有人做同样的LED试验,他们用同样的代码怎么没问题呢? 你怎么知道人家成功了呢? Angel.Nearly 发表于 2013-7-18 09:06 static/image/common/back.gif
这样写没问题吧
但是这样在蓝牙无论有没有连接上都是这样
1、原来只有一个串口,怪不得用电脑串口软件模拟蓝牙发送命令的时候,电脑串口软件和手机串口软件都会显示“LED ON”这些,我理解的都显示没问题吧?
2、在arduino判断接收的命令之前,最好先有一个while (Serial.available() > 0) ,这个是判读串口是否接收到数据,这样比较严谨。
3、如果加上第二条的while了,再补上一个else情况,串口打印出“error”,看看这样打印会有什么效果。从第一条来看,arduino和手机串口的波特率是匹配的,那就能在手机上打印出“error”来。如果是这样,那就是接收程序需要改进了。
拾瑞 发表于 2013-7-19 09:37 static/image/common/back.gif
你怎么知道人家成功了呢?
有人跟帖回复 蓝牙串口和arduino串口冲突了,试试在其他引脚新建一个软串口即可 Ansifa 发表于 2013-7-27 16:01 static/image/common/back.gif
蓝牙串口和arduino串口冲突了,试试在其他引脚新建一个软串口即可
能说一下具体怎么做嘛?如果方便的话我想加你的QQ,不知道可以吗? Angel.Nearly 发表于 2013-7-27 18:40 static/image/common/back.gif
能说一下具体怎么做嘛?如果方便的话我想加你的QQ,不知道可以吗?
你打开arduino自带的例子SoftwareSerialExample
然后根据里面说的:
The circuit:
* RX is digital pin 10 (connect to TX of other device)
* TX is digital pin 11 (connect to RX of other device)
就是蓝牙的TX接10脚,RX接11脚。即可通信。
QQ150308625 http://geek-workshop.com/thread-5431-1-1.html 我知道了,谢谢Ansifa大神。 Ansifa 发表于 2013-7-27 23:30 static/image/common/back.gif
你打开arduino自带的例子SoftwareSerialExample
然后根据里面说的:
The circuit:
谢谢,问题已经确认解决。之前没网络所以确认晚了,希望不要介意
页:
1
[2]