电池供电(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("$<*>quot;);
    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());
            }
        }
    }
}
有帮助吗?

解决方案

来自数据表,第6页:

  

注1:您可以进入命令模式   在任何一个串口上本地   没有连接的时间。一旦   连接完成后,您只能输入   命令模式,如果配置计时器有   没过期。启用连续   配置,配置配置计时器   255.此外,如果设备处于自动主模式3,您将无法进行   连接时进入命令模式   蓝牙。

我的猜测是配置计时器即将到期。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top