|
@@ -237,6 +237,32 @@ public class SerialPortService implements OnOpenSerialPortListener {
|
|
//Log.i(TAG, "onSend: sendBytes = " + sendBytes);
|
|
//Log.i(TAG, "onSend: sendBytes = " + sendBytes);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //注册MCU
|
|
|
|
+ private long lastRegisterTimemills = 0;
|
|
|
|
+ public void registerMCU() {
|
|
|
|
+ Log.d("wzl", "registerMCU start------------");
|
|
|
|
+ if (System.currentTimeMillis() - lastRegisterTimemills > 6 * 1000) {
|
|
|
|
+ if (registerDeviceThread != null) {
|
|
|
|
+ registerDeviceThread.run();
|
|
|
|
+ }
|
|
|
|
+ lastRegisterTimemills = System.currentTimeMillis();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private Thread registerDeviceThread = new Thread(new Runnable() {
|
|
|
|
+ @Override
|
|
|
|
+ public void run() {
|
|
|
|
+ if (getPortOpened()) {
|
|
|
|
+ try {
|
|
|
|
+ initMCUDevice("F170", 1, 1);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
//向MCU注册设备
|
|
//向MCU注册设备
|
|
/* public void initMCUDeviceAddr(String uAddr){
|
|
/* public void initMCUDeviceAddr(String uAddr){
|
|
byte[] slaveAdd = SerialPortService.hexToByteArray(uAddr);
|
|
byte[] slaveAdd = SerialPortService.hexToByteArray(uAddr);
|
|
@@ -311,6 +337,17 @@ public class SerialPortService implements OnOpenSerialPortListener {
|
|
mCallback = null;
|
|
mCallback = null;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //MCU工作模式: 0-正常模式, 1-注册模式
|
|
|
|
+ public void sendRegMode(int mode) {
|
|
|
|
+ //2E C0 FF FF 89 01 01 XX
|
|
|
|
+ byte regMode = (byte) (mode & 0xff);
|
|
|
|
+ SerialModel serialModel = new SerialModel(
|
|
|
|
+ (byte) 0xFF, (byte) 0xFF,
|
|
|
|
+ SerialSignalTypeEnum.APP_MSG_REGEDIT_STATE.getDataType(), regMode
|
|
|
|
+ );
|
|
|
|
+ sendSignal(serialModel);
|
|
|
|
+ }
|
|
|
|
+
|
|
//主机主动或回应呼叫
|
|
//主机主动或回应呼叫
|
|
public void startCall(String addr) {
|
|
public void startCall(String addr) {
|
|
byte[] slaveAdd = SerialPortService.hexToByteArray(addr);
|
|
byte[] slaveAdd = SerialPortService.hexToByteArray(addr);
|