From 6c7e61a54ef9b96f79704f0b965664e89f57dd52 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Wed, 29 May 2024 17:41:52 +0800
Subject: [PATCH] 增加休眠,开始上板测试
---
Function/LCD/lcd.c | 154 +++++++++++++++++++++++++++-----------------------
1 files changed, 83 insertions(+), 71 deletions(-)
diff --git a/Function/LCD/lcd.c b/Function/LCD/lcd.c
index 398ffbd..4c151ec 100644
--- a/Function/LCD/lcd.c
+++ b/Function/LCD/lcd.c
@@ -16,7 +16,9 @@
#include "gpio.h"
#include "string.h"
#include "system_general_para.h"
-
+#include "sizhu_ctrl_word.h"
+#include "system_mem_para.h"
+#include "linked_list.h"
uint8_t LCD_DRIVE_MODE_14_13[1] = {0}; // 1/4duty 1/3bias
uint8_t LCD_DRIVE_MODE_14_14[1] = {1}; // 1/4duty 1/4bias
@@ -26,9 +28,13 @@
uint8_t LCD_SYSTEM_MODE_ON_OFF[1] = {2}; // �ڲ�ϵͳ����ON��LCD��ʾOFF
uint8_t LCD_SYSTEM_MODE_ON_ON[1] = {3}; // �ڲ�ϵͳ����ON��LCD��ʾON
-uint8_t lcd_wake_up_flag_g = 0;
+uint8_t lcd_wake_up_flag_g = 0; //Ϊ�˰�����ʾû���ӳٸ�
-
+SYS_DISPLAY_PAPA_T sys_display_para_g ={ \
+ .sys_and_display_mode = NORMAL_MODE, \
+ .display_page_status.normal_page_status = TOTAL_SC_BALANCE, \
+ .display_page_status.para_page_status = METER_NUM, \
+};
// LCD��ʼ��
void Lcd_Init(void)
@@ -42,7 +48,7 @@
{
// LCD_ALL_DISPLAY;
Lcd_Write(LCD_SYSTEM_MODE_COMMAND_ADDR, LCD_SYSTEM_MODE_OFF_OFF, 1);
- LCD_BACKLIGHT_OFF;
+// LCD_BACKLIGHT_OFF;
LCD_PWR_OFF;
}
/**************************************
@@ -58,7 +64,7 @@
delay_ms(1);
// LCD_ALL_CLEAR;
Lcd_Init();
- lcd_wake_up_flag_g = 1;
+// lcd_wake_up_flag_g = 1;
}
/****************************************
���ƣ�Lcd_Display_AllTest(void)
@@ -141,51 +147,51 @@
LCD_DISPLAY_SEG(_LCD_YUAN_2_23A);
LCD_DISPLAY_SEG(_LCD_YUAN_M3_23A);
- LCD_DISPLAY_SEG(_LCD_POINT1_23A);
- LCD_DISPLAY_SEG(_LCD_POINT2_23A);
- LCD_DISPLAY_SEG(_LCD_POINT3_23A);
- LCD_DISPLAY_SEG(_LCD_POINT4_23A);
- LCD_DISPLAY_SEG(_LCD_POINT5_23A);
- LCD_DISPLAY_SEG(_LCD_POINT6_23A);
- LCD_DISPLAY_SEG(_LCD_POINT7_23A);
- LCD_DISPLAY_SEG(_LCD_POINT8_23A);
- LCD_DISPLAY_SEG(_LCD_POINT9_23A);
- LCD_DISPLAY_SEG(_LCD_POINT10_23A);
- LCD_DISPLAY_SEG(_LCD_POINT11_23A);
- LCD_DISPLAY_SEG(_LCD_POINT12_23A);
- LCD_DISPLAY_SEG(_LCD_POINT13_23A);
- LCD_DISPLAY_SEG(_LCD_POINT14_23A);
- LCD_DISPLAY_SEG(_LCD_POINT15_23A);
- LCD_DISPLAY_SEG(_LCD_POINT16_23A);
- LCD_DISPLAY_SEG(_LCD_POINT17_23A);
- LCD_DISPLAY_SEG(_LCD_POINT18_23A);
- LCD_DISPLAY_SEG(_LCD_POINT19_23A);
- LCD_DISPLAY_SEG(_LCD_POINT20_23A);
- LCD_DISPLAY_SEG(_LCD_POINT21_23A);
- LCD_DISPLAY_SEG(_LCD_POINT22_23A);
- LCD_DISPLAY_SEG(_LCD_POINT23_23A);
- LCD_DISPLAY_SEG(_LCD_POINT24_23A);
- LCD_DISPLAY_SEG(_LCD_POINT25_23A);
- LCD_DISPLAY_SEG(_LCD_POINT26_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT1_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT2_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT3_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT4_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT5_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT6_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT7_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT8_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT9_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT10_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT11_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT12_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT13_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT14_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT15_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT16_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT17_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT18_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT19_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT20_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT21_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT22_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT23_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT24_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT25_23A);
+// LCD_DISPLAY_SEG(_LCD_POINT26_23A);
- Lcd_DisplayDigit_23A(1 + i, 8);
- Lcd_DisplayDigit_23A(2 + i, 8);
- Lcd_DisplayDigit_23A(3 + i, 8);
- Lcd_DisplayDigit_23A(4 + i, 8);
- Lcd_DisplayDigit_23A(5 + i, 8);
- Lcd_DisplayDigit_23A(6 + i, 8);
- Lcd_DisplayDigit_23A(7 + i, 8);
- Lcd_DisplayDigit_23A(8 + i, 8);
- Lcd_DisplayDigit_23A(9 + i, 8);
- Lcd_DisplayDigit_23A(10 + i, 8);
- Lcd_DisplayDigit_23A(11 + i, 8);
- Lcd_DisplayDigit_23A(12 + i, 8);
- Lcd_DisplayDigit_23A(13 + i, 8);
- Lcd_DisplayDigit_23A(14 + i, 8);
- Lcd_DisplayDigit_23A(15 + i, 8);
- Lcd_DisplayDigit_23A(16 + i, 8);
- Lcd_DisplayDigit_23A(17 + i, 8);
- Lcd_DisplayDigit_23A(18 + i, 8);
+// Lcd_DisplayDigit_23A(1 + i, 8);
+// Lcd_DisplayDigit_23A(2 + i, 8);
+// Lcd_DisplayDigit_23A(3 + i, 8);
+// Lcd_DisplayDigit_23A(4 + i, 8);
+// Lcd_DisplayDigit_23A(5 + i, 8);
+// Lcd_DisplayDigit_23A(6 + i, 8);
+// Lcd_DisplayDigit_23A(7 + i, 8);
+// Lcd_DisplayDigit_23A(8 + i, 8);
+// Lcd_DisplayDigit_23A(9 + i, 8);
+// Lcd_DisplayDigit_23A(10 + i, 8);
+// Lcd_DisplayDigit_23A(11 + i, 8);
+// Lcd_DisplayDigit_23A(12 + i, 8);
+// Lcd_DisplayDigit_23A(13 + i, 8);
+// Lcd_DisplayDigit_23A(14 + i, 8);
+// Lcd_DisplayDigit_23A(15 + i, 8);
+// Lcd_DisplayDigit_23A(16 + i, 8);
+// Lcd_DisplayDigit_23A(17 + i, 8);
+// Lcd_DisplayDigit_23A(18 + i, 8);
LCD_ALL_DISPLAY;
}
@@ -404,27 +410,24 @@
void Lcd_Show_MenuProcess(void)//? ��Ҫ����
{
- lcd_wake_up_flag_g = 0;
- /*ʼ����Ҫ����ʾ���ݣ���˾LOGO ��ص��� ˮƽ�ߣ�*/
-// if(__SYS_FUNC_CFG_BYTES_GET(logo_display_set) == 0)
-// LCD_DISPLAY_SEG(_LCD_SIZHULOG_23A);
-// LCD_DISPLAY_SEG(_LCD_HORIZONTALLINE_1_23A);
-// LCD_DISPLAY_SEG(_LCD_HORIZONTALLINE_2_23A);
-// Lcd_Battery(pwr_vol_g.alka_vcc, pwr_vol_g.lith_vcc);
+// lcd_wake_up_flag_g = 0;
+ /*ʼ����Ҫ����ʾ���ݣ���˾LOGO ��ص����ȵȣ�*/
+ if(__SYS_FUNC_CFG_BYTES_GET(no_show_logo) == RESET)
+ LCD_DISPLAY_SEG(_LCD_SIZHULOG_23A);
+ LCD_DISPLAY_SEG(_LCD_HORIZONTALLINE_1_23A);
+ LCD_DISPLAY_SEG(_LCD_HORIZONTALLINE_2_23A);
+ Lcd_Battery(pwr_vol_g);
+ if(__SYS_STATUS_BYTES_GET(power_state) == SET)
-// /*�����жϵ���ʾ���ݣ����� ���� Զ�� ������� ��ʾģʽ �Ʒ�ģʽ ���� ������־ �豸/��̨����ģʽ��*/
-//// sys_admin_g.sys_admin.state_bytes.media_status = AIR;
-// Lcd_MediumShow((MEDIA_STATUS)sys_admin_g.sys_admin.state_bytes.media_status);
-// Lcd_BacksetShow(sys_admin_g.sys_admin.state_bytes.flow_direction);
-// Lcd_ValveShow((VALVE_STATUS)sys_admin_g.sys_admin.state_bytes.valve_state, op_cl_valve_cause_id,
-// sys_admin_g.sys_admin.state_bytes.valve_lock);
-// Lcd_WaringShow_New(alarm_list_cnt,calendar_g.Second);
-//// Lcd_WarningShow(&sys_show_state_bytes_id_g, &sys_clear_state_bytes_id_g);
-// Lcd_GprsShow(sys_admin_g.sys_admin.state_bytes.gprs_status, NB_OR_4G_FLAG, gprs_protocol_head_tail_g.gprs_protocol_normal_data_head.signal_intensity);
-// Lcd_BillingShow(sys_admin_g.sys_admin.state_bytes.billing_type, 1, ladder_price_cfg_para_true_g.set_price_type_mode);
-// Lcd_ModeFlagActiveShow(&sys_some_flag_g);
-// if (sys_admin_g.sys_admin.state_bytes.account_state)
-// LCD_DISPLAY_SEG(_LCD_ACCOUNT_23A);
+ Lcd_ValveShow(valve_ctrl_para_g.valve_status, save_valve_para_g.valve_close_ID, save_valve_para_g.valve_lock_state);
+ Lcd_WrcShow(sys_fun_run_ctrl_g.wrc_ctrl_flag.running_flag,wrc_ctrl_para_g.wrc_result_flag,link_info_g.SIM_Type,link_info_g.net_signal_intensity);
+
+ Lcd_WaringShow(alarm_list_cnt,sys_clockBCD_g.sec);
+
+ Lcd_BillingShow(__SYS_FUNC_CFG_BYTES_GET(billing_type), save_realtime_data_g.realtime_billing_data_s.ladder_now);
+
+ if (__SYS_STATUS_BYTES_GET(account_state)==SET)
+ LCD_DISPLAY_SEG(_LCD_ACCOUNT_23A);
// /*��ͬҳ�����ʾ����*/
@@ -546,7 +549,11 @@
void lcdDisplayPro(void)
{
- if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0)
+ static uint8_t only_trigger_once_flag = 0;
+
+ lcd_wake_up_flag_g = 0;
+
+ if((__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0)||(__SYS_STATUS_BYTES_GET(lcd_mode) == LDM_ALWAYS_AWAKEN)||(__SYS_STATUS_BYTES_GET(power_state) == SET))
{
if(LCD_PWR_IO_READ==Bit_RESET)
{
@@ -557,10 +564,15 @@
//ֻ������ʾ����
}
Lcd_Show_MenuProcess();
+ only_trigger_once_flag =0;
}else
{
- Lcd_DeInit();
+
+ if(only_trigger_once_flag == 0){
+ only_trigger_once_flag =1;
+ Lcd_DeInit();
+ }
}
}
\ No newline at end of file
--
Gitblit v1.9.3