2015-02-04 3 views
0

Я очень много нового в телефоне. Мне нужно отправлять и получать данные через arduino и android mobile. У меня есть минимум или лучше сказать нулевые знания о том, как это сделать. Пожалуйста, ребята, помогите мне. Не поймите вещь, следуя этой ссылке. https://github.com/don/BluetoothSerial Просьба дать подробное описание, если вы это сделали.Bluetooth последовательная связь между android и arduino uno

ответ

1

Прежде всего вам нужно купить щит для вашего Ardunio uno, если у вас его нет. В щите Bluetooth должны быть инструкции по подключению его к Ardunio uno для использования последовательных портов. Android имеет отличное примерное приложение, которое распространяется вместе с SDK, оно называется BluetoothChat, вы должны легко найти его. Я модифицировал файл BluetoothChatService.java для связи с платой Arduino с несколькими простыми модификациями кода, в котором вы можете использовать приложение для подключения к плате Arduino или любому другому устройству Bluetooth. Здесь они есть.

Я добавил это в начале класса, второй 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 с текущими небольшими изменениями, которые я сделал для примера приложения.

Надеюсь, что сработает для вас.

 Смежные вопросы

  • Нет связанных вопросов^_^