예제 #1
0
 private static void ReadStatusByte(RS232 paramcom, ValenceBattery parambattery)
 {
     try
     {
         paramcom.Write(parambattery.BatteryStatusRead());
         if (paramcom.Read(9) != -1)
         {
             if (!parambattery.BatteryStatusReturn(paramcom.InputStream))
             {
                 throw new Exception("Read Battery Status Error");
             }
             Console.WriteLine("Battery Status Flags");
             Console.WriteLine($"Under 2.3V: {parambattery.fault_UV2v3}");
             Console.WriteLine($"Under 2.5V: {parambattery.fault_UV2v5}");
             // Console.WriteLine($"Under 2.3V w/ Chg Curr: ")
             Console.WriteLine($"Exceed 4V: {parambattery.fault_OV4v0}");
             Console.WriteLine($"Exceed 4.5V: {parambattery.fault_OV4v5}");
             Console.WriteLine($"Cell Over 60c: {parambattery.fault_OTcell60c}");
             Console.WriteLine($"Cell Over 65c: {parambattery.fault_OTcell65c}");
             Console.WriteLine($"PCBA Over 80c: {parambattery.fault_OTpcba80c}");
             Console.WriteLine($"Cell Over 100c: {parambattery.fault_OTpcba100c}");
             Console.WriteLine($"NMI Error: {parambattery.fault_NMIFailure}");
             Console.WriteLine($"Battery Failure: {parambattery.fault_WeakCellBank}");
         }
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message.ToString());
     }
 }