kopia lustrzana https://github.com/felHR85/UsbSerial
Ready to take some tests to prove me wrong :)
rodzic
6db9ff44d5
commit
db2a03f0f6
Plik binarny nie jest wyświetlany.
Plik binarny nie jest wyświetlany.
Plik binarny nie jest wyświetlany.
Plik binarny nie jest wyświetlany.
Plik binarny nie jest wyświetlany.
|
@ -117,7 +117,10 @@ public class CP2102SerialDevice extends UsbSerialDevice
|
|||
@Override
|
||||
public void close()
|
||||
{
|
||||
// TODO
|
||||
setControlCommand(CP210x_IFC_ENABLE, CP210x_UART_DISABLE, null);
|
||||
connection.close();
|
||||
workerThread.stopWorkingThread();
|
||||
listenThread.stopListenThread();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -147,7 +150,7 @@ public class CP2102SerialDevice extends UsbSerialDevice
|
|||
@Override
|
||||
public void setParity(int parity)
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
// TODO
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -181,7 +184,9 @@ public class CP2102SerialDevice extends UsbSerialDevice
|
|||
{
|
||||
dataLength = data.length;
|
||||
}
|
||||
return connection.controlTransfer(CP210x_REQTYPE_HOST2DEVICE, request, value, 0, data, dataLength, USB_TIMEOUT);
|
||||
int response = connection.controlTransfer(CP210x_REQTYPE_HOST2DEVICE, request, value, 0, data, dataLength, USB_TIMEOUT);
|
||||
Log.i(CLASS_ID,"Control Transfer Response: " + String.valueOf(response));
|
||||
return response;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -12,12 +12,12 @@ public class SerialBuffer
|
|||
private Object mReadLock;
|
||||
private Object mWriteLock;
|
||||
|
||||
public SerialBuffer(Object mReadLock, Object mWriteLock)
|
||||
public SerialBuffer()
|
||||
{
|
||||
writeBuffer = ByteBuffer.allocate(DEFAULT_WRITE_BUFFER_SIZE);
|
||||
readBuffer = ByteBuffer.allocate(DEFAULT_READ_BUFFER_SIZE);
|
||||
this.mReadLock = mReadLock;
|
||||
this.mWriteLock = mWriteLock;
|
||||
this.mReadLock = new Object();
|
||||
this.mWriteLock = new Object();
|
||||
}
|
||||
|
||||
public void putWriteBuffer(byte[] data)
|
||||
|
|
|
@ -17,8 +17,6 @@ public abstract class UsbSerialDevice implements UsbSerialInterface
|
|||
protected final UsbDeviceConnection connection;
|
||||
|
||||
protected SerialBuffer serialBuffer;
|
||||
protected final Object readBufferLock;
|
||||
protected final Object writeBufferLock;
|
||||
|
||||
private Object objectMonitor;
|
||||
protected ListenThread listenThread;
|
||||
|
@ -28,9 +26,8 @@ public abstract class UsbSerialDevice implements UsbSerialInterface
|
|||
{
|
||||
this.device = device;
|
||||
this.connection = connection;
|
||||
this.readBufferLock = new Object();
|
||||
this.writeBufferLock = new Object();
|
||||
serialBuffer = new SerialBuffer(readBufferLock, writeBufferLock);
|
||||
this.objectMonitor = new Object();
|
||||
serialBuffer = new SerialBuffer();
|
||||
workerThread = new WorkerThread();
|
||||
workerThread.start();
|
||||
}
|
||||
|
@ -88,7 +85,10 @@ public abstract class UsbSerialDevice implements UsbSerialInterface
|
|||
Log.i(CLASS_ID, "Send data length: " + String.valueOf(pos + 1));
|
||||
serialBuffer.clearWriteBuffer();
|
||||
}
|
||||
objectMonitor.notify();
|
||||
synchronized(objectMonitor)
|
||||
{
|
||||
objectMonitor.notify();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue