package com.dev.bts.data;
|
|
import java.nio.ByteBuffer;
|
|
public class FBS9100S_NT_DCDC_Data {
|
public final int DevDcDc_DataLen = 56;
|
|
public double Vsys; //¶Ë¿Úµçѹ*0.01
|
public double Vout; //DCDCÊä³öµçѹ*0.01
|
public double Vbat; //µç³Øµçѹ*0.01
|
public double Iout; //·ÅµçÊä³öµçÁ÷*0.01
|
public double Ibuck; //³äµçµçÁ÷*0.01
|
public double Tmp_Dis; //·ÅµçζÈ*1
|
public double Tmp_Chr; //³äµçζÈ*1
|
public int SMR_Alarm1;
|
public int SMR_Alarm2;
|
public int Version; //°æ±¾*0.01
|
public int[] backup = new int[10];
|
public int ModeSetComm; //¹¤×÷ģʽÉ趨,£¨1=³äµç£¬2=·Åµç£©
|
public int RunSetComm; //Æô¶¯/Í£Ö¹,£¨1=Æô¶¯£¬ÆäËû=Í££©
|
public double SetBuckI; //³äµçµçÁ÷ÉèÖÃ*0.01
|
public double SetDisVol; //·ÅµçµçѹÉèÖÃ*0.01
|
public double SetDisCurr; //·ÅµçµçÁ÷ÉèÖÃ*0.01
|
|
public int CommTxCnt; //·¢ËͼÆÊý
|
public int CommRxCnt; //½ÓÊÕ¼ÆÊý
|
public int CRC = 0;
|
|
public FBS9100S_NT_DCDC_Data clone()
|
{
|
FBS9100S_NT_DCDC_Data obj = new FBS9100S_NT_DCDC_Data();
|
|
obj.Vsys = Vsys;
|
obj.Vout = Vout;
|
obj.Vbat = Vbat;
|
obj.Iout = Iout;
|
obj.Ibuck = Ibuck;
|
obj.Tmp_Dis = Tmp_Dis;
|
obj.Tmp_Chr = Tmp_Chr;
|
obj.SMR_Alarm1 = SMR_Alarm1;
|
obj.SMR_Alarm2 = SMR_Alarm2;
|
obj.Version = Version;
|
|
obj.backup = backup.clone();
|
|
obj.ModeSetComm = ModeSetComm;
|
obj.RunSetComm = RunSetComm;
|
obj.SetBuckI = SetBuckI;
|
obj.SetDisVol = SetDisVol;
|
obj.SetDisCurr = SetDisCurr;
|
obj.CommTxCnt = CommTxCnt;
|
obj.CommRxCnt = CommRxCnt;
|
obj.CRC = CRC;
|
|
return obj;
|
}
|
|
public void copyData (FBS9100S_NT_DCDC_Data dcdc_data)
|
{
|
this.Vsys = dcdc_data.Vsys;
|
this.Vout = dcdc_data.Vout;
|
this.Vbat = dcdc_data.Vbat;
|
this.Iout = dcdc_data.Iout;
|
this.Ibuck = dcdc_data.Ibuck;
|
this.Tmp_Dis = dcdc_data.Tmp_Dis;
|
this.Tmp_Chr = dcdc_data.Tmp_Chr;
|
this.SMR_Alarm1 = dcdc_data.SMR_Alarm1;
|
this.SMR_Alarm2 = dcdc_data.SMR_Alarm2;
|
this.Version = dcdc_data.Version;
|
|
for(int n=0; n<this.backup.length; n++) {
|
this.backup[n] = backup[n];
|
}
|
|
this.ModeSetComm = dcdc_data.ModeSetComm;
|
this.RunSetComm = dcdc_data.RunSetComm;
|
this.SetBuckI = dcdc_data.SetBuckI;
|
this.SetDisVol = dcdc_data.SetDisVol;
|
this.SetDisCurr = dcdc_data.SetDisCurr;
|
this.CommTxCnt = dcdc_data.CommTxCnt;
|
this.CommRxCnt = dcdc_data.CommRxCnt;
|
}
|
|
public boolean putByteBuffer(final ByteBuffer bf)
|
{
|
if(bf.limit() < DevDcDc_DataLen)
|
return false;
|
|
ByteBuffer tmpbuf = bf;
|
int crc0 = tmpbuf.getShort(DevDcDc_DataLen-2) & 0xFFFF;
|
int crc1 = FBS9100_Crc16.CalCRC16(tmpbuf, DevDcDc_DataLen-2);
|
if(crc0 != crc1) {
|
return false;
|
}
|
|
tmpbuf.position(0);
|
Vsys = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
Vout = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
Vbat = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
Iout = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
Ibuck = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
Tmp_Dis = ((double)(tmpbuf.getShort()&0xFFFF));
|
Tmp_Chr = ((double)(tmpbuf.getShort()&0xFFFF));
|
SMR_Alarm1 = tmpbuf.getShort()&0xFFFF;
|
SMR_Alarm2 = tmpbuf.getShort()&0xFFFF;
|
Version = tmpbuf.getShort()&0xFFFF;
|
|
for(int n=0; n<backup.length; n++) {
|
backup[n] = tmpbuf.getShort()&0xFFFF;
|
}
|
|
ModeSetComm = tmpbuf.getShort()&0xFFFF;
|
RunSetComm = tmpbuf.getShort()&0xFFFF;
|
SetBuckI = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
SetDisVol = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
SetDisCurr = ((double)(tmpbuf.getShort()&0xFFFF))/100;
|
CommTxCnt = tmpbuf.getShort()&0xFFFF;
|
CommRxCnt = tmpbuf.getShort()&0xFFFF;
|
CRC = tmpbuf.getShort()&0xFFFF;
|
|
tmpbuf.compact();
|
tmpbuf.flip();
|
|
return true;
|
}
|
}
|