XF¢ %Ôf1=0.1#V16_1 f2=0.1 f3=0.1 f4=0.1 f5=0.1 ch1=0 ch2=0 ch3=0 ch4=0 ch5=0 ch6=0 ch7=0 t0="" t1="" t2="" t3="" t4="" t5="" t6="" crc16=0 vs="" d0="" gkey="" sy="" str1="" i=0 dt=0 dt1=0 len=0 rev1=0 rev=0 y0="" y1="" y2="" x="" x1=[0x01,0x03,0x75,0x30,0x00,0x11,0x9F,0xC5] x2=[0x01,0x03,0x75,0x48,0x00,0x20,0xDE,0x08] x4=[0x01,0x03,0x75,0x94,0x00,0x05,0xDE,0x29] x5=[0x01,0x03,0x75,0xB0,0x00,0x02,0xDF,0xE0] x6=[0x01,0x03,0x9A,0xCC,0x00,0x16,0x2A,0xE3] x7=[0x01,0x03,0x75,0x67,0x00,0x20,0xEF,0xC1] x8=[0x01,0x03,0xCB,0x3C,0x00,0x20,0xBA,0x3A] x9=[0x01,0x03,0xCB,0x5C,0x00,0x20,0xBA,0x24] x10=[0x01,0x03,0x75,0xA5,0x00,0x09,0x8F,0xE3] x11=[0x01,0x03,0xA0,0x28,0x00,0x20,0xE6,0x1A] x12=[0x01,0x03,0xA0,0x69,0x00,0x20,0xB6,0x0E] x13=[0x01,0x03,0xA0,0x89,0x00,0x20,0xB7,0xF8] x14=[0x01,0x03,0xA0,0xA9,0x00,0x08,0xB6,0x2C] x15=[0x01,0x03,0x9C,0x40,0x00,0x02,0xEB,0x8F] y0=[0x01,0x06,0x00] FUNCTION gt1() t0="" t1="" t0=y0.insertAt(2,y2) t1=t0.insertAt(5,y1) END FUNCTION ydc() t6="" len=t1.length() i=0 WHILE(i>22)&0x3F min=(time>>16)&0x3F t1=d1+hour.toString(0,0)+min.toString(0,0) ydc() END FUNCTION gdt() i=0 dt=0 dt1=0 len=d0.length() WHILE(i=0) dt1=dt1*10+dt END i=i+1 END str1=dt1.toString(1,0) END FUNCTION gtm() year=0 mon=0 day=0 sec=0 msec=0 a=hour<<22 b=min<<16 sls_t=a+b sls_z=sls_t.prtString() sls="0-" sf=sls.insertAt(2,sls_z) END RECV L getcmd x=INPUT RETURN(FALSE) END RECV L getdata IF(x==x1)#7530 f1=INPUT.charAt(3) f2=INPUT.charAt(4) f3=(f1*256+f2)/10 SEND(L,batteryVoltage,f3) f1=INPUT.charAt(5) f2=INPUT.charAt(6) f3=(f1*256+f2)/10 SEND(L,batteryCurrent,f3) ch1=INPUT.charAt(7) ch2=INPUT.charAt(8) ch3=ch1*256+ch2 SEND(L,batteryRemainingCapacitySOC,ch3) ch1=INPUT.charAt(9) ch2=INPUT.charAt(10) ch3=ch1*256+ch2 SEND(L,batteryChargePower,ch3) f1=INPUT.charAt(11) f2=INPUT.charAt(12) f3=(f1*256+f2)/10 SEND(L,mainsChargingCurrent,f3) f1=INPUT.charAt(25) f2=INPUT.charAt(26) f3=(f1*256+f2)/10 SEND(L,pvVolt1,f3) f1=INPUT.charAt(27) f2=INPUT.charAt(28) f3=(f1*256+f2)/10 SEND(L,pvCurr1,f3) ch1=INPUT.charAt(29) ch2=INPUT.charAt(30) ch3=ch1*256+ch2 SEND(L,pvPower1,ch3) f1=INPUT.charAt(31) f2=INPUT.charAt(32) f3=(f1*256+f2)/10 SEND(L,pvVolt2,f3) f1=INPUT.charAt(33) f2=INPUT.charAt(34) f3=(f1*256+f2)/10 SEND(L,pvCurr2,f3) ch1=INPUT.charAt(35) ch2=INPUT.charAt(36) ch3=ch1*256+ch2 SEND(L,pvPower2,ch3) ch1=INPUT.charAt(29) ch2=INPUT.charAt(30) ch3=INPUT.charAt(35) ch4=INPUT.charAt(36) ch5=(ch1*256+ch2)+(ch3*256+ch4) SEND(L,generationPower,ch5) END IF(x==x2)#7548 f1=INPUT.charAt(3) f2=INPUT.charAt(4) f3=(f1*256+f2)/10 SEND(L,aPhaseOutputVoltage,f3) f1=INPUT.charAt(5) f2=INPUT.charAt(6) f3=(f1*256+f2)/10 SEND(L,aPhaseOutputCurrents,f3) ch1=INPUT.charAt(17) ch2=INPUT.charAt(18) ch3=ch1*256+ch2 SEND(L,normalLoadW_A,ch3) ch3=INPUT.charAt(31) ch4=INPUT.charAt(32) ch5=INPUT.charAt(45) ch6=INPUT.charAt(46) ch7=ch1*256+ch2+ch3*256+ch4+ch5*256+ch6 SEND(L,load_power,ch7) ch1=INPUT.charAt(52) SEND(L,outputLoadRateOfEntireMachine,ch1) END IF(x==x4)#7594 ch1=INPUT.charAt(6) IF(ch1==0) vs="No Output" END IF(ch1==1) vs="Mains Power Output" END IF(ch1==2) vs="Inverted Output" END IF(ch1==3) vs="Mains Overload" END IF(ch1==4) vs="Inverter Overload" END SEND(L,outputState,vs) ch1=INPUT.charAt(10) vs="啿œº" IF(ch1==0) vs="啿œº" END IF(ch1==1) vs="并机" END IF(ch1==5) vs="3PL1" END IF(ch1==6) vs="3PL2" END IF(ch1==7) vs="3PL3" END SEND(L,parallelModeSetting,vs) END IF(x==x5)#75B0 ch1=INPUT.charAt(6) IF(ch1==0) vs="storagecharging" END IF(ch1==1) vs="storage discharging" END IF(ch1==2) vs="storage holding" END SEND(L,systemBatteryStatus,vs) END IF(x==x6)#9ACC f1=INPUT.charAt(21) f2=INPUT.charAt(22) f3=(f1*256+f2)/10 SEND(L,qzTotalBatteryPower,f3) END IF(x==x7)#7567 f1=INPUT.charAt(9) f2=INPUT.charAt(10) f3=(f1*256+f2)/10 SEND(L,mainsPowerAPhaseVoltage,f3) f1=INPUT.charAt(11) f2=INPUT.charAt(12) f3=(f1*256+f2)/10 SEND(L,mainsPowerAPhaseCurrent,f3) f1=INPUT.charAt(13) f2=INPUT.charAt(14) f3=(f1*256+f2)/100 SEND(L,mainsFrequency,f3) f1=INPUT.charAt(15) f2=INPUT.charAt(16) f3=(f1*256+f2)/10 SEND(L,mainsPowerBPhaseVoltage,f3) f1=INPUT.charAt(17) f2=INPUT.charAt(18) f3=(f1*256+f2)/10 SEND(L,mainsPowerBPhaseCurrent,f3) f1=INPUT.charAt(19) f2=INPUT.charAt(20) f3=(f1*256+f2)/10 SEND(L,mainsPowerCPhaseVoltage,f3) f1=INPUT.charAt(21) f2=INPUT.charAt(22) f3=(f1*256+f2)/10 SEND(L,mainsPowerCPhaseCurrent,f3) ch1=INPUT.charAt(29) ch2=INPUT.charAt(30) ch3=ch1*256+ch2 SEND(L,gridAphaseActivePower,ch3) END IF(x==x8)#CB3C f1=INPUT.charAt(37) f2=INPUT.charAt(38) f3=(f1*256+f2)/10 SEND(L,batteryChargingOfThisDay,f3) f1=INPUT.charAt(39) f2=INPUT.charAt(40) f3=(f1*256+f2)/10 SEND(L,batteryDischargeOfThisDay,f3) f1=INPUT.charAt(41) f2=INPUT.charAt(42) f3=(f1*256+f2)/10 SEND(L,pvGeneratedEnergyOfDay,f3) f1=INPUT.charAt(43) f2=INPUT.charAt(44) f3=(f1*256+f2)/10 SEND(L,powerConsumptionOnTheDayOfTheLoad,f3 f1=INPUT.charAt(49) f2=INPUT.charAt(50) f3=INPUT.charAt(47) f4=INPUT.charAt(48) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,batChgEnergyTotal,f5) f1=INPUT.charAt(53) f2=INPUT.charAt(54) f3=INPUT.charAt(51) f4=INPUT.charAt(52) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,batDischgEnergyTotal,f5) f1=INPUT.charAt(57) f2=INPUT.charAt(58) f3=INPUT.charAt(55) f4=INPUT.charAt(56) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,pvCumulativePowerGeneration,f5) f1=INPUT.charAt(61) f2=INPUT.charAt(62) f3=INPUT.charAt(59) f4=INPUT.charAt(60) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,loadTotalElectricityConsumption,f5) f1=INPUT.charAt(63) f2=INPUT.charAt(64) f3=(f1*256+f2)/10 SEND(L,lineChgEnergyTday,f3) f1=INPUT.charAt(65) f2=INPUT.charAt(66) f3=(f1*256+f2)/10 SEND(L,loadConsumLineTday,f3) END IF(x==x9)#CB5C f1=INPUT.charAt(15) f2=INPUT.charAt(16) f3=INPUT.charAt(13) f4=INPUT.charAt(14) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,municipalChargingCapacity,f5) f1=INPUT.charAt(19) f2=INPUT.charAt(20) f3=INPUT.charAt(17) f4=INPUT.charAt(18) f5=(f1*256*256*256+f2*256*256+f3*256+f4)/10 SEND(L,loadConsumptionFromMains,f5) END IF(x==x10)#75A5 ch1=INPUT.charAt(4) IF(ch1==1) SEND(L,batteryLowVoltage,ch1) END IF(ch1==9) SEND(L,bypassOutOverload,ch1) END ch1=INPUT.charAt(6) IF(ch1==7) SEND(L,overTemperInv,ch1) END END IF(x==x11)#A028 ch1=INPUT.charAt(4) IF(ch1==0) vs="Solar Priority" END IF(ch1==1) vs="Line Priority" END IF(ch1==2) vs="Battery Priority" END IF(ch1==3) vs="Hybrid Priority" END SEND(L,loadPowerSupplyPriority,vs) f1=INPUT.charAt(5) f2=INPUT.charAt(6) f3=(f1*256+f2)/10 SEND(L,systemVoltageSetting,f3) f1=INPUT.charAt(7) f2=INPUT.charAt(8) f3=(f1*256+f2)/100 SEND(L,systemFrequencySetting,f3) f1=INPUT.charAt(21) f2=INPUT.charAt(22) f3=(f1*256+f2)/10 SEND(L,settingUtilityMaxChargingCurrent,f3) ch1=INPUT.charAt(16) IF(ch1==0) vs="Solar Priority" END IF(ch1==1) vs="Line Priority" END IF(ch1==2) vs="Hybrid Mode" END IF(ch1==3) vs="Solar Only" END SEND(L,chargingPrioritySetting,vs) ch1=INPUT.charAt(26) SEND(L,buzzerMuteEnable,ch1) ch1=INPUT.charAt(48) SEND(L,batteryActivationEnable,ch1) ch1=INPUT.charAt(54) SEND(L,hybirdPriorityEnable,ch1) END IF(x==x12)#A069 ch1=INPUT.charAt(4) SEND(L,antiIslandingEnablement,ch1) ch1=INPUT.charAt(24) SEND(L,remoteTurnOffEn,ch1) ch1=INPUT.charAt(66) SEND(L,feedIntoGridEn,ch1) END IF(x==x13)#A089 ch1=INPUT.charAt(10) IF(ch1==1) vs="SLD" END IF(ch1==2) vs="FLD" END IF(ch1==3) vs="GEL" END IF(ch1==4) vs="14 series Lithinum iron phosphate" END IF(ch1==5) vs="15 series Lithinum iron phosphate" END IF(ch1==6) vs="16 series Lithinum iron phosphate" END IF(ch1==7) vs="7 series Lithinum iron phosphate" END IF(ch1==8) vs="8 series Lithinum iron phosphate" END IF(ch1==9) vs="9 series Lithinum iron phosphate" END IF(ch1==10) vs="7 series ternary lithium battery" END IF(ch1==11) vs="8 series ternary lithium battery" END IF(ch1==12) vs="13 series ternary lithium battery" END IF(ch1==13) vs="14 series ternary lithium battery" END IF(ch1==14) vs="10 series Lithinum iron phosphate" END IF(ch1==15) vs="11 series Lithinum iron phosphate" END IF(ch1==16) vs="12 series Lithinum iron phosphate" END SEND(L,batteryTypeSetting,vs) f1=INPUT.charAt(11) f2=INPUT.charAt(12) f3=(f1*256+f2)/10 SEND(L,bulkChargingVoltageSetting,f3) f1=INPUT.charAt(13) f2=INPUT.charAt(14) f3=(f1*256+f2)/10 SEND(L,batteryFloatChargingVoltage,f3) f1=INPUT.charAt(21) f2=INPUT.charAt(22) f3=(f1*256+f2)/10 SEND(L,inv2LineVolt,f3) f1=INPUT.charAt(21) f2=INPUT.charAt(22) f3=(f1*256+f2)/10 SEND(L,mainsToBatteryVoltage,f3) ch1=INPUT.charAt(41) ch2=INPUT.charAt(42) ch3=ch1*256+ch2 SEND(L,batStopSOC,ch3) ch1=INPUT.charAt(45) ch2=INPUT.charAt(46) ch3=ch1*256+ch2 SEND(L,inv2LineSOC,ch3) ch1=INPUT.charAt(47) ch2=INPUT.charAt(48) ch3=ch1*256+ch2 SEND(L,lineBack2InvSOC,ch3) ch1=INPUT.charAt(36) IF(ch1==0) vs="关闭BMS" END IF(ch1==1) vs="485-BMS" END IF(ch1==2) vs="CAN-BMS" END SEND(L,bmsSet,vs) ch1=INPUT.charAt(38) IF(ch1==0) vs="日月圆" END IF(ch1==1) vs="派能" END IF(ch1==2) vs="奧冠" END IF(ch1==3) vs="欧力特" END IF(ch1==4) vs="国轩" END IF(ch1==5) vs="欣旺达" END IF(ch1==6) vs="长丰" END IF(ch1==7) vs="大秦" END IF(ch1==9) vs="沛城" END IF(ch1==10) vs="电科" END IF(ch1==11) vs="麦田" END IF(ch1==12) vs="安仕" END IF(ch1==13) vs="派能3" END IF(ch1==15) vs="美智" END IF(ch1==16) vs="天技" END SEND(L,bmsProtocal,vs) hour=INPUT.charAt(51) min=INPUT.charAt(52) gtm() SEND(L,chargingStartTime1,sf) hour=INPUT.charAt(53) min=INPUT.charAt(54) gtm() SEND(L,endChargingTime1,sf) hour=INPUT.charAt(55) min=INPUT.charAt(56) gtm() SEND(L,chargingStartTime2,sf) hour=INPUT.charAt(57) min=INPUT.charAt(58) gtm() SEND(L,endChargingTime2,sf) hour=INPUT.charAt(59) min=INPUT.charAt(60) gtm() SEND(L,chargingStartTime3,sf) hour=INPUT.charAt(61) min=INPUT.charAt(62) gtm() SEND(L,endChargingTime3,sf) ch1=INPUT.charAt(50) SEND(L,onTimeChargeEn,ch1) ch1=INPUT.charAt(64) SEND(L,onTimeDischgEn,ch1) hour=INPUT.charAt(65) min=INPUT.charAt(66) gtm() SEND(L,startingDischargeTimeOfSection1,sf) END IF(x==x14)#A0A9 hour=INPUT.charAt(3) min=INPUT.charAt(4) gtm() SEND(L,endDischargeTimeOfSection1,sf) hour=INPUT.charAt(5) min=INPUT.charAt(6) gtm() SEND(L,startingDischargeTimeOfSection2,sf) hour=INPUT.charAt(7) min=INPUT.charAt(8) gtm() SEND(L,endDischargeTimeOfSection2,sf) hour=INPUT.charAt(9) min=INPUT.charAt(10) gtm() SEND(L,startingDischargeTimeOfSection3,sf) hour=INPUT.charAt(11) min=INPUT.charAt(12) gtm() SEND(L,endDischargeTimeOfSection3,sf) END IF(x==x15)#9C40 ch1=INPUT.charAt(4) SEND(L,onOrOffControl,ch1) ch1=INPUT.charAt(6) SEND(L,machineRestartControl,ch1) END RETURN(FALSE) END FUNCTION sd() SEND(L,uart0,d1) RETURN(FALSE) END RECV L getkey gkey=INPUT IF(gkey=="wifistatus") SEND(L,wifistatus,"WiFiStatus") END IF(gkey=="blestatus") SEND(L,blestatus,"BLEStatus") END RETURN(FALSE) END RECV L setkey sy=INPUT RETURN(FALSE) END RECV L setvalue IF(sy=="onOrOffControl") y2=[0x9C,0x40] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="loadPowerSupplyPriority") y2=[0xA0,0x28] d0=INPUT IF(d0=="Solar Priority") y1=[0x00] END IF(d0=="Line Priority") y1=[0x01] END IF(d0=="Battery Priority") y1=[0x02] END IF(d0=="Hybrid Priority") y1=[0x03] END gt1() ydc() END A=1 IF(sy=="chargingPrioritySetting") y2=[0xA0,0x2E] d0=INPUT IF(d0=="Solar Priority") y1=[0x00] END IF(d0=="Line Priority") y1=[0x01] END IF(d0=="Hybrid Mode") y1=[0x02] END IF(d0=="Solar Only") y1=[0x03] END gt1() ydc() END A=1 IF(sy=="buzzerMuteEnable") y2=[0xA0,0x33] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="batteryActivationEnable") y2=[0xA0,0x3E] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="hybirdPriorityEnable") y2=[0xA0,0x41] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="remoteTurnOffEn") y2=[0xA0,0x73] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="feedIntoGridEn") y2=[0xA0,0x88] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="batteryTypeSetting") y2=[0xA0,0x8C] d0=INPUT IF(d0=="SLD") y1=[0x01] END A=1 IF(d0=="FLD") y1=[0x02] END IF(d0=="GEL") y1=[0x03] END IF(d0=="14 series Lithinum iron phosphate") y1=[0x04] END IF(d0=="15 series Lithinum iron phosphate") y1=[0x05] END IF(d0=="16 series Lithinum iron phosphate") y1=[0x06] END IF(d0=="7 series Lithinum iron phosphate") y1=[0x07] END IF(d0=="8 series Lithinum iron phosphate") y1=[0x08] END IF(d0=="9 series Lithinum iron phosphate") y1=[0x09] END IF(d0=="7 series ternary lithium battery") y1=[0x0A] END IF(d0=="8 series ternary lithium battery") y1=[0x0B] END IF(d0=="13 series ternary lithium battery") y1=[0x0C] END IF(d0=="14 series ternary lithium battery") y1=[0x0D] END IF(d0=="10 series Lithinum iron phosphate") y1=[0x0E] END IF(d0=="11 series Lithinum iron phosphate") y1=[0x0F] END IF(d0=="12 series Lithinum iron phosphate") y1=[0x10] END gt1() ydc() END A=1 IF(sy=="bmsSet") y2=[0xA0,0x99] d0=INPUT IF(d0=="关闭BMS") y1=[0x00] END IF(d0=="485-BMS") y1=[0x01] END IF(d0=="CAN-BMS") y1=[0x02] END gt1() ydc() END A=1 IF(sy=="onTimeChargeEn") y2=[0xA0,0xA0] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="onTimeDischgEn") y2=[0xA0,0xA7] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="chargingStartTime1") d0=INPUT d1=[0x01,0x06,0xA0,0xA1] gde() END A=1 IF(sy=="endChargingTime1") d0=INPUT d1=[0x01,0x06,0xA0,0xA2] gde() END A=1 IF(sy=="chargingStartTime2") d0=INPUT d1=[0x01,0x06,0xA0,0xA3] gde() END A=1 IF(sy=="endChargingTime2") d0=INPUT d1=[0x01,0x06,0xA0,0xA4] gde() END A=1 IF(sy=="chargingStartTime3") d0=INPUT d1=[0x01,0x06,0xA0,0xA5] gde() END A=1 IF(sy=="endChargingTime3") d0=INPUT d1=[0x01,0x06,0xA0,0xA6] gde() END A=1 IF(sy=="startingDischargeTimeOfSection1") d0=INPUT d1=[0x01,0x06,0xA0,0xA8] gde() END A=1 IF(sy=="endDischargeTimeOfSection1") d0=INPUT d1=[0x01,0x06,0xA0,0xA9] gde() END A=1 IF(sy=="startingDischargeTimeOfSection2") d0=INPUT d1=[0x01,0x06,0xA0,0xAA] gde() END A=1 IF(sy=="endDischargeTimeOfSection2") d0=INPUT d1=[0x01,0x06,0xA0,0xAB] gde() END A=1 IF(sy=="startingDischargeTimeOfSection3") d0=INPUT d1=[0x01,0x06,0xA0,0xAC] gde() END A=1 IF(sy=="endDischargeTimeOfSection3") d0=INPUT d1=[0x01,0x06,0xA0,0xAD] gde() END A=1 IF(sy=="parallelModeSetting") y2=[0xA0,0x2C] d0=INPUT IF(d0=="啿œº") y1=[0x00] END IF(d0=="并机") y1=[0x01] END IF(d0=="3PL1") y1=[0x05] END IF(d0=="3PL2") y1=[0x06] END IF(d0=="3PL3") y1=[0x07] END gt1() ydc() END A=1 IF(sy=="antiIslandingEnablement") y2=[0xA0,0x69] d0=INPUT IF(d0=="0") y1=[0x00] END IF(d0=="1") y1=[0x01] END gt1() ydc() END A=1 IF(sy=="bulkChargingVoltageSetting") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x8D] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="batteryFloatChargingVoltage") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x8E] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="inv2LineVolt") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x92] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="mainsToBatteryVoltage") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x93] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="inv2LineSOC") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x9E] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="lineBack2InvSOC") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x9F] t1=t0.insertAt(4,str1) ydc()) END A=1 IF(sy=="batStopSOC") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x9C] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="settingUtilityMaxChargingCurrent") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x31] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="onGridActivePowerSet") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x3F] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="systemVoltageSetting") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x29] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="systemFrequencySetting") d0=INPUT gdt() t0=[0x01,0x06,0xA0,0x2A] t1=t0.insertAt(4,str1) ydc() END A=1 IF(sy=="bmsProtocal") y1=[0x10] y2=[0xA0,0x9A] d0=INPUT IF(d0=="日月圆") y1=[0x00] END IF(d0=="派能") y1=[0x01] END IF(d0=="奧冠") y1=[0x02] END IF(d0=="欧力特") y1=[0x03] END IF(d0=="国轩") y1=[0x04] END IF(d0=="欣旺达") y1=[0x05] END IF(d0=="长丰") y1=[0x06] END IF(d0=="大秦") y1=[0x07] END IF(d0=="沛城") y1=[0x09] END IF(d0=="电科") y1=[0x0A] END IF(d0=="麦田") y1=[0x0B] END IF(d0=="安仕") y1=[0x0C] END IF(d0=="派能3") y1=[0x0D] END IF(d0=="美智") y1=[0x0F] END IF(d0=="天技") y1=[0x10] END gt1() ydc() END A=1 RETURN(FALSE) END