Bluetooth 启动从Arduino到远程设备的连接
我试图实现我的arduino内置设备在开机后自动连接到设备。该电路板是Arduino Mini Pro,蓝牙模块是bluetooth Mate Silver(RN42)。设备已配对,蓝牙模块处于从属模式,远程设备(在本例中为普通笔记本电脑)可被发现。我正在使用Arduino软件附带的软件串行库 以下是我的设置:Bluetooth 启动从Arduino到远程设备的连接,bluetooth,arduino,Bluetooth,Arduino,我试图实现我的arduino内置设备在开机后自动连接到设备。该电路板是Arduino Mini Pro,蓝牙模块是bluetooth Mate Silver(RN42)。设备已配对,蓝牙模块处于从属模式,远程设备(在本例中为普通笔记本电脑)可被发现。我正在使用Arduino软件附带的软件串行库 以下是我的设置: void setup() { Serial.begin(9600); // Begin the serial monitor at 9600bps // bluetooth
void setup()
{
Serial.begin(9600); // Begin the serial monitor at 9600bps
// bluetooth
// set baud rate to 9600
bluetooth.begin(9600);
// start command mode
bluetooth.print("$$$");
// reply delay
delay(100);
// set to slave mode
bluetooth.println("SM,0");
// reply delay
delay(100);
// set device pin to 0403
bluetooth.println("SP,0403");
// reply delay
delay(100);
// connect to pixelsense
bluetooth.println("C," + remoteMAC); // remoteMAC is a string with the mac address
// reply delay
delay(2500);
// leave command mode
bluetooth.println("---");
// reply delay
delay(100);
}
我阅读了RN42的命令集,我认为这些命令是正确的。我可以通过蓝牙连接到Arduino,但另一个方向不工作。我还尝试使用主模式或将远程mac存储在闪存中,而不是使用字符串。从文档中,应该可以从RN42启动连接,但我还没有详细了解它是如何工作的。有人能帮我解决问题吗
编辑:设备似乎根本没有进入命令模式。至少闪光灯没有显示这一点。命令是否有任何错误,以致无法访问命令模式?我认为您可能需要在蓝牙之后设置一些延迟。begin(9600),设置其波特率,然后发出打印命令。我认为您可能需要在蓝牙之后设置一些延迟。begin(9600),设置波特率,然后发出打印命令。将近一周后,我遇到了一个解决方案。实际上,似乎有一个接受蓝牙连接的程序是很重要的。我一直在尝试使用Windows7蓝牙对话框菜单项“接收文件”,但没有成功。所以我使用了一个第三方程序来监听传入的连接,这实际上是有效的。基本上我所做的一切都很好,除了丢失的连接侦听器 有时,如果我上传新代码到Arduino,就会出现无法建立连接的问题。这可以通过移除和读取蓝牙设备来解决
上述RN42蓝牙客户端的代码有效。使用Arduino软件提供的库。近一周后,我发现了一个解决方案。实际上,似乎有一个接受蓝牙连接的程序是很重要的。我一直在尝试使用Windows7蓝牙对话框菜单项“接收文件”,但没有成功。所以我使用了一个第三方程序来监听传入的连接,这实际上是有效的。基本上我所做的一切都很好,除了丢失的连接侦听器 有时,如果我上传新代码到Arduino,就会出现无法建立连接的问题。这可以通过移除和读取蓝牙设备来解决
上述RN42蓝牙客户端的代码有效。使用Arduino软件提供的库。只有在模块通电后60秒,您才能进入命令模式。您可以使用状态指示灯查看计时器是否仍在计数(如果每秒闪烁2次)。对不起,我的英语不好。您只能在模块通电后60秒内进入命令模式。您可以使用状态指示灯查看计时器是否仍在计数(如果每秒闪烁2次)。对不起,我的英语不好。启动时,RN-42需要500毫秒才能进入命令模式,请尝试“延迟(500);”在“蓝牙开始(115200)”之前这应该能让你达到目的。此外,电流互感器应连接在低位 可以在下面的链接中找到文档的第45页 第45页 “3.3与微处理器的接口 漫游网络蓝牙设备可以使用 UART接口。当与微处理器接口时,使用以下指南: •蓝牙设备的电源、接地、RX和TX信号必须连接并 电流互感器应保持在低位或与RTS相连。 •蓝牙设备可以在启动500毫秒后进入命令模式。 •微处理器应发送$$$,无需回车或换行 命令模式。 3.3.0.1我如何知道模块已准备好进入命令模式? 重新启动后500毫秒,模块已准备好进入命令模式。您发送$$$时不带 回车。 3.3.0.2我应该连接哪些硬信号? 您应该连接电源、接地、接收和发送。电流互感器应为低电流,或者您可以连接
或者将其连接到RTS。”启动时,RN-42需要500毫秒才能进入命令模式,请尝试“延迟(500);”在“蓝牙开始(115200)”之前这应该能让你达到目的。此外,电流互感器应连接在低位 可以在下面的链接中找到文档的第45页 第45页 “3.3与微处理器的接口 漫游网络蓝牙设备可以使用 UART接口。当与微处理器接口时,使用以下指南: •蓝牙设备的电源、接地、RX和TX信号必须连接并 电流互感器应保持在低位或与RTS相连。 •蓝牙设备可以在启动500毫秒后进入命令模式。 •微处理器应发送$$$,无需回车或换行 命令模式。 3.3.0.1我如何知道模块已准备好进入命令模式? 重新启动后500毫秒,模块已准备好进入命令模式。您发送$$$时不带 回车。 3.3.0.2我应该连接哪些硬信号? 您应该连接电源、接地、接收和发送。电流互感器应为低电流,或者您可以连接
或者将其与RTS绑定。“不起作用。我认为主要的问题是设备甚至没有进入命令模式。闪光灯仅表示设备处于可发现模式(1闪烁/秒)…您可以尝试本讨论中列出的一些建议吗。或者尝试不同的波特率如果你