瀏覽代碼

[Imporve][AW-CCS][Module_LcmContorl.c]
2022-10-13 / EASON YANG
Action:
1. Improve: setQRcodeContent() function.
2. Improve: setQRcodeAlarm() function.
3. Improve: setQRCodeReceipt() function.
4. Improve: setQRCodeIcon() function.
5. Improve: string2ByteArray() function.

File:
1. Module_LcmControl.c
Action 1
Action 2
Action 3
Action 4
Action 5

LCM VERSION:V0.31

8009 2 年之前
父節點
當前提交
b971692205
共有 1 個文件被更改,包括 190 次插入150 次删除
  1. 190 150
      EVSE/Projects/AW-CCS/Apps/LCM/Module_LcmControl.c

+ 190 - 150
EVSE/Projects/AW-CCS/Apps/LCM/Module_LcmControl.c

@@ -76,7 +76,7 @@ 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);
-void setQRcodeContent(char *input, uint8_t length, uint8_t mode);
+void setQRcodeContent(char *input, int length, uint8_t mode);
 void setBillingFromBackend(uint8_t gun_index, uint8_t system_mode);
 void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode);
 void setPresentChargedEnergy(uint8_t gun_index, uint8_t system_mode);
@@ -706,12 +706,13 @@ void page_complete(uint8_t gun_index, uint8_t system_mode)
 			}
 			else
 			{
-				if((strcmp((char *)&ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL,"") != 0))
+				if((strcmp((char *)ShmOCPP16Data->Cost.FinalCost[gun_index].qrCodeText,"") != 0))
 				{
 					if(getCurrentPage() != SYSTEM_SCREEN_COMPLETE_WITH_QRCODE)
 					{
 						setCurrentPage(SYSTEM_SCREEN_COMPLETE_WITH_QRCODE);
 						setQRCodeReceipt(gun_index);
+						DEBUG_INFO("[CDFA 2.0].\n");
 					}
 					else
 					{
@@ -720,12 +721,28 @@ void page_complete(uint8_t gun_index, uint8_t system_mode)
 				}
 				else
 				{
-					if(getCurrentPage() != SYSTEM_SCREEN_COMPLETE)
+					if((strcmp((char *)&ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL,"") != 0))
 					{
-						setCurrentPage(SYSTEM_SCREEN_COMPLETE);
+						if(getCurrentPage() != SYSTEM_SCREEN_COMPLETE_WITH_QRCODE)
+						{
+							setCurrentPage(SYSTEM_SCREEN_COMPLETE_WITH_QRCODE);
+							setQRCodeReceipt(gun_index);
+							DEBUG_INFO("[CDFA 1.0].\n");
+						}
+						else
+						{
+							setQRCodeReceipt(gun_index);
+						}
 					}
 					else
-					{}
+					{
+						if(getCurrentPage() != SYSTEM_SCREEN_COMPLETE)
+						{
+							setCurrentPage(SYSTEM_SCREEN_COMPLETE);
+						}
+						else
+						{}
+					}
 				}
 			}
 		}
@@ -733,6 +750,8 @@ void page_complete(uint8_t gun_index, uint8_t system_mode)
 		{
 			// DISPLAY BY OCPP 2.0.1
 		}
+		else
+		{}
 	}
 
 	setPresentChargedDuration(gun_index);
@@ -981,7 +1000,7 @@ void page_footer()
 }
 
 //=======================================
-// Setting icon display value
+// SETTING ICON DISPLAY VALUE
 //=======================================
 void setDisplayValue(uint16_t address, uint8_t value)
 {
@@ -993,6 +1012,9 @@ void setDisplayValue(uint16_t address, uint8_t value)
 	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, address, data, ARRAY_SIZE(data));
 }
 
+//=======================================
+// SETTING MARQUEE CONTROL DISPLAY VALUE
+//=======================================
 void setDisplayValue2(uint16_t address, uint8_t value)
 {
 	uint8_t data[4];
@@ -1006,7 +1028,7 @@ void setDisplayValue2(uint16_t address, uint8_t value)
 }
 
 //=======================================
