Browse Source

2022-01-19 / Simon Xue

Simon Xue 3 years ago
parent
commit
f896c5dae4

+ 3 - 2
EVSE/Projects/DD360Tcci/Apps/Config.h

@@ -151,6 +151,8 @@ enum _PAGE_TCC_INDEX {
     _PAGE_PRECHARGE,
     _PAGE_CHARGING,
     _PAGE_COMPLETE,
+	_PAGE_PLUGOUT,
+	_PAGE_EXIT,
     _PAGE_FUNCTION_SELECT,
     _PAGE_REFUND_SENSEING,
     _PAGE_REFUNDING,
@@ -164,9 +166,8 @@ enum _PAGE_TCC_INDEX {
     _PAGE_PAY_ETICKET_SUCCESS,
     _PAGE_PAY_MPAY_SUCCESS,
     _PAGE_PAY_FAIL,
-    _PAGE_MAINTAIN,
+    _PAGE_MAINTAIN = 100,
     _PAGE_ERROR,
-	_PAGE_PLUGOUT,
 
     __SHOW_CABIENT_VERSION,
     __SHOW_DISPENSER_VERASION,

+ 52 - 31
EVSE/Projects/DD360Tcci/Apps/ModuleLcmCtrl/Module_LcmControl.c

@@ -46,7 +46,7 @@ uint8_t _everyPageRollChange;
 uint8_t _btn_press = 0;
 short _btn_press_id = 0;
 struct timeval returnIdleTimer;
-int _Text_Running_Count = 0;
+int _Text_Running_Count = 86;
 int Battery_Test = 0;
 extern void UpdateLcmFunction(DcCommonInfo *ShmDcCommonData,int _lcmport);
 //==========================================
@@ -230,13 +230,12 @@ void CheckLCMPressed()
                 else
                     ChangeDisplay2Value(0x109A,100-(i%100));
                     */
-            	ChangeDisplay2Value(0x103A,99);
 
                 break;
             case _PAGE_CHARGING:
 
                 pDcChargingInfo->PresentChargingPower = i;
-                pDcChargingInfo->PresentChargedEnergy = i;
+                pDcChargingInfo->PresentChargedEnergy = i/6;
 
                 pDcChargingInfo->RemainChargingDuration = i;
                 pDcChargingInfo->EvBatterySoc = i/6;
@@ -247,9 +246,13 @@ void CheckLCMPressed()
                 pDcChargingInfo->ChargingFee = i;
                 pDcChargingInfo->EvBatterySoc = i/6;
                 pSysConfig->BillingData.isBilling = TRUE;
-                ChangeCarBonValue(i/6);
+                ChangeCarBonValue(i);
+                pSysConfig->isQRCode = 1;
                 break;
-
+            case _PAGE_PLUGOUT:
+            	pSysConfig->isQRCode = 1;
+            	CheckTouchPress(_Touch_Return);
+            	break;
 // ************************************************ */
             } // switch
             usleep(5000);
@@ -257,14 +260,8 @@ void CheckLCMPressed()
             i++;
             if (i == 600 ) {
 				index >= 8 ? index = 1 : index++;
-
                 pSysInfo->SystemPage = index;
                 i = 0;
-                /*
-                if (pSysInfo->SystemPage == _PAGE_PRECHARGE)
-                    gettimeofday(&pDcChargingInfo->PreChargeTimer, NULL);
-                    */
-
 
             }//*/
 
@@ -495,13 +492,9 @@ void string2ByteArray(uint8_t *input, uint8_t *output)
     output[loop] = '\0';
 }
 
-void RefreshProgressAnimation(uint8_t progress_index)
+void RefreshProgressAnimation()
 {
-    if(_everyPageRollChange % 2) {
-        progress_index+=1;
-    }
-
-    _everyPageRollChange++;
+	_everyPageRollChange >= 10 ? _everyPageRollChange = 0 : _everyPageRollChange++;
 }
 //================================================
 // Change current page
@@ -659,7 +652,7 @@ void ChangeChargingPowerValue(float pow)
 
     memset(cmd, 0x00, sizeof(cmd));
 
-    sprintf((char *) value, "%.1f",pow);
+    sprintf((char *) value, "%.1fkW",pow);
     string2ByteArray(value, cmd);
     DisplayValueToLcm(_Text_Power, cmd, sizeof(cmd));
 }
@@ -676,14 +669,14 @@ void ChangeChargingFeeValue(float fee)
     string2ByteArray(value, cmd);
     DisplayValueToLcm(_Text_Money, cmd, sizeof(cmd));
 }
