2011-09-21 149 views
4

我有Firmata在Arduino Uno上正常工作,通过有线USB与Processing进行通信。Firmata通过蓝牙在Arduino上?

我想摆脱电缆,并通过蓝牙传输(使用BlueSMIRF模块)运行连接。我不清楚我需要怎样去Firmata告诉它使用BT模块而不是(未连接的)USB电缆接口。特别是,我需要破解Firmata本身更普遍,需要添加初始化代码是

  1. 具体到我使用的BT模块,或
  2. 告诉Firmata使用比其他的端口有线USB?

感谢

d

回答

3

我不是Firmata非常好,但我知道,Firmata(在Arduino的)使用 '串行'(引脚0和1,也又名为TX,RX )与主机进行通信。所以,如果你想使用BT模块来替换你的USB线在Arduino上,使用Firmata来使用其他引脚,其他连接BT到引脚0和1.

+0

为什么这是公认的答案?你做了什么来让它工作?我有问题让我的BT串行模块工作,并找不到任何好的信息:( –

0

所有你需要做的就是确保只有当您将草图上传到arduino时才连接USB,然后在准备好实际运行Arduino代码时连接BlueSMIRF。这样他们将使用默认的硬件串行端口,你不应该修改任何代码。

您可以尝试在Arduino中使用SoftwareSerial.h来模拟另一个串行端口,但我发现这是有问题的。

1

您必须在ino文件(或用其他速率测试)内将波特率更改为9600的标准firmata上传,然后将BTooth TX> Rx(uno RX)和bt RX> Tx(uno TX)连接为在之前的文章中说,用arduinoCommander测试它的工作就像一个魅力!Arduino uno rx tx是pin0和pin 1.也有它不是从USB电脑供电,但外部源的原因有BT ontop,而在USB上可能会搞砸事情(在一般在上传草图时从BT模块断开接地)。

0

只需将蓝牙连接到Rx Tx引脚并上传相同的标准冷却点即可。然后通过你通过USB电缆传递的蓝牙命令....它将工作。