17407| 21
|
精简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[0]); } } } 简单吧,蓝牙通讯方面,全部交给 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); } } } |
本帖最后由 巫山冰 于 2014-1-29 01:23 编辑 fswk 发表于 2014-1-28 18:29 你下载 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); } } } |
本帖最后由 wujingping 于 2014-2-22 17:34 编辑 貌似不用 PlainProtocol 库的那个版本接收手机指令有延迟,还很大啊。从bluno发到手机倒是反应非常快。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed