$öûsc=0 RECV UART uart0 IF(sc==1)#7530 sc=2 ch1=INPUT.charAt(4) SEND(L,batteryVoltage,ch1) ch1=INPUT.charAt(6) SEND(L,batteryCurrent,ch1) ch1=INPUT.charAt(8) SEND(L,batteryRemainingCapacitySO,ch1) ch1=INPUT.charAt(10) SEND(L,batteryChargePower,ch1) ch1=INPUT.charAt(12) SEND(L,mainsChargingCurrent,ch1) ch1=INPUT.charAt(14) SEND(L,pvVolt1,ch1) ch1=INPUT.charAt(26) SEND(L,pvCurr1,ch1) ch1=INPUT.charAt(28) SEND(L,pvPower1,ch1) ch1=INPUT.charAt(30) SEND(L,pvVolt2,ch1) ch1=INPUT.charAt(32) SEND(L,pvCurr2,ch1) ch1=INPUT.charAt(34) SEND(L,pvPower2,ch1) RETURN(FALSE) END IF(sc==3)#7548 sc=4 ch1=INPUT.charAt(52) SEND(L,outputLoadRateOfEntireMach,ch1) RETURN(FALSE) END IF(sc==5)#7594 sc=6 ch1=INPUT.charAt(6) SEND(L,outputState,ch1) RETURN(FALSE) END IF(sc==7)#75B0 sc=8 ch1=INPUT.charAt(6) SEND(L,systemBatteryStatus,ch1) RETURN(FALSE) END IF(sc==9)#9ACC sc=10 ch1=INPUT.charAt(12) SEND(L,qzTotalBatteryPower,ch1) RETURN(FALSE) END IF(sc==11)#9AFA sc=12 RETURN(FALSE) END IF(sc==13)#C738 sc=14 RETURN(FALSE) END IF(sc==15)#C7AE sc=16 RETURN(FALSE) END IF(sc==17)#CB20 sc=18 RETURN(FALSE) END IF(sc==19)#CB74 sc=20 RETURN(FALSE) END IF(sc==21)#CBA5 sc=22 RETURN(FALSE) END IF(sc==23)#7567 sc=24 ch1=INPUT.charAt(14) SEND(L,mainsFrequency,ch1) RETURN(FALSE) END IF(sc==25)#7587 sc=26 RETURN(FALSE) END IF(sc==27)#CB3C sc=28 ch1=INPUT.charAt(38) SEND(L,batteryChargingOfThisDay,ch1) ch1=INPUT.charAt(40) SEND(L,batteryDischargeOfThisDay,ch1) ch1=INPUT.charAt(42) SEND(L,pvGeneratedEnergyOfDay,ch1) ch1=INPUT.charAt(44) SEND(L,powerConsumptionOnTheDayOf,ch1) ch1=INPUT.charAt(48) SEND(L,batChgEnergyTotal,ch1) ch1=INPUT.charAt(50) SEND(L,batDischgEnergyTotal,ch1) ch1=INPUT.charAt(52) SEND(L,pvCumulativePowerGeneration,ch1) ch1=INPUT.charAt(54) SEND(L,loadTotalElectricityConsum,ch1) ch1=INPUT.charAt(64) SEND(L,lineChgEnergyTday,ch1) ch1=INPUT.charAt(66) SEND(L,loadConsumLineTday,ch1) RETURN(FALSE) END IF(sc==29)#CB5C sc=30 ch1=INPUT.charAt(14) SEND(L,municipalChargingCapacity,ch1) ch1=INPUT.charAt(18) SEND(L,loadConsumptionFromMains,ch1) RETURN(FALSE) END IF(sc==31)#75AF sc=32 RETURN(FALSE) END IF(sc==33)#75A5 sc=34 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 RETURN(FALSE) END IF(sc==35)#A028 sc=36 ch1=INPUT.charAt(4) SEND(L,loadPowerSupplyPriority,ch1) ch1=INPUT.charAt(16) SEND(L,chargingPrioritySetting,ch1) 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(sc==37)#A069 sc=38 ch1=INPUT.charAt(24) SEND(L,remoteTurnOffEn,ch1) ch1=INPUT.charAt(52) SEND(L,feedIntoGridEn,ch1) ch1=INPUT.charAt(60) SEND(L,batteryTypeSetting,ch1) END IF(sc==39)#A089 sc=40 ch1=INPUT.charAt(22) SEND(L,bmsSet,ch1) ch1=INPUT.charAt(24) SEND(L,bmsProtocal,ch1) ch1=INPUT.charAt(36) SEND(L,onTimeChargeEn,ch1) ch1=INPUT.charAt(38) SEND(L,chargingStartTime1,ch1) ch1=INPUT.charAt(40) SEND(L,endChargingTime1,ch1) ch1=INPUT.charAt(42) SEND(L,chargingStartTime2,ch1) ch1=INPUT.charAt(44) SEND(L,endChargingTime2,ch1) ch1=INPUT.charAt(46) SEND(L,chargingStartTime3,ch1) ch1=INPUT.charAt(48) SEND(L,endChargingTime3,ch1) ch1=INPUT.charAt(50) SEND(L,onTimeDischgEn,ch1) ch1=INPUT.charAt(52) SEND(L,startingDischargeTimeOfSec,ch1) ch1=INPUT.charAt(54) SEND(L,endDischargeTimeOfSection1,ch1) ch1=INPUT.charAt(56) SEND(L,startingDischargeTimeOfSec,ch1) ch1=INPUT.charAt(58) SEND(L,endDischargeTimeOfSection2,ch1) ch1=INPUT.charAt(60) SEND(L,startingDischargeTimeOfSec,ch1) ch1=INPUT.charAt(62) SEND(L,endDischargeTimeOfSection3,ch1) END IF(sc==41)#A0A9 sc=0 END END skey="" crc16=0 temp="" sd=[0x10,0x06,0x00] sd1="" sd2="" data0=0 data1="" rev=0 i=0 len=0 temp1="" FUNCTION slsd() sd1=sd.insertAt(2,data1) sd2=sd1.insertAt(5,data0) len=sd2.length() WHILE(i