-// Print out system mode
+// PRINT OUT SCREEN MODE
 //=======================================
 char* getDisplayModeName(unsigned char mode)
 {
@@ -1077,7 +1099,7 @@ char* getDisplayModeName(unsigned char mode)
 }
 
 //=======================================
-// Getting current page
+// GETTING CURRENT SCREEN PAGE
 //=======================================
 uint8_t getCurrentPage()
 {
@@ -1113,7 +1135,7 @@ uint8_t getCurrentPage()
 }
 
 //=======================================
-// Setting current page
+// SETTING CURRENT SCREEN PAGE
 //=======================================
 void setCurrentPage(uint8_t page)
 {
@@ -1143,9 +1165,9 @@ void setCurrentPage(uint8_t page)
 }
 
 //=======================================
-// Convert string to byte array
+// CONVERT STRING TO BYTE ARRAY
 //=======================================
-void string2ByteArray(unsigned char *input, uint8_t *output)
+void string2ByteArray(uint8_t *input, uint8_t *output)
 {
     int loop;
     int i;
@@ -1161,7 +1183,7 @@ void string2ByteArray(unsigned char *input, uint8_t *output)
 }
 
 //=======================================
-// Setting [ RFID ] Icon Status
+// SETTING ICON [RFID]
 //=======================================
 void setRfidIcon()
 {
@@ -1172,7 +1194,7 @@ void setRfidIcon()
 }
 
 //========================================
-// Setting [ BACKEND ] Icon Status
+// SETTING ICON [BACKEND]
 //========================================
 void setBackendIcon()
 {
@@ -1183,7 +1205,7 @@ void setBackendIcon()
 }
 
 //========================================
-// Setting [ ETHERNET ] Icon Status
+// SETTING ICON [ETHERNET]
 //========================================
 void setEthernetIcon()
 {
@@ -1204,7 +1226,7 @@ void setEthernetIcon()
 }
 
 //=======================================
-// Setting [ WIFI / 4G] icon status
+// SETTING ICON [WIFI/4G]
 //=======================================
 void setWifi4GIcon()
 {
@@ -1355,7 +1377,7 @@ void setWifi4GIcon()
 }
 
 //========================================
-// Setting [ RTC ] value
+// SETTING CONTENT [RTC]
 //========================================
 void setRTC()
 {
@@ -1371,7 +1393,7 @@ void setRTC()
 }
 
 //=======================================
-// Setting [ Billing ] ( WEB PAGE )
+// SETTING CONTENT [BILLING] WEB PAGE
 //=======================================
 void setBillingFromWebsite()
 {
@@ -1396,7 +1418,7 @@ void setBillingFromWebsite()
 }
 
 //=======================================
-// Setting [ Currency ] ( WEB PAGE )
+// SETTING CONTNET [CURRENCY] WEB PAGE
 //=======================================
 void setCurrencyFromWebsite(uint8_t unit)
 {
@@ -1417,7 +1439,7 @@ void setCurrencyFromWebsite(uint8_t unit)
 }
 
 //=======================================
-// Setting [ Price ] ( WEB PAGE )
+// SETTING CONTENT [PRICE] WEB PAGE
 //=======================================
 void setPriceFromWebsite(float monry_rate)
 {
@@ -1433,7 +1455,7 @@ void setPriceFromWebsite(float monry_rate)
 }
 
 //=======================================
-// Setting [ Final Cost ] ( WEB PAGE )
+// SETTING CONTENT [FINAL COST] WEB PAGE
 //=======================================
 void setPresentFinalCost(float cost)
 {
@@ -1454,7 +1476,7 @@ void setPresentFinalCost(float cost)
 }
 
 //=======================================
-// Setting [ Session Fee ] ( WEB PAGE )
+// SETTING CONTENT [SESSION FEE] WEB PAGE
 //=======================================
 void setPresentSessionFee()
 {
@@ -1470,7 +1492,7 @@ void setPresentSessionFee()
 }
 
 //=======================================
-// Setting [ Parking Fee ] ( WEB PAGE )
+// SETTING CONTENT [PARKING FEE] WEB PAGE
 //=======================================
 void setPresentParkingFee()
 {
@@ -1486,7 +1508,7 @@ void setPresentParkingFee()
 }
 
 //=======================================
