From a1810b89e66f184c62a0588ae7d57c91d0c376e8 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Thu, 30 May 2024 20:06:09 +0800
Subject: [PATCH] 继续测试修改
---
Function/LCD/lcd.c | 159 +++++++++++++++++++++++++++++------------------------
1 files changed, 87 insertions(+), 72 deletions(-)
diff --git a/Function/LCD/lcd.c b/Function/LCD/lcd.c
index 398ffbd..b563b1a 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,14 @@
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;
+FlagStatus lcd_wake_up_flag_g = RESET; //Ϊ�˰�����ʾû���ӳٸ�
+FlagStatus lcd_first_wake_up_flag_g = SET; //��ʼҪΪSET������
-
+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 +49,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 +65,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 +148,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 +411,25 @@
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 = RESET;
+ /*ʼ����Ҫ����ʾ���ݣ���˾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)
+ LCD_DISPLAY_SEG(_LCD_CHARGE_23A);
-// /*�����жϵ���ʾ���ݣ����� ���� Զ�� ������� ��ʾģʽ �Ʒ�ģʽ ���� ������־ �豸/��̨����ģʽ��*/
-//// 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(save_valve_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,10 +551,15 @@
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 = RESET;
+
+ 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)
+ if(lcd_first_wake_up_flag_g == SET)
{
+ lcd_first_wake_up_flag_g = RESET;
//�״��ϵ��ʼ��
Lcd_Sys_Init();
}else
@@ -557,10 +567,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