精简Bluno官方demo,蓝牙控制
本帖最后由 巫山冰 于 2014-1-29 01:25 编辑官网的Bluno入门demo是基于Bluno + Arduino Accessory Shield扩展板。没有购买Bluno Accessory Sheild扩展板,是否仍然能够只在Bluno上搭建蓝牙测试呢?看看下面的图片:
如上图,我用了一只蜂鸣器来做测试,你也可以换成二极管。把蜂鸣器的正极连接到数字8,把负极连接到任意一个GND即可。下面是大刀阔斧一翻之后的Arduino代码:
#include "PlainProtocol.h"
#define BuzzerPin 8
PlainProtocol BLUNOPlainProtocol(Serial,115200);
void setup() {
Serial.begin(115200);
pinMode(BuzzerPin, OUTPUT);
}
void loop()
{
//valid frame received
if (BLUNOPlainProtocol.available()) {
if (BLUNOPlainProtocol.receivedCommand=="BUZZER") {
digitalWrite(BuzzerPin, BLUNOPlainProtocol.receivedContent);
}
}
}
简单吧,蓝牙通讯方面,全部交给 PlainProtocl 库去处理,我们只需要看看它返回从手机端发过来的数据就好。
而手机端可以完全不用修改任何代码(直接下载官方的“玩转布鲁诺”也可以),我们只需要测试那个蜂鸣器的功能就好。
最新版本,不需要使用到PlainProtocl库的,代码如下:
#define BuzzerPin 8
void setup() {
Serial.begin(115200);
pinMode(BuzzerPin, OUTPUT);
}
void loop()
{
//valid frame received
if (Serial.available() > 0) {
String incomingString = Serial.readString();
if (incomingString=="<BUZZER>1;") {
digitalWrite(BuzzerPin, HIGH);
}
else if(incomingString=="<BUZZER>0;") {
digitalWrite(BuzzerPin, LOW);
}
}
}
点赞! 楼主的头像很风骚啊!!顶一个,沙发 好精简,顶起来 :victory:巧妙! 兄弟,表示我的刚用,Misco usb就掉了 好牛掰!
这个帖子略霸气!够精简 John 发表于 2013-12-31 22:34
兄弟,表示我的刚用,Misco usb就掉了
有申请换吗? 為什麼這句總是編譯不到:
PlainProtocol BLUNOPlainProtocol(Serial,115200); 本帖最后由 巫山冰 于 2014-1-29 01:23 编辑
fswk 发表于 2014-1-28 18:29
為什麼這句總是編譯不到:
PlainProtocol BLUNOPlainProtocol(Serial,115200);
你下载 PlainProtocol 库了没有?要下载这个库才可以的,其实你不用PlainProtocol库也是可以进行蓝牙通讯的,这个程序,还可以象下面这么简单:
#define BuzzerPin 8
void setup() {
Serial.begin(115200);
pinMode(BuzzerPin, OUTPUT);
}
void loop()
{
//valid frame received
if (Serial.available() > 0) {
String incomingString = Serial.readString();
if (incomingString=="<BUZZER>1;") {
digitalWrite(BuzzerPin, HIGH);
}
else if(incomingString=="<BUZZER>0;") {
digitalWrite(BuzzerPin, LOW);
}
}
} 搞妥了。謝謝幫忙! bluno官方资料说要蓝牙4.0且安卓4.3的手机,手里没有这么高档的手机。
这段代码能和普通蓝牙、安卓4.0的手机通讯吗? taelons 发表于 2014-2-6 21:22
bluno官方资料说要蓝牙4.0且安卓4.3的手机,手里没有这么高档的手机。
这段代码能和普通蓝牙、安卓4.0的手 ...
这个,我不确定哦。理论上,这段代码没有直接和蓝牙打交道。是刷在这块板上的固件程序在管理蓝牙。 本帖最后由 wujingping 于 2014-2-22 17:34 编辑
貌似不用 PlainProtocol 库的那个版本接收手机指令有延迟,还很大啊。从bluno发到手机倒是反应非常快。 是不是在玩手机上面把蜂鸣器的那一个键打开,蜂鸣器就会响呢。 哈哈~~这个有意思~~
顺便做个宣传~~这个库有更新过哦,用起来更简单,等有时间了翻译成中文~~
http://www.dfrobot.com/community/dfrobot-wireless-communication-protocol-ver-1-1.html
zrf223 发表于 2014-3-26 21:32
是不是在玩手机上面把蜂鸣器的那一个键打开,蜂鸣器就会响呢。
:) 嗯,还会一直响,直到你在手机上拨回关闭状态。 巫山冰 发表于 2014-3-27 02:52
嗯,还会一直响,直到你在手机上拨回关闭状态。
我直接把你写的这个代码复制到arduino什么都没有改直接下到bluno中,用手机连接上去。没有响,经测试蜂鸣器没有问题,是不是驱动的功率不够,还是怎么样的呢? zrf223 发表于 2014-3-27 10:39
我直接把你写的这个代码复制到arduino什么都没有改直接下到bluno中,用手机连接上去。没有响,经测试蜂鸣 ...
手机连接上去,不发送蜂鸣指使,当然不会响。
另外,自己在adruino代码中,让蜂鸣器发声看看响不响,不响的话,看看数字线接对没有。
这个实验应该还是相当容易测试的。 楼主~用您前面那个用到PlainProtocl库的代码测试成功,但是后面那个就不行,Link的等显示是连着的,就是不响。
页:
[1]
2