-// Getting [ Final cost ] ( WEB PAGE )
+// GETTING VALUE [FINAL COST] WEB PAGE
 //=======================================
 float getPresentFinalCost(uint8_t gun_index)
 {
@@ -2021,24 +2043,24 @@ void setRunningCost(uint8_t gun_index, uint8_t type)
 }
 
 //=======================================
-// Setting QRCODE icon status
+// SETTING CONTENT [QR CODE CUSTOMIZED]
 //=======================================
 void setQRCodeIcon()
 {
-	uint8_t length = 0;
+	int LENGTH = 0;
 
 	if(ShmSysConfigAndInfo->SysConfig.isQRCode == ON)
 	{
 		setDisplayValue(ICON_QR_CODE,QRCODE_ENABLE);
 		if(ShmSysConfigAndInfo->SysConfig.QRCodeMadeMode == NO)
 		{
-			length = strlen((char *)ShmSysConfigAndInfo->SysConfig.SystemId);
-			setQRcodeContent((char *)ShmSysConfigAndInfo->SysConfig.SystemId, length, QRCODE_FOR_IDLE);
+			LENGTH = strlen((char *)ShmSysConfigAndInfo->SysConfig.SystemId);
+			setQRcodeContent((char *)ShmSysConfigAndInfo->SysConfig.SystemId, LENGTH, QRCODE_FOR_IDLE);
 		}
 		else
 		{
-			length = strlen((char *)ShmSysConfigAndInfo->SysConfig.QRCodeContent);
-			setQRcodeContent((char *)ShmSysConfigAndInfo->SysConfig.QRCodeContent, length, QRCODE_FOR_IDLE);
+			LENGTH = strlen((char *)ShmSysConfigAndInfo->SysConfig.QRCodeContent);
+			setQRcodeContent((char *)ShmSysConfigAndInfo->SysConfig.QRCodeContent, LENGTH, QRCODE_FOR_IDLE);
 		}
 	}
 	else
@@ -2049,62 +2071,79 @@ void setQRCodeIcon()
 }
 
 //=======================================
-// Setting QRCODE icon for receipt
+// SETTING CONTENT [QR CODE RECEIPT]
 //=======================================
 void setQRCodeReceipt(uint8_t gun_index)
 {
-	uint8_t length = 0;
-	uint8_t data[512];
-	int TransactionId;
-	unsigned char QRCodeContent[512];
-	unsigned char QRCodeReceipt[512];
+	int LENGTH = 0;
+	int TRANSACTION_ID;
+	uint8_t DISPLAY_DATA[512];
+	uint8_t QR_CODE_CONTENT[512];
+	uint8_t QR_CODE_RECEIPT[512];
 
-	memset(QRCodeContent, 0x00, ARRAY_SIZE(QRCodeContent));
-	memset(QRCodeReceipt, 0x00, ARRAY_SIZE(QRCodeReceipt));
-	memset(data, 0x00, ARRAY_SIZE(data));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(QR_CODE_CONTENT, 0x00, ARRAY_SIZE(QR_CODE_CONTENT));
+	memset(QR_CODE_RECEIPT, 0x00, ARRAY_SIZE(QR_CODE_RECEIPT));
 
-	memcpy((char*)QRCodeContent, (char*)ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL, ARRAY_SIZE(ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL));
 	if(ShmSysConfigAndInfo->SysInfo.OcppRunningVer == OCPP_RUNNING_VERSION_16)
 	{
-		TransactionId = ShmOCPP16Data->StopTransaction[gun_index].TransactionId;
+		if((strcmp((char *)ShmOCPP16Data->Cost.FinalCost[gun_index].qrCodeText,"") != 0))
+		{
+			// QR CODE RECEIPT FOR CDFA 2.0 STRUCTURE
+			memcpy((char*)QR_CODE_CONTENT, (char*)ShmOCPP16Data->Cost.FinalCost[gun_index].qrCodeText, ARRAY_SIZE(QR_CODE_CONTENT));
+			sprintf((char *)QR_CODE_RECEIPT, "%s", QR_CODE_CONTENT);
+			string2ByteArray(QR_CODE_RECEIPT, DISPLAY_DATA);
+		}
+		else
+		{
+			if((strcmp((char *)ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL,"") != 0))
+			{
+				// QR CODE RECEIPT FOR CDFA 1.0 STRUCTURE
+				memcpy((char*)QR_CODE_CONTENT, (char*)ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL, ARRAY_SIZE(ShmSysConfigAndInfo->SysConfig.OcppReceiptrURL));
+				TRANSACTION_ID = ShmOCPP16Data->StopTransaction[gun_index].TransactionId;
+				sprintf((char *)QR_CODE_RECEIPT, "%s%d", QR_CODE_CONTENT,TRANSACTION_ID);
+				string2ByteArray(QR_CODE_RECEIPT, DISPLAY_DATA);
+			}
+			else
+			{}
+		}
 	}
 	else if(ShmSysConfigAndInfo->SysInfo.OcppRunningVer == OCPP_RUNNING_VERSION_20)
 	{
 		// TO DO OCPP 2.0
 	}
+	else
+	{}
 
-	sprintf((char *)QRCodeReceipt, "%s%d", QRCodeContent,TransactionId);
-	string2ByteArray(QRCodeReceipt, data);
-
-	length = strlen((char *)data);
-	setQRcodeContent((char *)data, length, QRCODE_FOR_COMPLETE);
+	LENGTH = strlen((char *)DISPLAY_DATA);
+	setQRcodeContent((char *)DISPLAY_DATA, LENGTH, QRCODE_FOR_COMPLETE);
 }
 
 //=======================================
