Эх сурвалжийг харах

[Improve][AW-CCS][Module_LcmContorl]
2022-03-01 / Eason Yang
Action
1. Improve: Charge press start button screen to icon, and use timer to control the animation.

File
1. Module_LcmControl.c & lcmComm_dgus.h
Action 1

LCM VERSION: V0.27
UPDATE TIME: 2022-03-01

8009 3 жил өмнө
parent
commit
d44eeadf12

+ 29 - 4
EVSE/Projects/AW-CCS/Apps/LCM/Module_LcmControl.c

@@ -2,7 +2,7 @@
  * Module_LcmControl.c
  *
  * Created on : 2020-10-20
- * Update on : 2022-02-23
+ * Update on : 2022-03-01
  * Author : Folus Wen, Eason Yang
  * Version : V0.27
  *
@@ -71,6 +71,7 @@ void setPresentPowerConsumption(uint8_t gun_index);
 void setFinalCost(uint8_t gun_index, uint8_t type);
 void setPresentConnectionTimeout(uint8_t gun_index);
 void setRunningCost(uint8_t gun_index, uint8_t type);
+void setPressStartButtonAnimation(uint8_t gun_index);
 void setDisplayValue(uint16_t address, uint8_t value);
 void setDisplayValue2(uint16_t address, uint8_t value);
 void setDefaultValue(uint8_t gun_index, uint8_t system_mode);
@@ -91,7 +92,7 @@ enum TMR_IDX
 	TMR_IDX_ALARM,
 	TMR_IDX_PRICE,
 	TMR_IDX_REFRESH_INFO,
-	TMR_IDX_6,
+	TMR_IDX_STARTBUTTON,
 	TMR_IDX_7,
 	TMR_IDX_8,
 	TMR_IDX_SHOW_AUTH_RESULT
@@ -102,6 +103,7 @@ struct timespec					startTime[AC_QUANTITY][TMR_IDX_SHOW_AUTH_RESULT];
 #define TIME_ANIMATION_PLUGIN			1 // Unit: Second
 #define TIME_ANIMATION_BATTERY			1 // Unit: Second
 #define TIME_ANIMATION_CONNECTION		1 // Unit: Second
+#define TIME_ANIMATION_START_PRESS		1 // Unit: Second
 #define TIME_ANIMATION_ALARM			5 // Unit: Second
 #define TIME_REFRESH_TIME				5 // Unit: Second
 #define TIME_AUTH_RESULT_TIME			5 // Unit: Second
@@ -114,6 +116,7 @@ struct timespec					startTime[AC_QUANTITY][TMR_IDX_SHOW_AUTH_RESULT];
 //=======================================
 uint8_t CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 uint8_t GUN_PLUGING_LEVEL_STATUS = GUN_PLUGING_LEVEL_0;
+uint8_t START_PRESS_LEVEL_STATIS = PRESS_START_LEVEL_0;
 uint8_t WarningCount = 255;
 
 int Uart1Fd;
@@ -121,7 +124,7 @@ int Uart1Fd;
 //=======================================
 // Record version and date
 //=======================================
-char *FIRMWARE_UPDATE_IMAGE[3] = {"V0.27", "2022-02-23", "REV.03.00"};
+char *FIRMWARE_UPDATE_IMAGE[3] = {"V0.27", "2022-03-01", "REV.03.00"};
 
 //=======================================
 // Common routine
@@ -357,9 +360,13 @@ void page_idle(uint8_t gun_index, uint8_t system_mode)
 			if((getCurrentPage() != SYSTEM_SCREEN_SLEEP))
 			{
 				setCurrentPage(SYSTEM_SCREEN_SLEEP);
+				setPressStartButtonAnimation(gun_index);
+				START_PRESS_LEVEL_STATIS = PRESS_START_LEVEL_0;
 			}
 			else
-			{}
+			{
+				setPressStartButtonAnimation(gun_index);
+			}
 		}
 		else
 		{
@@ -2041,6 +2048,24 @@ void setPlugAndChargeAnimation(uint8_t gun_index)
 	}
 }
 
