|
@@ -110,7 +110,8 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
private TextView tvDataContent; //显示当前处于何种数值模式:原始值、差值、基准……
|
|
|
private TextView tvMAD; //显示最大相邻偏差
|
|
|
private TextView mtextView;
|
|
|
- private byte byDisplayFrame; //间隔显示帧数
|
|
|
+ private byte byDisplayFrame = 12; //间隔显示帧数
|
|
|
+ private byte byDisplayFrameCount = 12; //用于间隔显示计数
|
|
|
|
|
|
public String stTestLog; //最大最小值测试信息存放字符串
|
|
|
String stTestLogShow= ""; //最大最小值测试信息合并起来存放字符串
|
|
@@ -964,14 +965,14 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
return 0x77; //用0x77来表示传输失败
|
|
|
|
|
|
//SystemClock.sleep(12); //加长时间,避免数据显示错乱乱闪
|
|
|
- SystemClock.sleep(110); //加长时间,避免数据显示错乱乱闪
|
|
|
+ SystemClock.sleep(24); //加长时间,避免数据显示错乱乱闪
|
|
|
|
|
|
isReceiverMessage = false; //先关闭循环接收信息
|
|
|
|
|
|
i = mUsbDeviceConnection.bulkTransfer(mUsbEndpointIn, mBytes, 0, 0x40, 3000);
|
|
|
|
|
|
//SystemClock.sleep(12); //加长时间,避免数据显示错乱乱闪
|
|
|
- SystemClock.sleep(110); //加长时间,避免数据显示错乱乱闪
|
|
|
+ SystemClock.sleep(24); //加长时间,避免数据显示错乱乱闪
|
|
|
|
|
|
if (i == 0x40)
|
|
|
return mBytes[1];
|
|
@@ -1062,6 +1063,15 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
|
|
|
byte syncFlag = 1;
|
|
|
|
|
|
+ byte maddressHigh = (byte) 0x81;
|
|
|
+ byte maddressLow = (byte) 0x4E; //SYNC address
|
|
|
+ byte msubcommand = (byte) 0x0f;
|
|
|
+ byte mdata = (byte) 0x00;
|
|
|
+
|
|
|
+ if (byProductType == GT7) {
|
|
|
+ maddressHigh = (byte) 0x82;
|
|
|
+ }
|
|
|
+
|
|
|
if (showFlag == 6)
|
|
|
{
|
|
|
btTestStep = 1; //
|
|
@@ -1094,14 +1104,14 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
|
|
|
while(true) {
|
|
|
//轮询读取0x814E,如果非0,则读取rawdata
|
|
|
- byte maddressHigh = (byte) 0x81;
|
|
|
+ maddressHigh = (byte) 0x81;
|
|
|
if (byProductType == GT7)
|
|
|
{
|
|
|
maddressHigh = (byte) 0x82;
|
|
|
|
|
|
}
|
|
|
|
|
|
- byte maddressLow = (byte) 0x4E;
|
|
|
+ maddressLow = (byte) 0x4E;
|
|
|
syncFlag = iicByteRead(maddressHigh, maddressLow);
|
|
|
|
|
|
//while ((syncFlag == 0 )|| (syncFlag == 0x77)) {
|
|
@@ -1111,80 +1121,77 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- if(count == 0) {
|
|
|
- //mHandler.sendEmptyMessage(LOG2_MESSAGE);
|
|
|
- }
|
|
|
- else {
|
|
|
- // mHandler.sendEmptyMessage(SEND_MESSAGE_SUCCESS); //清空文本框
|
|
|
- }
|
|
|
- for (int i = 0; i <mRawdataBytes.length; i++)
|
|
|
- {
|
|
|
- mRawdataBytes[i] = (byte)0x00;
|
|
|
+ if (showFlag != 6) {
|
|
|
+ if (byDisplayFrame == byDisplayFrameCount) {
|
|
|
+ for (int i = 0; i < mRawdataBytes.length; i++) {
|
|
|
+ mRawdataBytes[i] = (byte) 0x00;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
+ if ((byDisplayFrame == byDisplayFrameCount) || (showFlag == 6)) {
|
|
|
|
|
|
- if (getRawdata() == true) {
|
|
|
-
|
|
|
- switch (showFlag) {
|
|
|
- case 1:// rawdata
|
|
|
- //if (byDisplayFrame == 5){
|
|
|
- // byDisplayFrame = 0;
|
|
|
- //
|
|
|
- // mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
- //}else
|
|
|
- //{
|
|
|
- // byDisplayFrame++;
|
|
|
- //}
|
|
|
- mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
+ if (showFlag != 6) {
|
|
|
+ byDisplayFrameCount = 0;
|
|
|
+ }
|
|
|
|
|
|
- break;
|
|
|
- case 2://manual diff
|
|
|
- if(count == 999) //第一帧备份rawdata作为基准
|
|
|
- {
|
|
|
- if (byProductType == GT7)
|
|
|
+ if (getRawdata() == true) {
|
|
|
+
|
|
|
+ switch (showFlag) {
|
|
|
+ case 1:// GT9XXX and GT7XXX rawdata
|
|
|
+ case 7:// GT7XXX diffdata
|
|
|
+
|
|
|
+ mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 2://manual diff
|
|
|
+ if (count == 999) //第一帧备份rawdata作为基准
|
|
|
{
|
|
|
- for (int i = 0; i < 44 * 72 * 2; i++) {
|
|
|
- int j = i/2;
|
|
|
- mManualRefInt[j] = ((mRawdataBytes[i + 1] & 0xFF)<<8) + (mRawdataBytes[i] & 0xFF);
|
|
|
- i++;
|
|
|
- }
|
|
|
- }else{
|
|
|
- for (int i = 0; i < 42 * 30 * 2; i++ ) {
|
|
|
- int j = i/2;
|
|
|
- mManualRefInt[j] = ((mRawdataBytes[i] & 0xFF)<<8) + (mRawdataBytes[i+1] & 0xFF);
|
|
|
- i++;
|
|
|
+ if (byProductType == GT7) {
|
|
|
+ for (int i = 0; i < 44 * 72 * 2; i++) {
|
|
|
+ int j = i / 2;
|
|
|
+ mManualRefInt[j] = ((mRawdataBytes[i + 1] & 0xFF) << 8) + (mRawdataBytes[i] & 0xFF);
|
|
|
+ i++;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ for (int i = 0; i < 42 * 30 * 2; i++) {
|
|
|
+ int j = i / 2;
|
|
|
+ mManualRefInt[j] = ((mRawdataBytes[i] & 0xFF) << 8) + (mRawdataBytes[i + 1] & 0xFF);
|
|
|
+ i++;
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- mHandler.sendEmptyMessage(MANUALDIFF_MESSAGE);
|
|
|
- // mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
- break;
|
|
|
- case 3://diffdata
|
|
|
- mHandler.sendEmptyMessage(DIFF_MESSAGE);
|
|
|
- break;
|
|
|
- case 5: //stop
|
|
|
- showFlag = 4;
|
|
|
- count = 1000;
|
|
|
- btTestStep = 0;
|
|
|
- changeToNormalMode();
|
|
|
- break;
|
|
|
- case 6: //test
|
|
|
- mHandler.sendEmptyMessage(TEST_DATA_MESSAGE);
|
|
|
- break;
|
|
|
+ mHandler.sendEmptyMessage(MANUALDIFF_MESSAGE);
|
|
|
+ // mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
+ break;
|
|
|
+ case 3://diffdata
|
|
|
+ mHandler.sendEmptyMessage(DIFF_MESSAGE);
|
|
|
+ break;
|
|
|
+ case 5: //stop
|
|
|
+ showFlag = 4;
|
|
|
+ count = 1000;
|
|
|
+ btTestStep = 0;
|
|
|
+ changeToNormalMode();
|
|
|
+ break;
|
|
|
+ case 6: //test
|
|
|
+ mHandler.sendEmptyMessage(TEST_DATA_MESSAGE);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ iicByteWrite(maddressHigh, maddressLow, msubcommand, mdata);
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- mHandler.sendEmptyMessage(CLEAR_MESSAGE); //清空文本框
|
|
|
- //break;
|
|
|
- }
|
|
|
+ else{
|
|
|
+ byDisplayFrameCount++;
|
|
|
|
|
|
- // }
|
|
|
- //SystemClock.sleep(50);
|
|
|
+ iicByteWrite(maddressHigh, maddressLow, msubcommand, mdata);
|
|
|
+ }
|
|
|
}
|
|
|
} //ThreadPool
|
|
|
}); //ThreadPool
|
|
@@ -1237,6 +1244,11 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
if (byProductType == GT7) //GT7的低位在前
|
|
|
{
|
|
|
datatemp[i] = ((mRawdataBytes[idtemp + 1] & 0xFF) << 8) + (mRawdataBytes[idtemp] & 0xFF);
|
|
|
+
|
|
|
+ if ((showFlag == 7) && (datatemp[i] > 10)){ //GT7XXX diffdata
|
|
|
+ textView.setTextColor(Color.parseColor("#FF0000"));
|
|
|
+ }
|
|
|
+
|
|
|
}else{
|
|
|
datatemp[i] = ((mRawdataBytes[idtemp] & 0xFF) << 8) + (mRawdataBytes[idtemp + 1] & 0xFF);
|
|
|
}
|
|
@@ -2830,7 +2842,13 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
textGridLayout.setColumnCount(colnum + 1);
|
|
|
textGridLayout.setRowCount(rownum);
|
|
|
|
|
|
- byDisplayFrame = 0;
|
|
|
+ byDisplayFrame = 7;
|
|
|
+ byDisplayFrameCount = 7;
|
|
|
+ if (byProductType == GT7) //GT7 数据多,要多加时间间隔
|
|
|
+ {
|
|
|
+ byDisplayFrame = 14;
|
|
|
+ byDisplayFrameCount = 14;
|
|
|
+ }
|
|
|
|
|
|
btn_RawdataShow.setEnabled(false);
|
|
|
btn_DiffdataShow.setEnabled(false);
|
|
@@ -2863,7 +2881,7 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
showFlag = 3;
|
|
|
if (byProductType == GT7)
|
|
|
{
|
|
|
- showFlag = 1; //GT7系列的差值是2bytes,按照RawData的方式去显示
|
|
|
+ showFlag = 7; //GT7系列的差值是2bytes,按照RawData的方式去显示
|
|
|
}
|
|
|
|
|
|
changeToDebugMode();
|
|
@@ -2893,7 +2911,12 @@ public class DataAnalysis extends AppCompatActivity
|
|
|
tvDataContent.setText("[" + getResources().getString(R.string.reffdata) + "]");
|
|
|
getRawdata();
|
|
|
mHandler.sendEmptyMessage(RAWDATA_MESSAGE);
|
|
|
-
|
|
|
+ btn_RawdataShow.setEnabled(true);
|
|
|
+ btn_DiffdataShow.setEnabled(true);
|
|
|
+ btn_ReffdataShow.setEnabled(true);
|
|
|
+ btn_ManualdiffdataShow.setEnabled(true);
|
|
|
+ //btn_Manualreff.setEnabled(false);
|
|
|
+ btn_Test.setEnabled(true);
|
|
|
break;
|
|
|
|
|
|
case R.id.manualdiff:
|