-// Setting QRCODE for alarm
+// SETTING CONTENT [QR CODE ALARM]
 //=======================================
 void setQRCodeAlarm()
 {
-	uint8_t length = 0;
-	uint8_t data[512];
-	unsigned char QRCodeAlarm[512];
+	int LENGTH = 0;
+	uint8_t DISPLAY_DATA[512];
+	uint8_t QR_CODE_ALARM[512];
 
-	memset(QRCodeAlarm, 0x00, ARRAY_SIZE(QRCodeAlarm));
-	memset(data, 0x00, ARRAY_SIZE(data));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(QR_CODE_ALARM, 0x00, ARRAY_SIZE(QR_CODE_ALARM));
 
-	sprintf((char *)QRCodeAlarm, "%s", "https://evsc.phihong.com.tw/");
-	string2ByteArray(QRCodeAlarm, data);
-	length = strlen((char *)data);
-	setQRcodeContent((char *)data, length, QRCODE_FOR_ALARM);
+	sprintf((char *)QR_CODE_ALARM, "%s", "https://evsc.phihong.com.tw/");
+	string2ByteArray(QR_CODE_ALARM, DISPLAY_DATA);
+	LENGTH = strlen((char *)DISPLAY_DATA);
+	setQRcodeContent((char *)DISPLAY_DATA, LENGTH, QRCODE_FOR_ALARM);
 }
 
 //=======================================
-// Setting QR code content
+// SETTING CONTENT [QR CODE]
 //=======================================
-void setQRcodeContent(char *input, uint8_t length, uint8_t mode)
+void setQRcodeContent(char *input, int length, uint8_t mode)
 {
-	uint8_t output[length];
 	int loop = 0;
+	uint8_t output[length];
 
 	input[length] = '\0';
 	output[length] = '\0';
@@ -2133,7 +2172,7 @@ void setQRcodeContent(char *input, uint8_t length, uint8_t mode)
 }
 
 //=======================================
-// Setting warning page switch
+// SETTING SWITCH [WARNING PAGE]
 //=======================================
 void setWarningStatus(uint8_t gun_index)
 {
@@ -2165,7 +2204,7 @@ void setWarningStatus(uint8_t gun_index)
 }
 
 //=======================================
-// Setting alarm code and icon status
+// SETTING ICON [ALARM CODE]
 //=======================================
 void setAlarmCodeAndIcon()
 {
@@ -2201,7 +2240,7 @@ void setAlarmCodeAndIcon()
 }
 
 //=======================================
