From 72def895431ad7a08e635b11f3da738e2b2c4618 Mon Sep 17 00:00:00 2001
From: wujiazhi <1147861305@qq.com>
Date: Thu, 13 Jun 2024 11:31:04 +0800
Subject: [PATCH] add lower model test
---
Function/LCD/lcd.c | 347 +++++++++++++++++++++++++++++----------------------------
1 files changed, 176 insertions(+), 171 deletions(-)
diff --git a/Function/LCD/lcd.c b/Function/LCD/lcd.c
index 1814e90..1e3adbf 100644
--- a/Function/LCD/lcd.c
+++ b/Function/LCD/lcd.c
@@ -13,37 +13,53 @@
*/
#include "lcd.h"
+#include "lcd_cfg_api.h"
#include "gpio.h"
+#include "sundry.h"
#include "string.h"
-#include "system_general_para.h"
+#include "power_manage.h"
+#include "billing.h"
+#include "master_slave_inter.h"
+#include "gprs.h"
+#include "low_pwr_test.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
-uint8_t LCD_DRIVE_MODE_18_13[1] = {2}; // 1/8duty 1/3bias 48pin��ֻ֧��1/8duty����ַ���ص�33H
-uint8_t LCD_DRIVE_MODE_18_14[1] = {3}; // 1/8duty 1/4bias
-uint8_t LCD_SYSTEM_MODE_OFF_OFF[1] = {0}; // �ڲ�ϵͳ����OFF��LCD��ʾOFF
-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_DRIVE_MODE_14_13[1] = {0}; // 1/4duty 1/3bias
+//uint8_t LCD_DRIVE_MODE_14_14[1] = {1}; // 1/4duty 1/4bias
+//uint8_t LCD_DRIVE_MODE_18_13[1] = {2}; // 1/8duty 1/3bias 48pin��ֻ֧��1/8duty����ַ���ص�33H
+//uint8_t LCD_DRIVE_MODE_18_14[1] = {3}; // 1/8duty 1/4bias
+//uint8_t LCD_SYSTEM_MODE_OFF_OFF[1] = {0}; // �ڲ�ϵͳ����OFF��LCD��ʾOFF
+//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;
+SYS_DISPLAY_PAPA_T sys_display_para_g = {
+ .temp_sys_mode_flag = CNV_NONE,
+ .sys_and_display_mode = (SYS_DISPLAY_MODE)SYS_MODE_DEFAULT,
+ .display_page_status = {
+ .normal_page_status = SC_INSTANT_TOTAL,
+ .para_page_status = METER_NUM
+ }
+};
+/*���ھ�����ʾ��״̬��id*/
+SYS_ALARM_VALVE_T sys_show_state_bytes_id_g = AV_NORMAL;
-// LCD��ʼ��
+SYS_ALARM_VALVE_T sys_clear_state_bytes_id_g = AV_NORMAL; // ���������ʾ
+/* LCD��ʼ��*/
void Lcd_Init(void)
{
- // Lcd_Write(LCD_DRIVE_MODE_COMMAND_ADDR,(uint8_t *)LCD_DRIVE_MODE_18_14,1);
+// // Lcd_Write(LCD_DRIVE_MODE_COMMAND_ADDR,(uint8_t *)LCD_DRIVE_MODE_18_14,1);
- Lcd_Write(LCD_SYSTEM_MODE_COMMAND_ADDR, LCD_SYSTEM_MODE_ON_ON, 1);
+// Lcd_Write(LCD_SYSTEM_MODE_COMMAND_ADDR, LCD_SYSTEM_MODE_ON_ON, 1);
}
void Lcd_DeInit(void)
{
// LCD_ALL_DISPLAY;
- Lcd_Write(LCD_SYSTEM_MODE_COMMAND_ADDR, LCD_SYSTEM_MODE_OFF_OFF, 1);
- LCD_BACKLIGHT_OFF;
- LCD_PWR_OFF;
+// Lcd_Write(LCD_SYSTEM_MODE_COMMAND_ADDR, LCD_SYSTEM_MODE_OFF_OFF, 1);
+// LCD_BACKLIGHT_OFF;
+// LCD_PWR_OFF;
}
/**************************************
���ƣ�Lcd_Sys_Init(void)
@@ -52,9 +68,9 @@
**************************************/
void Lcd_Sys_Init(void)
{
- Lcd_GPIO_Init();
+ I2c0_GPIO_Clk_Init();
LCD_PWR_ON;
-
+ LCD_BACKLIGHT_SELECT(__SYS_STATUS_BYTES_GET(alka_low));
delay_ms(1);
// LCD_ALL_CLEAR;
Lcd_Init();
@@ -196,7 +212,7 @@
****************************************/
void Lcd_Clear_AllTest(void)
{
- memset(LCD_Buffer, 0, sizeof(LCD_Buffer));
+ memset(LCD_buffer, 0, sizeof(LCD_buffer));
LCD_ALL_DISPLAY;
}
/****************************************
@@ -402,165 +418,154 @@
}
}
-void Lcd_Show_MenuProcess(void)
+void Lcd_Show_MenuProcess(SYS_DISPLAY_PAPA_T *sys_display_para_p, ErrorStatus_STM32 *pCnv_result_flag)
{
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);
+ 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);
-// /*�����жϵ���ʾ���ݣ����� ���� Զ�� ������� ��ʾģʽ �Ʒ�ģʽ ���� ������־ �豸/��̨����ģʽ��*/
-//// 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_STATE_T)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);
+ /*�����жϵ���ʾ���ݣ����� ���� Զ�� ������� ��ʾģʽ �Ʒ�ģʽ ���� ������־ �豸/��̨����ģʽ��*/
+// 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_STATE_T)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);
-
-// /*��ͬҳ�����ʾ����*/
-// if (sys_display_para_p->sys_and_display_mode == NORMAL_MODE)
-// {
-// if(sys_display_para_p->display_page_status.normal_page_status == PRICE_BALANCE &&
-// __SYS_FUNC_CFG_BYTES_GET(balance_display_set) == 1 && __SYS_FUNC_CFG_BYTES_GET(price_display_set) == 1)
-// sys_display_para_p->display_page_status.normal_page_status++;
-// switch (sys_display_para_p->display_page_status.normal_page_status) // ������ʾҳ��
-// {
-// case SC_INSTANT_TOTAL:
-// Lcd_NormalPage_1(sys_realtime_data_g.measure_para_s.instant_sc, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
-// break;
-// case PRICE_BALANCE:
-// Lcd_NormalPage_2(billing_real_para_g.price_now * 0.0001f, billing_real_para_g.balance_now, ladder_price_cfg_para_true_g.set_price_type_mode);
-// break;
-// case TEMP_SC_TOTAL:
-// Lcd_NormalPage_3(sys_realtime_data_g.measure_para_s.temperature, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
-// break;
-// case PRESS_SC_TOTAL:
-// Lcd_NormalPage_4(sys_realtime_data_g.measure_para_s.pressure, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
-// break;
-//// case WC_INSTANT_TOTAL:
-//// Lcd_NormalPage_5(sys_realtime_data_g.measure_para_s.instant_wc, sys_realtime_data_g.measure_para_s.forward_cumulate_wc);
-//// break;
-// default:
-// break;
-// }
-// }
-// else if (sys_display_para_p->sys_and_display_mode == DISPLAY_PARA)
-// {
-// LCD_DISPLAY_SEG(_LCD_LOOKUP_23A); // ����ͼ��
-// switch (sys_display_para_p->display_page_status.para_page_status) // ������ʾҳ��
-// {
-// case METER_NUM:
-// Lcd_ParaPage_MeterNum(master_basic_papa_g.factory_number);
-// break;
-// case OTHER_METER_NUM:
-// Lcd_ParaPage_ThirdParty_MeterNum(0,NULL);
-// break;
-// case DATE_TIME:
-// Lcd_Show_time(Bcd_2_Hex(calendar_g.Year), Bcd_2_Hex(calendar_g.Month), Bcd_2_Hex(calendar_g.Date),
-// Bcd_2_Hex(calendar_g.Hour), Bcd_2_Hex(calendar_g.Minute), Bcd_2_Hex(calendar_g.Second));
-// break;
-// case IP_PORT:
-// Lcd_ParaPage_IpPort(gprs_network_cfg_para_g.gprs_ip_1, &gprs_network_cfg_para_g.gprs_port_1);
-// break;
-// case OTHER_IP_PORT:
-// Lcd_ParaPage_ThirdParty_IpPort(0,gprs_network_cfg_para_g.gprs_ip_1, &gprs_network_cfg_para_g.gprs_port_1);
-// break;
-// case SW_VER:
-// Lcd_ParaPage_SoftVer(master_soft_hard_para_g.master_firmware_ver);
-// break;
-// case HW_VER:
-// Lcd_ParaPage_HardVer(master_soft_hard_para_g.master_hardware_ver);
-// break;
-// case SOUND_VEL:
-// Lcd_ParaPage_SoundVel(sys_realtime_data_g.state_para_s.sound_vel);
-// break;
-// case SEC_CORR_NOW:
-// Lcd_SecCorr_FixedShow(SEC_CORR_NOW);
-// break;
-// case SEC_CORR_NOW_PARA_1:
-// Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_1,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_NOW_PARA_2:
-// Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_2,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_NOW_PARA_3:
-// Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_3,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_NOW_PARA_4:
-// Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_4,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_NOW_PARA_5:
-// Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_5,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_OLD:
-// Lcd_SecCorr_FixedShow(SEC_CORR_OLD);
-// break;
-// case SEC_CORR_OLD_PARA_1:
-// Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_1,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_OLD_PARA_2:
-// Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_2,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_OLD_PARA_3:
-// Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_3,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_OLD_PARA_4:
-// Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_4,&sec_order_corr_set_g);
-// break;
-// case SEC_CORR_OLD_PARA_5:
-// Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_5,&sec_order_corr_set_g);
-// break;
-// default:
-// break;
-// }
-// }
-// else if (sys_display_para_p->sys_and_display_mode == CALIB_MODE)
-// {
-// LCD_DISPLAY_SEG(_LCD_CHECK_23A); // �춨ͼ��
-// Lcd_CalibPage(cal_display_exit_data_g, sys_realtime_data_g.measure_para_s.cal_cumulate_reserve[1]);
-// }
-// else if (sys_display_para_p->sys_and_display_mode == SET_PARA_MODE)
-// {
-// LCD_DISPLAY_SEG(_LCD_CONFIGURATION_23A); // ����ͼ��
-// Lcd_SuccErrPage(SUCCESS_0);
-// }
-
+ if (*pCnv_result_flag == ERROR_1) // ģʽ�л�����
+ {
+ Lcd_SuccErrPage(ERROR_1);
+ ErrorShow_TxtendTimer_Clk_Init();
+ ETx_CR_CEN_Setable(ET1,ENABLE);
+ if( ETx_ISR_OVIF_Chk(ET1)==SET)
+ {
+ ETx_ISR_OVIF_Clr(ET1);
+ ETx_CR_CEN_Setable(ET1,DISABLE);
+ *pCnv_result_flag = SUCCESS_0;
+ }
+ }
+ else
+ {
+ /*��ͬҳ�����ʾ����*/
+ if (sys_display_para_p->sys_and_display_mode == NORMAL_MODE)
+ {
+ if(sys_display_para_p->display_page_status.normal_page_status == PRICE_BALANCE &&
+ __SYS_FUNC_CFG_BYTES_GET(balance_display_set) == 1 && __SYS_FUNC_CFG_BYTES_GET(price_display_set) == 1)
+ sys_display_para_p->display_page_status.normal_page_status++;
+ switch (sys_display_para_p->display_page_status.normal_page_status) // ������ʾҳ��
+ {
+ case SC_INSTANT_TOTAL:
+ Lcd_NormalPage_1(sys_realtime_data_g.measure_para_s.instant_sc, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
+ break;
+ case PRICE_BALANCE:
+ Lcd_NormalPage_2(billing_real_para_g.price_now * 0.0001f, billing_real_para_g.balance_now, ladder_price_cfg_para_true_g.set_price_type_mode);
+ break;
+ case TEMP_SC_TOTAL:
+ Lcd_NormalPage_3(sys_realtime_data_g.measure_para_s.temperature, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
+ break;
+ case PRESS_SC_TOTAL:
+ Lcd_NormalPage_4(sys_realtime_data_g.measure_para_s.pressure, sys_realtime_data_g.measure_para_s.forward_cumulate_sc);
+ break;
+// case WC_INSTANT_TOTAL:
+// Lcd_NormalPage_5(sys_realtime_data_g.measure_para_s.instant_wc, sys_realtime_data_g.measure_para_s.forward_cumulate_wc);
+// break;
+ default:
+ break;
+ }
+ }
+ else if (sys_display_para_p->sys_and_display_mode == DISPLAY_PARA)
+ {
+ LCD_DISPLAY_SEG(_LCD_LOOKUP_23A); // ����ͼ��
+ switch (sys_display_para_p->display_page_status.para_page_status) // ������ʾҳ��
+ {
+ case METER_NUM:
+ Lcd_ParaPage_MeterNum(master_basic_papa_g.factory_number);
+ break;
+ case OTHER_METER_NUM:
+ Lcd_ParaPage_ThirdParty_MeterNum(0,NULL);
+ break;
+ case DATE_TIME:
+ Lcd_Show_time(Bcd_2_Hex(calendar_g.Year), Bcd_2_Hex(calendar_g.Month), Bcd_2_Hex(calendar_g.Date),
+ Bcd_2_Hex(calendar_g.Hour), Bcd_2_Hex(calendar_g.Minute), Bcd_2_Hex(calendar_g.Second));
+ break;
+ case IP_PORT:
+ Lcd_ParaPage_IpPort(gprs_network_cfg_para_g.gprs_ip_1, &gprs_network_cfg_para_g.gprs_port_1);
+ break;
+ case OTHER_IP_PORT:
+ Lcd_ParaPage_ThirdParty_IpPort(0,gprs_network_cfg_para_g.gprs_ip_1, &gprs_network_cfg_para_g.gprs_port_1);
+ break;
+ case SW_VER:
+ Lcd_ParaPage_SoftVer(master_soft_hard_para_g.master_firmware_ver);
+ break;
+ case HW_VER:
+ Lcd_ParaPage_HardVer(master_soft_hard_para_g.master_hardware_ver);
+ break;
+ case SOUND_VEL:
+ Lcd_ParaPage_SoundVel(sys_realtime_data_g.state_para_s.sound_vel);
+ break;
+ case SEC_CORR_NOW:
+ Lcd_SecCorr_FixedShow(SEC_CORR_NOW);
+ break;
+ case SEC_CORR_NOW_PARA_1:
+ Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_1,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_NOW_PARA_2:
+ Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_2,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_NOW_PARA_3:
+ Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_3,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_NOW_PARA_4:
+ Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_4,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_NOW_PARA_5:
+ Lcd_SecCorr_ParaShow(SEC_CORR_NOW_PARA_5,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_OLD:
+ Lcd_SecCorr_FixedShow(SEC_CORR_OLD);
+ break;
+ case SEC_CORR_OLD_PARA_1:
+ Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_1,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_OLD_PARA_2:
+ Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_2,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_OLD_PARA_3:
+ Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_3,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_OLD_PARA_4:
+ Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_4,&sec_order_corr_set_g);
+ break;
+ case SEC_CORR_OLD_PARA_5:
+ Lcd_SecCorr_ParaShow(SEC_CORR_OLD_PARA_5,&sec_order_corr_set_g);
+ break;
+ default:
+ break;
+ }
+ }
+ else if (sys_display_para_p->sys_and_display_mode == CALIB_MODE)
+ {
+ LCD_DISPLAY_SEG(_LCD_CHECK_23A); // �춨ͼ��
+ Lcd_CalibPage(cal_display_exit_data_g, sys_realtime_data_g.measure_para_s.cal_cumulate_reserve[1]);
+ }
+ else if (sys_display_para_p->sys_and_display_mode == SET_PARA_MODE)
+ {
+ LCD_DISPLAY_SEG(_LCD_CONFIGURATION_23A); // ����ͼ��
+ Lcd_SuccErrPage(SUCCESS_0);
+ }
+ }
/*ȫ�������ʾ*/
LCD_ALL_DISPLAY;
/*�����ʾ����,������һ�����*/
- memset(LCD_Buffer, 0, sizeof(LCD_Buffer));
+ memset(LCD_buffer, 0, sizeof(LCD_buffer));
}
-
-
-
-
-void lcdDisplayPro(void)
-{
- if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0)
- {
- if(LCD_PWR_IO_READ==Bit_RESET)
- {
- //�״��ϵ��ʼ��
- Lcd_Sys_Init();
- }else
- {
- //ֻ������ʾ����
- }
- Lcd_Show_MenuProcess();
-
- }else
- {
- Lcd_DeInit();
- }
-
-}
\ No newline at end of file
--
Gitblit v1.9.3