auto reset nếu lỗi
This commit is contained in:
@@ -24,6 +24,13 @@
|
|||||||
Margin="10"
|
Margin="10"
|
||||||
Click="btnSoftResetError_Click"/>
|
Click="btnSoftResetError_Click"/>
|
||||||
<Button
|
<Button
|
||||||
|
Content="RESET LỖI (ABNORMAL STORAGE)"
|
||||||
|
x:Name="btnSoftImportantError"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
Height="40"
|
||||||
|
Margin="10"
|
||||||
|
Click="btnSoftImportantError_Click"/>
|
||||||
|
<Button
|
||||||
Content="MỞ NGĂN PHỤ"
|
Content="MỞ NGĂN PHỤ"
|
||||||
x:Name="btnOpenEscrow"
|
x:Name="btnOpenEscrow"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="Stretch"
|
||||||
|
|||||||
@@ -96,6 +96,11 @@ namespace SafeBagDE70.Admin
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void btnSoftImportantError_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+33
-7
@@ -694,30 +694,56 @@ namespace SafeBagDE70
|
|||||||
}
|
}
|
||||||
public static bool ResetAbnormalStorage605()
|
public static bool ResetAbnormalStorage605()
|
||||||
{
|
{
|
||||||
|
|
||||||
var cCmdRsp = AppData.cCmdRsp;
|
var cCmdRsp = AppData.cCmdRsp;
|
||||||
bool bSuccess = false;
|
bool bSuccess = false;
|
||||||
if (cCmdRsp != null && cCmdRsp.recv_dat != null)
|
|
||||||
|
if (cCmdRsp != null)
|
||||||
{
|
{
|
||||||
if (cCmdRsp.recv_dat.dat[1] == 0x1C && cCmdRsp.recv_dat.dat[2] == 0x4A)
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
||||||
|
if (cCmdRsp.recv_dat != null &&(cCmdRsp.recv_dat.dat[1] == 0x1C && cCmdRsp.recv_dat.dat[2] == 0x4C))
|
||||||
{
|
{
|
||||||
// cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
//0. Check notes in escrow or not?
|
||||||
|
|
||||||
|
//1. Event Fix
|
||||||
|
var recvData = cCmdRsp.recv_dat;
|
||||||
|
if (recvData.dat[14] == recvData.dat[16])
|
||||||
|
{
|
||||||
|
cCmdRsp.SendLock();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cCmdRsp.SendEventFix(recvData.dat[16]);
|
||||||
|
}
|
||||||
|
//2. UnLock
|
||||||
|
// cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
||||||
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_UNLOCK);
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_UNLOCK);
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
|
|
||||||
|
//3. Lock with MODE IMPORTANT ERROR
|
||||||
var currentMode = cCmdRsp.GetLockParam().mode;
|
var currentMode = cCmdRsp.GetLockParam().mode;
|
||||||
cCmdRsp.GetLockParam().mode = Mode.MODE_SECERROR;
|
cCmdRsp.GetLockParam().mode = Mode.MODE_SECERROR;
|
||||||
cCmdRsp.SendLock();
|
cCmdRsp.SendLock();
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
|
|
||||||
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
||||||
var recvData = cCmdRsp.recv_dat;
|
recvData = cCmdRsp.recv_dat;
|
||||||
var SR2 = recvData.dat[1];
|
var SR2 = recvData.dat[1];
|
||||||
var S2 = recvData.dat[recvData.leng - 1];
|
var S2 = recvData.dat[recvData.leng - 1];
|
||||||
if (recvData.dat[1] == 0x1C && (S2==0xE2 || S2==0xE4))
|
|
||||||
|
if (SR2 == 0x1C && (S2==0xE2 || S2==0xE4))
|
||||||
{
|
{
|
||||||
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_RESET);
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_RESET);
|
||||||
Thread.Sleep(2000);
|
for(int i=0;i<10;i++)
|
||||||
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
{
|
||||||
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_SENSE);
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
S2 = recvData.dat[recvData.leng - 1];
|
||||||
|
if (S2 == 0xE7)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_CNTSTART);
|
cCmdRsp.SendXXCmd((byte)Command.CMD_DE_CNTSTART);
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
|
|||||||
@@ -425,7 +425,7 @@ namespace SafeBagDE70
|
|||||||
}
|
}
|
||||||
sensorTimer.IsEnabled = true;
|
sensorTimer.IsEnabled = true;
|
||||||
}
|
}
|
||||||
|
int nTry2Reset = 0;
|
||||||
private void GetCDMStatus()
|
private void GetCDMStatus()
|
||||||
{
|
{
|
||||||
if (!AppData.IsInTransaction)
|
if (!AppData.IsInTransaction)
|
||||||
@@ -442,9 +442,25 @@ namespace SafeBagDE70
|
|||||||
AppData.CDMSTATE.CDMStatus = "CDM: LỖI INITIALIZATION ERROR";
|
AppData.CDMSTATE.CDMStatus = "CDM: LỖI INITIALIZATION ERROR";
|
||||||
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.ERROR;
|
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.ERROR;
|
||||||
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
||||||
|
|
||||||
|
if(nTry2Reset<2)
|
||||||
|
{
|
||||||
|
AppData.ResetCDMError();
|
||||||
|
nTry2Reset++;
|
||||||
|
|
||||||
|
AppData.GetCDMState();
|
||||||
|
var SR1 = AppData.cCmdRsp.recv_dat.dat[1];
|
||||||
|
if ((SR1 == 0x07) || (SR1 == 0x04))
|
||||||
|
{
|
||||||
|
AppData.CDMSTATE.CDMStatus = "CDM: LỖI INITIALIZATION ERROR --> RESET THÀNH CÔNG";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
AppData.CDMSTATE.CDMStatus = "CDM: LỖI INITIALIZATION ERROR --> RESET KHÔNG THÀNH CÔNG";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
nTry2Reset = 0;
|
||||||
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.NORMAL;
|
AppData.DeviceStatus.CDMStatus = (int)CDMStatusCode.NORMAL;
|
||||||
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
AppData.DeviceStatus.Description = AppData.CDMSTATE.CDMStatus;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user