-// Setting connection icon animation
+// SETTING ANIMATION CONNECTION
 //=======================================
 void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 {
@@ -2218,7 +2257,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 				else if((CONNECTION_LEVEL_STATUS == CONNECTION_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_CONNECTION]) > (TIME_ANIMATION_CONNECTION*2)))
 				{
 					setDisplayValue(ICON_PRECHARGING_ANIMATION, CONNECTION_FLASHING_2);
-					CONNECTION_LEVEL_STATUS =  CONNECTION_LEVEL_0;
+					CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 					refreshStartTimer(&startTime[gun_index][TMR_IDX_CONNECTION]);
 				}
 			}
@@ -2234,7 +2273,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 				{
 					setDisplayValue(ICON_PREPARING_ANIMATION, CONNECTION_FLASHING_2);
 					setDisplayValue(ICON_PRECHARGING_ANIMATION, CONNECTION_FLASHING_2);
-					CONNECTION_LEVEL_STATUS =  CONNECTION_LEVEL_0;
+					CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 					refreshStartTimer(&startTime[gun_index][TMR_IDX_CONNECTION]);
 				}
 			}
@@ -2251,7 +2290,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 				else if((CONNECTION_LEVEL_STATUS == CONNECTION_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_CONNECTION]) > (TIME_ANIMATION_CONNECTION*2)))
 				{
 					setDisplayValue(ICON_PRECHARGING_ANIMATION, CONNECTION_FLASHING_2);
-					CONNECTION_LEVEL_STATUS =  CONNECTION_LEVEL_0;
+					CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 					refreshStartTimer(&startTime[gun_index][TMR_IDX_CONNECTION]);
 				}
 			}
@@ -2265,7 +2304,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 				else if((CONNECTION_LEVEL_STATUS == CONNECTION_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_CONNECTION]) > (TIME_ANIMATION_CONNECTION*2)))
 				{
 					setDisplayValue(ICON_PREPARING_ANIMATION, CONNECTION_FLASHING_2);
-					CONNECTION_LEVEL_STATUS =  CONNECTION_LEVEL_0;
+					CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 					refreshStartTimer(&startTime[gun_index][TMR_IDX_CONNECTION]);
 				}
 			}
@@ -2280,7 +2319,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 			else if((CONNECTION_LEVEL_STATUS == CONNECTION_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_CONNECTION]) > (TIME_ANIMATION_CONNECTION*2)))
 			{
 				setDisplayValue(ICON_CHARGING_ANIMATION, CONNECTION_FLASHING_2);
-				CONNECTION_LEVEL_STATUS =  CONNECTION_LEVEL_0;
+				CONNECTION_LEVEL_STATUS = CONNECTION_LEVEL_0;
 				refreshStartTimer(&startTime[gun_index][TMR_IDX_CONNECTION]);
 			}
 			break;
@@ -2292,7 +2331,7 @@ void setConnectionAnimation(uint8_t gun_index, uint8_t system_mode)
 }
 
 //=======================================
-// Setting [ Gun Plug-in ] Animation
+// SETTING ANIMATION [CONNECTOR PLUG-IN]
 //=======================================
 void setGunPluginAnimation(uint8_t gun_index)
 {
@@ -2312,14 +2351,14 @@ void setGunPluginAnimation(uint8_t gun_index)
 		else if((GUN_PLUGING_LEVEL_STATUS == GUN_PLUGING_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_PLUGIN]) > (TIME_ANIMATION_PLUGIN*2)))
 		{
 			setDisplayValue(ICON_PREPARING_PLUG_ARROW, PLUGIN_ARROW_2);
-			GUN_PLUGING_LEVEL_STATUS =  GUN_PLUGING_LEVEL_0;
+			GUN_PLUGING_LEVEL_STATUS = GUN_PLUGING_LEVEL_0;
 			refreshStartTimer(&startTime[gun_index][TMR_IDX_PLUGIN]);
 		}
 	}
 }
 
 //=======================================
