问题标签 [bluesmirf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 将 Android Nexus One 与 Arduino + BlueSmirf 连接
我对这一切有点陌生,所以请耐心等待 - 我非常感谢您的帮助。
我正在尝试将 Android Nexus One 与连接到 BlueSmirf 的 arduino (Duemilanove) 链接。我有一个程序,它只是将字符串“Hello Bluetooth”输出到 BlueSmirf 连接的任何设备。这是Arduino程序:
无效设置(){ Serial.begin(115200);诠释我; }
void loop(){Serial.print("你好蓝牙!"); 延迟(1000);}
一台我的电脑BT终端我可以看到消息并且连接没问题。问题出在我的android代码上。我可以使用 android 连接到设备,但是当我查看日志时,它没有显示“Hello Bluetooth”。这是调试日志:
04-09 16:27:49.022:错误/BTArduino(17288):FireFly-2583 已连接
04-09 16:27:49.022:错误/BTArduino(17288):开始连接套接字
04-09 16:27:55.705:错误/BTArduino(17288):收到:16
04-09 16:27:56.702:错误/BTArduino(17288):收到:1
04-09 16:27:56.712:错误/BTArduino(17288):收到:15
04- 09 16:27:57.702:错误/BTArduino(17288):收到:1
04-09 16:27:57.702:错误/BTArduino(17288):收到:15
04-09 16:27:58.704:错误/BTArduino(17288) ): 收到: 1
04-09 16:27:58.704: ERROR/BTArduino(17288): 收到: 15
等等...
这是代码,我试图只放相关代码,但如果您需要更多,请告诉我:
更相关的代码在这里:
我正在读取字节 = inStream.read(buffer)。我知道字节是一个整数,所以我尝试通过蓝牙发送整数,因为“字节”是一个整数,但它仍然没有意义。
几乎看起来发送的波特率不正确。这可能是真的吗?
任何帮助,将不胜感激。非常感谢。
bluetooth - Arduino上的蓝牙固件?
我有 Firmata 在 Arduino Uno 上工作正常,通过电缆 USB 与 Processing 通信。
我想摆脱电缆,并通过蓝牙传输(使用 BlueSMIRF 模块)运行连接。我不清楚我需要对 Firmata 做什么来告诉它使用 BT 模块而不是(未连接的)USB 电缆接口。特别是,我是否需要破解 Firmata 本身来添加初始化代码
- 特定于我正在使用的 BT 模块,或
- 更一般地说,需要告诉 Firmata 使用有线 USB 以外的端口吗?
谢谢
D
java - 使用java将数据从PC发送到蓝牙芯片BlueSMiRF
我想将笔记本电脑中蓝牙设备的数据发送到 BlueSMiRF 蓝牙芯片。我以前从未处理过蓝牙编程,所以我需要有关如何开始和使用什么的指导。我正在研究 java,但如果有更好的选择,我会研究它。
c# - 稳定蓝牙串行通信的波特率
我有一个 Arduino mega 通过蓝牙(bluesmirf gold 设备)与我编写的 C# 应用程序通信。Arduino 不断发送 32 个字符的串行信号,第一个始终是“S”,最后一个是“E”。使用 putty,我可以确认 99% 的时间都正确发送了这个信号。
现在我想用我的 C# 应用程序读取这个信号,我正在使用以下代码:
serialHC 属于串行类。
有时这工作得很好,但有时我遇到问题,我不知道为什么它有时会起作用,但其他时候却不行。
我似乎遇到的问题是,有时我从 arduino 读取的数据中会出现相当大的滞后。我注意到这一点是因为我正在发送按钮状态,并且它们仅在我实际按下或释放 Arduino 上的按钮后几秒钟发生变化。我使用了蓝牙设备的标准波特率,即 115200,并且想知道将其更改为更低的速率是否会产生更好的结果?如果有什么优势呢?我不需要高通信速率,即使每秒更新状态 4-5 次对于我的应用程序也是可以接受的。
延迟是否可能来自我的代码?我认为它可能来自等待传入“S”的while循环,但我不明白为什么它应该挂在那里,因为总是有新信号以高速率进入。
我使用 DiscardInBuffer() 因为我不关心过时的数据,只想跳过它。更重要的是,我正在阅读最新数据并根据这些新数据采取行动。
感谢您的帮助!
最好的祝福,
本德
更新:
刚刚在调试时发现了更多信息。问题似乎只出现:
- 通过蓝牙连接时(通过 USB 电缆绝对没有延迟)
- 当从 PC 建立第二个蓝牙连接到另一个设备时(不同的 COM 端口和不同的波特率)
有没有人有在 PC 上使用同一个蓝牙加密狗运行两个不同设备的经验?我可以设法连接到这两个没有问题,但仍然有前面提到的滞后问题。
谢谢你的帮助
android - Android暂停线程但将内容添加到文本视图
我有一个线性布局,我在其中放置一个 id 为“out”的 textview。在我的代码中,我得到了这个 textview 并调用了 out.append("Some string here");。我想做的是让它使用 thread.sleep(1000); 等待一秒钟,然后再做一次追加。当我只使用一个 for 循环并遍历它十次时,它会等待十秒钟,然后在最后更新视图。我怎样才能让这个更新在睡眠之间的视图?
附言。这样做的主要原因是因为我有另一个使用蓝牙输出流运行的线程,我希望它在每次向通过 bluesmirf 模块连接的 arduino 发送字节时更新文本视图。我可以让它发送数据,但屏幕的更新发生在 for 循环的末尾。如果我在这个循环中休眠,它将等待一秒钟,然后输出到 arduino 没问题。我只想更新它,这样我就可以在不使用日志的情况下看到失败的地方。
bluetooth - Arduino 蓝牙连接
我正在尝试从我的 arduino 向串行监视器发送一个字符串。我正在使用带有 arduino UNO 的 sparkfun bluesmirf 芯片。
我的代码很简单:
当我打开显示器时,我收到了乱码。当我用 USB 电缆连接到 arduino 时,一切正常。
谁能把我引向正确的方向?
android - 蓝牙连接 (Android/Bluesmirf) 仅在未配对时才能正常工作
我正在尝试通过蓝牙在 Android 平板电脑和带有 BlueSmirf 蓝牙加密狗的 Arduino 之间进行通信。在我的 Android 代码中,我首先检查已配对设备的列表以查找我正在寻找的设备。如果它不在那里,我开始发现。这两种可能性都起作用,BlueSmirf 上的状态 LED 变为绿色,表示连接成功。但只有在我启动应用程序之前设备没有配对,我也能够通过蓝牙发送/接收数据。如果设备之前已配对,则可以更可靠、更快地建立连接,但无法发送或接收数据。你知道为什么会这样吗?提前谢谢了!
以下是相关代码:
}
更新:
我现在也尝试替换这部分:
有了这个:
如此处建议:Android蓝牙accept()/connect()与已配对的设备
但它仍然不起作用......
更新 2:
我换了
和
还是一样的问题。
我还尝试在一个新线程中运行整个连接过程,而不是只运行自己的 socket.connect() 和 socket.getInput/OuputStream,但这也无济于事。
更新 3:
我认为如果我还提供建立可以发送/接收数据的连接的代码可能会有所帮助:
arduino - 字符数组的初始化字符串在 Arduino 上太长错误
我正在尝试在 Arduino 上运行下面的代码,但是当我验证代码时,它显示“字符数组的初始化字符串太长”。尽管我已经阅读了有关类似问题的先前问题,但我不知道从我现在正在尝试的代码中从哪里开始。是的,,, 我对 C++ 世界很陌生,,, 如果你能给我一个自学的线索或直接的答案,那将非常感激。
最好的,
android - arduino 到 android 蓝牙:检测两者是否已连接
目标:
让ardiuno检查它是否通过蓝牙连接到android。然后在连接时执行动作,如果未连接则重新连接。
我正在使用什么:
Bluesmirf silver with arduino uno 和 note 3
到目前为止我所做的:
[阿杜诺代码]
Bluesmirf 处于主模式自动连接。arduino 应该检查 android 应用程序是否正在发送 H 字符。如果是,则意味着它已连接。如果没有,则需要继续重新连接。
[安卓代码]
这是安卓应用程序在连接应用程序后发送 H 的方法。
边注:
我已经尝试了很多方法来让这个 arduino 检查它是否连接。我 3 周前才刚刚开始编程,所以这变得越来越困难。任何帮助,将不胜感激。
bluetooth - Arduino - 如何从串口读取字符串
我最近才开始使用Arduino
. 我只是有一个快速的问题,我尝试寻找答案,但已经失败了好几天。基本上我想问的是是否有办法从串行端口读取整行。就像下图中突出显示的行。
我想要做的是使用 aBluesmirf Silver Rn-42
在该区域搜索蓝牙设备并在找到匹配地址时触发信号。我只是不知道如何阅读串行端口上已经存在的消息。