+//=======================================
+// Setting [ Press Start ] Animation
+//=======================================
+void setPressStartButtonAnimation(uint8_t gun_index)
+{
+	if((START_PRESS_LEVEL_STATIS == PRESS_START_LEVEL_0) && ((getDiffSecNow(startTime[gun_index][TMR_IDX_STARTBUTTON]))> (TIME_ANIMATION_START_PRESS)))
+	{
+		setDisplayValue(ICON_PRESS_START_BUTTON, PRESS_START_1);
+		START_PRESS_LEVEL_STATIS = PRESS_START_LEVEL_1;
+	}
+	else if((START_PRESS_LEVEL_STATIS == PRESS_START_LEVEL_1) && ((getDiffSecNow(startTime[gun_index][TMR_IDX_STARTBUTTON]))> (TIME_ANIMATION_START_PRESS*2)))
+	{
+		setDisplayValue(ICON_PRESS_START_BUTTON, PRESS_START_2);
+		START_PRESS_LEVEL_STATIS = PRESS_START_LEVEL_0;
+		refreshStartTimer(&startTime[gun_index][TMR_IDX_STARTBUTTON]);
+	}
+}
+
 //=======================================
 // Setting Connection Timeout
 //=======================================

+ 1 - 1
EVSE/Projects/AW-CCS/Apps/LCM/lcmComm_dgus.c

@@ -2,7 +2,7 @@
  * lcmComm_dgus.c
  *
  * Created on : 2020-10-20
- * Update on : 2022-01-17
+ * Update on : 2022-03-01
  * Author : Folus Wen, Eason Yang
  * Version : V0.27
  *

+ 16 - 7
EVSE/Projects/AW-CCS/Apps/LCM/lcmComm_dgus.h

@@ -2,7 +2,7 @@
  * lcmComm_dwin.h
  *
  * Created on : 2020-10-20
- * Update on : 2022-01-17
+ * Update on : 2022-03-01
  * Author : Folus Wen, Eason Yang
  * Version : V0.27
  *
@@ -128,6 +128,8 @@
 #define PLUGIN_ARROW_2							0x02
 #define CONNECTION_FLASHING_1					0x01
 #define CONNECTION_FLASHING_2					0x02
+#define PRESS_START_1							0x01
+#define PRESS_START_2							0x02
 
 //=======================================
 // Icon variable address start from 1000
@@ -149,24 +151,24 @@
 #define ICON_PREPARING_TOTAL_COST			0x100E
 #define ICON_PREPARING_POWER				0x100F
 #define ICON_PREPARING_ANIMATION			0x1010
-#define ICON_PREPARING_SESSION_FEE			0x1011 // NEW
-#define ICON_PREPARING_PARKING_FEE			0x1012 // NEW
+#define ICON_PREPARING_SESSION_FEE			0x1011
+#define ICON_PREPARING_PARKING_FEE			0x1012
 #define ICON_PRECHARGING_TIMER				0x1013
 #define ICON_PRECHARGING_ENERGY				0x1014
 #define ICON_PRECHARGING_TOTAL_COST			0x1015
 #define ICON_PRECHARGING_POWER				0x1016
 #define ICON_PRECHARGING_ANIMATION			0x1017
 #define ICON_PRECHARGING_FUNNEL				0x1018
-#define ICON_PRECHARGING_SESSION_FEE		0x1019 // NEW
-#define ICON_PRECHARGING_PARKING_FEE		0x101A // NEW
+#define ICON_PRECHARGING_SESSION_FEE		0x1019
+#define ICON_PRECHARGING_PARKING_FEE		0x101A
 #define ICON_CHARGING_TIMER					0x101B
 #define ICON_CHARGING_ENERGY				0x101C
 #define ICON_CHARGING_TOTAL_COST			0x101D
 #define ICON_CHARGING_POWER					0x101E
 #define ICON_CHARGING_ANIMATION				0x101F
 #define ICON_CHARGING_LIGHTNING				0x1020
-#define ICON_CHARGING_SESSION_FEE			0x1021	// NEW
-#define ICON_CHARGING_PARKING_FEE			0x1022	// NEW
+#define ICON_CHARGING_SESSION_FEE			0x1021
+#define ICON_CHARGING_PARKING_FEE			0x1022
 #define ICON_COMPLETE_TIMER					0x1023
 #define ICON_COMPLETE_ENERGY				0x1024
 #define ICON_COMPLETE_WALLET				0x1025
@@ -193,6 +195,7 @@
 #define Reserve_19							0x103A
 #define Reserve_20							0x103B
 #define ICON_PLUG_AND_CHARGE_ARROW			0x103C
+#define ICON_PRESS_START_BUTTON				0x103D
 
 #define ICON_LOGO							0x1500
 #define ICON_LOGO_CHARGING					0x1501
@@ -293,6 +296,12 @@
 #define GUN_PLUGING_LEVEL_0					0x00
 #define GUN_PLUGING_LEVEL_1					0x01
 
+//=======================================
+// Press start button level
+//=======================================
+#define PRESS_START_LEVEL_0					0x00
+#define PRESS_START_LEVEL_1					0x01
+
 //=======================================
 // RFID authorization constant
 //=======================================