-// Setting [ Plug & Charge ] Animation
+// SETTING ANIMATION [PLUG & CHARGE]
 //=======================================
 void setPlugAndChargeAnimation(uint8_t gun_index)
 {
@@ -2331,13 +2370,13 @@ void setPlugAndChargeAnimation(uint8_t gun_index)
 	else if((GUN_PLUGING_LEVEL_STATUS == GUN_PLUGING_LEVEL_1) && (getDiffSecNow(startTime[gun_index][TMR_IDX_PLUGIN]) > (TIME_ANIMATION_PLUGIN*2)))
 	{
 		setDisplayValue(ICON_PLUG_AND_CHARGE_ARROW, PLUGIN_ARROW_2);
-		GUN_PLUGING_LEVEL_STATUS =  GUN_PLUGING_LEVEL_0;
+		GUN_PLUGING_LEVEL_STATUS = GUN_PLUGING_LEVEL_0;
 		refreshStartTimer(&startTime[gun_index][TMR_IDX_PLUGIN]);
 	}
 }
 
 //=======================================
-// Setting [ Press Start ] Animation
+// SETTING ANIMATION [PRESS START BUTTON]
 //=======================================
 void setPressStartButtonAnimation(uint8_t gun_index)
 {
@@ -2355,141 +2394,141 @@ void setPressStartButtonAnimation(uint8_t gun_index)
 }
 
 //=======================================
-// Setting Connection Timeout
+// SETTING CONNECTION TIMEOUT
 //=======================================
 void setPresentConnectionTimeout(uint8_t gun_index)
 {
-	int time;
-	uint8_t data[16];
-	uint8_t conntectionTimeout[16];
-	unsigned char not_counting[16];
+	int TIME;
+	uint8_t DISPLAY_DATA[16];
+	uint8_t CONNECTION_TIMEOUT[16];
+	unsigned char NOT_COUNTING[16];
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(conntectionTimeout, 0x00, ARRAY_SIZE(conntectionTimeout));
-	memset(not_counting, 0x00, ARRAY_SIZE(not_counting));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(CONNECTION_TIMEOUT, 0x00, ARRAY_SIZE(CONNECTION_TIMEOUT));
+	memset(NOT_COUNTING, 0x00, ARRAY_SIZE(NOT_COUNTING));
 
 	if((ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_B) ||
 	   (ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_C) ||
 	   (ShmCharger->gun_info[gun_index].primaryMcuState.socket_e.isSocketEPinOn == ON))
 	{
-		strcpy((char*)not_counting, "-----");
-		string2ByteArray(not_counting, data);
-		lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, data, ARRAY_SIZE(data));
+		strcpy((char*)NOT_COUNTING, "-----");
+		string2ByteArray(NOT_COUNTING, DISPLAY_DATA);
+		lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 	}
 	else
 	{
 		if((ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PilotState == CP_STATE_A))
 		{
-			time = ShmCharger->timeoutSpec.Handshake_Timeout;
-			if(time <= 0)
+			TIME = ShmCharger->timeoutSpec.Handshake_Timeout;
+			if(TIME <= 0)
 			{
-				strcpy((char*)not_counting, "000");
-				string2ByteArray(not_counting, data);
-				lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, data, ARRAY_SIZE(data));
+				strcpy((char*)NOT_COUNTING, "000");
+				string2ByteArray(NOT_COUNTING, DISPLAY_DATA);
+				lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 			}
 			else
 			{
-				sprintf((char *)conntectionTimeout, "%03d ", time);
-				string2ByteArray(conntectionTimeout, data);
-				lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, data, ARRAY_SIZE(data));
+				sprintf((char *)CONNECTION_TIMEOUT, "%03d ", TIME);
+				string2ByteArray(CONNECTION_TIMEOUT, DISPLAY_DATA);
+				lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 			}
 		}
 		else
 		{
-			strcpy((char*)not_counting, "-----");
-			string2ByteArray(not_counting, data);
-			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, data, ARRAY_SIZE(data));
+			strcpy((char*)NOT_COUNTING, "-----");
+			string2ByteArray(NOT_COUNTING, DISPLAY_DATA);
+			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_PREPARING_CONNECTION_TIMER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 		}
 	}
 }
 
 //=======================================
