我非常熟悉phonegap。我需要通过arduino和android mobile发送和接收数据。我有最少或更好的说法,知道如何做到这一点。 请各位帮帮我。按照这个链接不能理解。 https://github.com/don/BluetoothSerial 如果你们这样做,请给出逐步说明。
答案 0 :(得分:1)
如果您没有Ardunio uno,首先需要购买蓝牙防护罩。蓝牙防护罩应该有关于如何将其连接到Ardunio uno以使用串行端口的说明。 Android有一个很好的示例应用程序与SDK一起分发,它被称为BluetoothChat,您应该能够轻松找到它。我修改了BluetoothChatService.java文件以与Arduino板进行通信,只需对代码进行一些简单的修改,您可以使用该应用程序连接到Arduino板或任何其他蓝牙设备。这里是。
我在课程开始时添加了这个,第二个UUID用于连接到Arduino板。
// Name for the SDP record when creating server socket
private static String NAME = null;
private static final String NAME1 = "BluetoothChat";
private static final String NAME2 = "itead";
// Unique UUID for this application
private static UUID MY_UUID = null;
private static final UUID MY_UUID1 = UUID.fromString("fa87c0d0-afac-11de-8a39-0800200c9a66");
private static final UUID MY_UUID2 = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb");
另外,我修改了这个方法,
/**
* Start the ConnectThread to initiate a connection to a remote device.
* @param device The BluetoothDevice to connect
*/
public synchronized void connect(BluetoothDevice device) {
if (D) Log.d(TAG, "connect to: " + device);
if(device.getName().indexOf("itead")!=-1)
{
MY_UUID = MY_UUID2;
NAME = NAME2;
}
else
{
MY_UUID = MY_UUID1;
NAME = NAME1;
}
// Cancel any thread attempting to make a connection
if (mState == STATE_CONNECTING) {
if (mConnectThread != null) {mConnectThread.cancel(); mConnectThread = null;}
}
// Cancel any thread currently running a connection
if (mConnectedThread != null) {mConnectedThread.cancel(); mConnectedThread = null;}
// Start the thread to connect with the given device
mConnectThread = new ConnectThread(device);
mConnectThread.start();
setState(STATE_CONNECTING);
}
您应该使用我对示例应用程序进行的当前少量更改来连接Arduino电路板并与之通信。
希望对你有用。