-void ChangeCarBonValue(float fee)
+void ChangeCarBonValue(int data)
 {
     uint8_t cmd[10];
     uint8_t value[10];
 
     memset(cmd, 0x00, sizeof(cmd));
 
-    sprintf((char *) value, "%d", (int)fee);
+    sprintf((char *) value, "-%d", data);
     string2ByteArray(value, cmd);
     DisplayValueToLcm(_Text_Carbon, cmd, sizeof(cmd));
 }
@@ -696,6 +689,13 @@ void ChangeChargingEnergyValue(float energy)
     if (energy >= 0.05) {
         energy -= 0.05;
     }
+
+    if (energy < 0 )
+    	ChangeDisplay2Value(_EnergyBar,_ICON_Empty);
+    else if (energy > 100)
+    	ChangeDisplay2Value(_EnergyBar,_ICON_Bar_10);
+    else
+    	ChangeDisplay2Value(_EnergyBar,((int)energy/10)+_ICON_Bar_1);
     sprintf((char *) value, "%d", (int)energy);
     string2ByteArray(value, cmd);
     DisplayValueToLcm(_Text_Energy, cmd, sizeof(cmd));
@@ -703,7 +703,7 @@ void ChangeChargingEnergyValue(float energy)
 uint8_t _battery_display_count = 0;
 void ChangeBattMapAndValue(int soc)
 {
-    int i = soc*(36/100);
+    int i = (soc*36)/100;
     uint8_t cmd[5];
     uint8_t value[5];
 
@@ -715,20 +715,20 @@ void ChangeBattMapAndValue(int soc)
 			_battery_display_ani= FALSE ;
 		_battery_display_count = 0;
 	}
+
 	if (i==36)
 		ChangeDisplay2Value(_Battery_Circle,_ICON_Battery_35);
 	else {
 		if (_battery_display_ani) {
-			ChangeDisplay2Value(_Battery_Circle, _ICON_Battery_0+i);
+			ChangeDisplay2Value(_Battery_Circle, _ICON_Battery_0+(int)i);
 		} else {
-			ChangeDisplay2Value(_Battery_Circle, _ICON_Battery_0+i+1);
+			ChangeDisplay2Value(_Battery_Circle, _ICON_Battery_0+(int)i+1);
 		}
 	}
 
-
     memset(cmd, 0x00, sizeof(cmd));
     memset(value, 0x00, sizeof(value));
-    sprintf((char *)value, "%d", soc);
+    sprintf((char *)value, "%d%%", soc);
     string2ByteArray(value, cmd);
     DisplayValueToLcm(_Text_BatterySoc, cmd, sizeof(cmd));
 }
@@ -804,13 +804,15 @@ void ProcessPageInfo()
                 }
                 break;
             case _PAGE_PLUGIN:
-            	_Text_Running_Count = 0;
+            	_Text_Running_Count = 86;
+            	_everyPageRollChange = 0;
                 break;
             case _PAGE_PRECHARGE:
-
-				ChangeDisplay2Value(_PrepareBar,_Text_Running_Count);
-
-                _Text_Running_Count >= 99 ? _Text_Running_Count = 86 : _Text_Running_Count++;
+            	RefreshProgressAnimation();
+            	if (_everyPageRollChange == 0) {
+            		ChangeDisplay2Value(_PrepareBar,_Text_Running_Count);
+            		_Text_Running_Count >= 99 ? _Text_Running_Count = 86 : _Text_Running_Count++;
+            	}
                 break;
             case _PAGE_CHARGING:
 
@@ -853,11 +855,30 @@ void ProcessPageInfo()
                 }
                 ChangeBattMapAndValue(pDcChargingInfo->EvBatterySoc);
 
+                if (pSysConfig->isQRCode) {
+                    if (pSysConfig->QRCodeMadeMode == NO) {
+                        //uint8_t len = strlen((char *)pSysConfig->SystemId);
+                        ChangeQrCode_Idle((char *)pSysConfig->SystemId);
+                    } else {
+                        //uint8_t len = strlen((char *)pSysConfig->QRCodeContent);
+                        ChangeQrCode_Idle((char *)pSysConfig->QRCodeContent);
+                    }
+                    //ChangeQrCode_Idle((char *)pSysConfig->SystemId);
+                }
                 break;
             case _PAGE_REFUND_SENSEING:
                 break;
             case _PAGE_PLUGOUT:
-
+                if (pSysConfig->isQRCode) {
+                    if (pSysConfig->QRCodeMadeMode == NO) {
+                        //uint8_t len = strlen((char *)pSysConfig->SystemId);
+                        ChangeQrCode_Idle((char *)pSysConfig->SystemId);
+                    } else {
+                        //uint8_t len = strlen((char *)pSysConfig->QRCodeContent);
+                        ChangeQrCode_Idle((char *)pSysConfig->QRCodeContent);
+                    }
+                    //ChangeQrCode_Idle((char *)pSysConfig->SystemId);
+                }
             	break;
             }
         }