-// Setting Present Charging [ Power ]
+// SETTING PRESENT [POWER]
 //=======================================
 void setPresentChargedPower(uint8_t gun_index)
 {
-	uint8_t data[16];
-	uint8_t power[16];
+	uint8_t DISPLAY_DATA[16];
+	uint8_t POWER[16];
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(power, 0x00, ARRAY_SIZE(power));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(POWER, 0x00, ARRAY_SIZE(POWER));
 
-	sprintf((char *)power, "%.2f kW", ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargingPower);
-	string2ByteArray(power, data);
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_POWER, data, ARRAY_SIZE(data));
+	sprintf((char *)POWER, "%.2f kW", ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargingPower);
+	string2ByteArray(POWER, DISPLAY_DATA);
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_POWER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 }
 
 //=======================================
-// Setting Present Charging [ Energy ]
+// SETTING PRESENT [ENERGY]
 //=======================================
 void setPresentChargedEnergy(uint8_t gun_index, uint8_t system_mode)
 {
-	uint8_t data[16];
-	uint8_t energy[16];
+	uint8_t DISPLAY_DATA[16];
+	uint8_t ENERGY[16];
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(energy, 0x00, ARRAY_SIZE(energy));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(ENERGY, 0x00, ARRAY_SIZE(ENERGY));
 
 	switch(system_mode)
 	{
 		case SYS_MODE_PREPARING:
-			sprintf((char *)energy, "%s kWh", "0.0000");
-			string2ByteArray(energy, data);
-			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_ENERGY, data, ARRAY_SIZE(data));
+			sprintf((char *)ENERGY, "%s kWh", "0.0000");
+			string2ByteArray(ENERGY, DISPLAY_DATA);
+			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_ENERGY, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 			break;
 		case SYS_MODE_CHARGING:
 		case SYS_MODE_TERMINATING:
 		case SYS_MODE_COMPLETE:
 		default:
-			sprintf((char *)energy, "%.4f kWh", ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargedEnergy);
-			string2ByteArray(energy, data);
-			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_ENERGY, data, ARRAY_SIZE(data));
+			sprintf((char *)ENERGY, "%.4f kWh", ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargedEnergy);
+			string2ByteArray(ENERGY, DISPLAY_DATA);
+			lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_ENERGY, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 			break;
 	}
 }
 
 //=======================================
-// Setting Present Charging [ Duration ]
+// SETTING PRESENT [DURATION]
 //=======================================
 void setPresentChargedDuration(uint8_t gun_index)
 {
-	uint8_t data[16];
-	uint8_t time[16];
-	uint16_t hour;
-	uint16_t minute;
-	uint16_t second;
-	uint32_t PresentChargedDuration = ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargedDuration;
+	uint8_t DISPLAY_DATA[16];
+	uint8_t TIME[16];
+	uint16_t HOUR;
+	uint16_t MINUTE;
+	uint16_t SECOND;
+	uint32_t PRESENT_CHARGED_DURATION = ShmSysConfigAndInfo->SysInfo.AcChargingData[gun_index].PresentChargedDuration;
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(time, 0x00, ARRAY_SIZE(time));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(TIME, 0x00, ARRAY_SIZE(TIME));
 
-	hour = (PresentChargedDuration / 3600);
-	minute = (PresentChargedDuration - (3600 * hour)) / 60;
-	second = (PresentChargedDuration - (3600 * hour) - (minute * 60));
+	HOUR = (PRESENT_CHARGED_DURATION / 3600);
+	MINUTE = (PRESENT_CHARGED_DURATION - (3600 * HOUR)) / 60;
+	SECOND = (PRESENT_CHARGED_DURATION - (3600 * HOUR) - (MINUTE * 60));
 
-	sprintf((char *)time, "%02d:%02d:%02d", hour, minute, second);
-	string2ByteArray(time, data);
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_TIMER, data, ARRAY_SIZE(data));
+	sprintf((char *)TIME, "%02d:%02d:%02d", HOUR, MINUTE, SECOND);
+	string2ByteArray(TIME, DISPLAY_DATA);
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_TIMER, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 }
 
 //=======================================
