我正在使用RedBear BLE Shield连续向iOS流式传输数据。
我正在使用SDK中提供的chat iOS应用程序调试以下arduino代码:
#include <Arduino.h>
#include <SPI.h>
#include "ble.h"
unsigned int reading = 0;
void setup()
{
SPI.setDataMode(SPI_MODE0);
SPI.setBitOrder(LSBFIRST);
SPI.setClockDivider(SPI_CLOCK_DIV16);
SPI.begin();
ble_begin();
Serial.begin(57600);
}
unsigned char buf[16] = {0};
unsigned char len = 0;
void loop()
{
ble_do_events();
if(ble_connected()){
reading = 10; //this is fake data for testing purposes.
buf[0] = reading;
reading = reading << 8;
reading |= 11; //again same fake data
buf[1] = reading & 0xFF;
len = 2;
Serial.print(reading); Serial.print(" -> LSB:"); Serial.print(buf[1], HEX); Serial.print(" MSB:"); Serial.println(buf[0], HEX);
len = 2;
for (int i = 0; i < len; i++)
ble_write(buf[i]);
ble_write(0x0D);
len = 0;
ble_do_events();
delay(20);
}
}我遇到了以下问题:当我第一次尝试连接到BLE Shield时,它只执行了一次循环,然后就卡住了。然后,如果我断开连接并重新连接,数据开始像我想要的那样流。
有人试过这个吗?
发布于 2013-11-03 04:27:19
我使用BLE Simple来测试您的程序。你的确实卡住了。但是,如果您注释掉最后一个ble_do_events(),一切都很好。
这个应用程序似乎会在一段时间后自动连接和断开BLE屏蔽。我是个新手,并不是很了解this...Is,因为当ble_write被调用时,ble会广播应用程序来通知这里有一条短信。然后应用程序将连接ble并获得sms?
https://stackoverflow.com/questions/18477768
复制相似问题