Java Android上通过蓝牙发送字节的异常行为

Java Android上通过蓝牙发送字节的异常行为,java,android,bluetooth,Java,Android,Bluetooth,我已经设法让蓝牙从安卓系统写入图片。 我已经让我的代码发送一个0和一个1来打开和关闭LED,并让PIC发送响应。 我现在尝试一次发送两个字节来控制多个LED。 PIC根据发送的控制字节改变LED的状态。 我用RealTerm测试了这张照片,效果很好。 当我从应用程序发送字节时,PIC有时会正确地接收到它们,而不是其他 我已经为每条消息创建了一个字节数组 byte[] Led1On = {(byte)245,(byte)1}; // LED 1 on byte[] Led1Off = {(byte

我已经设法让蓝牙从安卓系统写入图片。 我已经让我的代码发送一个0和一个1来打开和关闭LED,并让PIC发送响应。 我现在尝试一次发送两个字节来控制多个LED。 PIC根据发送的控制字节改变LED的状态。 我用RealTerm测试了这张照片,效果很好。 当我从应用程序发送字节时,PIC有时会正确地接收到它们,而不是其他

我已经为每条消息创建了一个字节数组

byte[] Led1On = {(byte)245,(byte)1}; // LED 1 on
byte[] Led1Off = {(byte)245,(byte)0}; // LED 1 off
byte[] Led2On = {(byte)244,(byte)1}; // LED 2 on
byte[] Led2Off = {(byte)244,(byte)0}; // LED 2 off
然后从开关上点击发送

public void switch1Clicked(View v){
    // check that we have connected bluetooth first
    if(!ConStatus) {
        // if not don't action switch
        Log.d(TAG, "switch 1 clicked when not connected");
        Toast.makeText(this, "Not Connected Yet", Toast.LENGTH_SHORT).show();
        ((Switch) v).setChecked(false);
    }else {
        boolean state = ((Switch) v).isChecked();

        if (state) {
            mConnectedThread.write(Led1On);    // Send "245" then "1" via Bluetooth
        } else {
            mConnectedThread.write(Led1Off);    // Send "245" then "1" via Bluetooth
        }
    }
}
使用写函数

    /* Call this from the main activity to send data to the remote device */
    public void write(byte[] message) {
        //Log.d(TAG, "...Data to send: " + Integer.toString(message) + "...");
        //byte[] msgBuffer = message.getBytes();
        try {
            mmOutStream.write(message);
        } catch (IOException e) {
            Log.d(TAG, "...Error data send: " + e.getMessage() + "...");
        }
    }
我对Android和Java非常陌生,但通过使用这个站点和其他站点的示例,我已经成功地使这些代码工作到一定程度