-// Setting Present [ Power Consumption ]
+// SETTING PRESENT [POWER CONSUMPTION]
 //=======================================
 void setPresentPowerConsumption(uint8_t gun_index)
 {
-	uint8_t data[32];
-	uint8_t powerConsumption[32];
+	uint8_t DISPLAY_DATA[32];
+	uint8_t POWER_CONSUMPTION[32];
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(powerConsumption, 0x00, ARRAY_SIZE(powerConsumption));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(POWER_CONSUMPTION, 0x00, ARRAY_SIZE(POWER_CONSUMPTION));
 
-	sprintf((char *)powerConsumption, "%.4f kWh", ((float)ShmCharger->gun_info[gun_index].powerConsumptionTotal.power_consumption/10000.0));
-	string2ByteArray(powerConsumption, data);
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_POWER_CONSUMPTION, data, ARRAY_SIZE(data));
+	sprintf((char *)POWER_CONSUMPTION, "%.4f kWh", ((float)ShmCharger->gun_info[gun_index].powerConsumptionTotal.power_consumption/10000.0));
+	string2ByteArray(POWER_CONSUMPTION, DISPLAY_DATA);
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_POWER_CONSUMPTION, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 }
 
 //=======================================
-// Setting authorization page
+// SETTING AUTHORIZATION PAGE
 //=======================================
 void setAuthorizationPage(uint8_t gun_index)
 {
@@ -2527,7 +2566,7 @@ void setAuthorizationPage(uint8_t gun_index)
 }
 
 //=======================================
-// Setting default values
+// SETTING DEFAULT VALUE
 //=======================================
 void setDefaultValue(uint8_t gun_index, uint8_t system_mode)
 {
@@ -2543,6 +2582,7 @@ void setDefaultValue(uint8_t gun_index, uint8_t system_mode)
 			setSessionFeeTitle(ON);
 			setParkingFeeTitle(ON);
 			setFinalCostTitle(ON);
+
 			if(ShmCharger->gun_info[gun_index].chargingMode == CHARGING_MODE_HLC)
 			{
 				setDisplayValue(ICON_PRECHARGING_ANIMATION, CONNECTION_FLASHING_1);
@@ -2619,24 +2659,24 @@ void setDefaultValue(uint8_t gun_index, uint8_t system_mode)
 }
 
 //=======================================
-// Setting text to empty
+// SETTING CONTENT EMPTY
 //=======================================
 void setTextToEmpty(uint8_t gun_index)
 {
-	uint8_t data[16];
-	uint8_t text_empty[16];
+	uint8_t DISPLAY_DATA[16];
+	uint8_t TEXT_DATA[16];
 
-	memset(data, 0x00, ARRAY_SIZE(data));
-	memset(text_empty, 0x00, ARRAY_SIZE(text_empty));
+	memset(DISPLAY_DATA, 0x00, ARRAY_SIZE(DISPLAY_DATA));
+	memset(TEXT_DATA, 0x00, ARRAY_SIZE(TEXT_DATA));
 
-	strcpy((char*)text_empty, "               ");
-	string2ByteArray(text_empty, data);
+	strcpy((char*)TEXT_DATA, "               ");
+	string2ByteArray(TEXT_DATA, DISPLAY_DATA);
 
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_TOTAL_COST, data, ARRAY_SIZE(data));
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_SESSION_FEE, data, ARRAY_SIZE(data));
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_PARKING_FEE, data, ARRAY_SIZE(data));
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_USER_ACCOUNT_BALANCE, data, ARRAY_SIZE(data));
-	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_REMAINING_ACCOUNT_BALANCE, data, ARRAY_SIZE(data));
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_TOTAL_COST, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_SESSION_FEE, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_CHARGING_PARKING_FEE, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_USER_ACCOUNT_BALANCE, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
+	lcdRegisterWrite(Uart1Fd, REG_TYPE_RAM, TEXT_REMAINING_ACCOUNT_BALANCE, DISPLAY_DATA, ARRAY_SIZE(DISPLAY_DATA));
 }
 
 //=======================================
@@ -2686,7 +2726,7 @@ void setMarqueeControl(uint16_t address, uint8_t gun_index, uint8_t type)
 }
 
 //=======================================
-// Checking model name for setting title
+// SETTING TITLE [BY MODEL NAME]
 //=======================================
 int isAmericaType()
 {