电池供电(2 x AA)Arduino LilyPad应将BlueSmirf v2.11蓝牙调制解调器切换到命令模式(参见下面的源代码)。 BlueSmirf已设置为9600波特。
如果PC通过蓝牙连接(参见下面的源代码),Arduino程序在开始时运行正常(发送多个“ping \ n”)。一段时间后(LilyPad / BlueSmirf)开始也通过蓝牙连接发送“$$$”和“--- \ n”,而不是切换到/从命令模式。
有什么想法吗?
此致 tamberg
// Arduino source code:
void setup () {
Serial.begin(9600);
}
void loop () {
Serial.print("$$$");
delay(2000); // TODO: Inquiry, etc.
Serial.print("---\n");
delay(100);
Serial.print("ping\n");
delay(2000);
}
// C# source code (runs on PC)
using System;
using System.IO.Ports;
class Program {
static void Main () {
SerialPort p = new SerialPort(
"COM20", 9600, Parity.None, 8, StopBits.One);
using (p) {
p.Open();
while (p.IsOpen) {
Console.Write((char) p.ReadChar());
}
}
}
}
答案 0 :(得分:1)
来自datasheet,第6页:
注1:您可以进入命令模式 在任何一个串口上本地 没有连接的时间。一旦 连接完成后,您只能输入 命令模式,如果配置计时器有 没过期。启用连续 配置,配置配置计时器 255.此外,如果设备处于自动主模式3,您将无法进行 连接时进入命令模式 蓝牙。
我的猜测是配置计时器即将到期。