| New file |
| | |
| | | /* |
| | | * File : lcd_cfg_api.c |
| | | * This file is part of Sizhu Ultrasonic Gas-Meter |
| | | * COPYRIGHT (C) 2022,Sizhu Ultrasonic Gas-Meter Development Team |
| | | * |
| | | * Brief : Header file of lcd. |
| | | * http://www.ideacreated.com/ |
| | | * |
| | | * Change Logs: |
| | | * Date Author Notes |
| | | * 2022-08-22 Sizhu_J1anG the first version |
| | | * 2022-08-30 Sizhu_Ye targeted modification |
| | | */ |
| | | |
| | | #ifndef _LCD_H_ |
| | | #define _LCD_H_ |
| | | |
| | | #include "define_all.h" |
| | | #include "key.h" |
| | | #include "lcd_io_api.h" |
| | | #include "lcd_cfg_api.h" |
| | | #include "lcd_segmentcode.h" |
| | | |
| | | #define LCD_BACKLIGHT_SELECT(__ALKA_STATE__) ((__ALKA_STATE__ == RESET) ? LCD_BACKLIGHT_ON : LCD_BACKLIGHT_OFF) |
| | | |
| | | //ÇåÆÁ |
| | | #define LCD_ALL_CLEAR Lcd_Write_Reg(0,LCD_SYSTEM_MODE_OFF_OFF,SEGNUM) |
| | | //ÏÔʾËùÓÐÊý¾Ý |
| | | #define LCD_ALL_DISPLAY Lcd_Write_Reg(0,LCD_Buffer,SEGNUM) |
| | | |
| | | typedef enum{ |
| | | CNV_NONE = 0U, |
| | | CNV_PARA_MODE_ENTER, |
| | | CNV_CAL_MODE_ENTER, |
| | | CNV_PARA_MODE_EXIT, |
| | | CNV_CAL_MODE_EXIT, |
| | | CNV_DISPLAY_MODE_ENTER, |
| | | CNV_DISPLAY_MODE_EXIT, |
| | | }TEMP_SYS_MODE_CNV_CMD;//conversion |
| | | |
| | | typedef enum{ |
| | | NORMAL_MODE = 1, //ÆÕͨģʽ/ÏÔʾ |
| | | DISPLAY_PARA = 2, //ÏÔʾ²ÎÊý£¨´Ëģʽ°üº¬ÔÚÆÕͨģʽ£© |
| | | CALIB_MODE = 4, //¼ì¶¨Ä£Ê½/ÏÔʾ |
| | | SET_PARA_MODE = 8, //¹¤³Ì£¨ÉèÖòÎÊý£©Ä£Ê½/ÏÔʾ |
| | | }SYS_DISPLAY_MODE;//ϵͳÏÔʾģʽÀàÐÍ |
| | | |
| | | typedef enum{ |
| | | SC_INSTANT_TOTAL = 0U, //˲ʱ±ê¿ö + ±ê¿ö×ÜÁ¿ |
| | | PRICE_BALANCE, //µ¥¼Û + Óà¶î |
| | | TEMP_SC_TOTAL, //ÎÂ¶È + ±ê¿ö×ÜÁ¿ |
| | | PRESS_SC_TOTAL, //ѹÁ¦ + ±ê¿ö×ÜÁ¿ |
| | | // WC_INSTANT_TOTAL,//˲ʱ¹¤¿ö + ¹¤¿ö×ÜÁ¿ |
| | | }NORMAL_PAGE; |
| | | |
| | | typedef enum{ |
| | | METER_NUM = 0U, |
| | | OTHER_METER_NUM, |
| | | DATE_TIME, |
| | | IP_PORT, |
| | | OTHER_IP_PORT, |
| | | SW_VER, |
| | | HW_VER, |
| | | SOUND_VEL, |
| | | SEC_CORR_NOW, |
| | | SEC_CORR_NOW_PARA_1, |
| | | SEC_CORR_NOW_PARA_2, |
| | | SEC_CORR_NOW_PARA_3, |
| | | SEC_CORR_NOW_PARA_4, |
| | | SEC_CORR_NOW_PARA_5, |
| | | SEC_CORR_OLD, |
| | | SEC_CORR_OLD_PARA_1, |
| | | SEC_CORR_OLD_PARA_2, |
| | | SEC_CORR_OLD_PARA_3, |
| | | SEC_CORR_OLD_PARA_4, |
| | | SEC_CORR_OLD_PARA_5, |
| | | }PARA_DISPLAY_PAGE; |
| | | |
| | | #pragma pack(1) |
| | | |
| | | typedef struct{ |
| | | NORMAL_PAGE normal_page_status; |
| | | PARA_DISPLAY_PAGE para_page_status; |
| | | }NORMAL_DISPLAY_PAGE_T;//ÆÕͨÏÔÊ¾Ò³ÃæÀàÐͽṹÌå |
| | | |
| | | typedef struct{ |
| | | TEMP_SYS_MODE_CNV_CMD temp_sys_mode_flag; //ÁÙʱµÄϵͳģʽ±ê־루ÓÃÓÚ°´¼ü·¢ËÍ£© |
| | | SYS_DISPLAY_MODE sys_and_display_mode; //ϵͳ/ÏÔʾģʽ£¨×îÖÕµÄÈ·ÈÏ£© |
| | | NORMAL_DISPLAY_PAGE_T display_page_status; //ÏÔÊ¾Ò³Ãæ×´Ì¬ |
| | | }SYS_DISPLAY_PAPA_T; |
| | | |
| | | #pragma pack() |
| | | |
| | | |
| | | |
| | | extern SYS_DISPLAY_PAPA_T sys_display_para_g; |
| | | |
| | | extern uint8_t lcd_wake_up_flag_g; |
| | | |
| | | void Lcd_DeInit(void); |
| | | |
| | | void Lcd_Sys_Init(void); |
| | | |
| | | void Lcd_Display_AllTest(void); |
| | | void Lcd_Clear_AllTest(void); |
| | | void Lcd_Show_Loop(void); |
| | | |
| | | void Lcd_Show_MenuProcess(void); |
| | | |
| | | void lcdDisplayPro(void); |
| | | |
| | | #endif |
| | | |