163 lines
4.1 KiB
C
163 lines
4.1 KiB
C
|
|
#ifndef USER_DISPLAY_PRESENT
|
|||
|
|
#define USER_DISPLAY_PRESENT
|
|||
|
|
|
|||
|
|
#include "type.h"
|
|||
|
|
|
|||
|
|
typedef enum {UNIT_CAL, UNIT_PSI, UNIT_INH2O, UNIT_MMH2O, UNIT_KPA, UNIT_KG, UNIT_M3, UNIT_L, UNIT_PCT} TDiffUnit;
|
|||
|
|
typedef enum {UNIT_PV_PA, UNIT_PV_MPA} TPresVacuUnit;
|
|||
|
|
typedef enum {UNIT_PT_C, UNIT_PT_F, UNIT_PT_MPA} TPresTempUnit;
|
|||
|
|
typedef enum {SOURCE_LNG, SOURCE_O2, SOURCE_N2, SOURCE_AR, SOURCE_CO2,
|
|||
|
|
SOURCE_H2, SOURCE_CNG, SOURCE_HE, SOURCE_C2H4, SOURCE_LPG, SOURCE_NH3,
|
|||
|
|
SOURCE_PENT, SOURCE_POPO} TDispSource; // <20><><EFBFBD>飬<EFBFBD><E9A3AC><EFBFBD>Ѷ<EFBFBD>Ԫ<EFBFBD><D4AA>
|
|||
|
|
|
|||
|
|
// <20><>ʾһ<CABE><D2BB>8<EFBFBD><38><EFBFBD><EFBFBD>
|
|||
|
|
// pos: Fld1Ϊ0~3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ң<EFBFBD><D2A3><EFBFBD>ֵ<EFBFBD><D6B5>1~4)<29><>Fld2Ϊ4~6<><36><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>5~7<><37><EFBFBD><EFBFBD>
|
|||
|
|
// Fld3Ϊ7~9<><39><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>8~10<31><30><EFBFBD><EFBFBD>Fld4Ϊ10~12<31><32><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>11~13)
|
|||
|
|
void Disp_DispChar(u8 pos, char c);
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>ѹ<EFBFBD><D1B9>Һλ<D2BA><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld1Text(s8 *text);
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld1PointMultiOn(u8 posOrMulti);
|
|||
|
|
void Disp_Fld1PointMultiOff();
|
|||
|
|
void Disp_Fld1PointOff();
|
|||
|
|
|
|||
|
|
// <20><>ʾѹ<CABE><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld2Text(s8 *text);
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld2PointOn(u8 pos);
|
|||
|
|
void Disp_Fld2PointOff();
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld2UnitOn(TPresVacuUnit unit);
|
|||
|
|
void Disp_Fld2UnitOff();
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld3Text(s8 *text);
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld3PointOn(u8 pos);
|
|||
|
|
void Disp_Fld3PointOff();
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld3UnitOn(TPresTempUnit unit);
|
|||
|
|
void Disp_Fld3UnitOff();
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld4Text(s8 *text);
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld4PointOn(u8 pos);
|
|||
|
|
void Disp_Fld4PointOff();
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld4UnitOn(TPresTempUnit unit);
|
|||
|
|
void Disp_Fld4UnitOff();
|
|||
|
|
|
|||
|
|
// <20><>ѹ<EFBFBD><D1B9>Һλ<D2BA><CEBB><EFBFBD><EFBFBD>ʾ<EFBFBD>л<EFBFBD>
|
|||
|
|
void Disp_SwitchDiffUnit(TDiffUnit unit);
|
|||
|
|
|
|||
|
|
// <20><>ʾҺԴ
|
|||
|
|
void Disp_SwitchSource(TDispSource src);
|
|||
|
|
|
|||
|
|
// дָ<D0B4><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_WriteNeedle(u8 val);
|
|||
|
|
// д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_WriteBattery(u8 val);
|
|||
|
|
// д<>ź<EFBFBD>ǿ<EFBFBD><C7BF>
|
|||
|
|
void Disp_WriteStrength(u8 val);
|
|||
|
|
// дͨѶ״̬<D7B4><CCAC><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>
|
|||
|
|
void Disp_WriteCommunication(u8 val);
|
|||
|
|
// д<>澯״̬
|
|||
|
|
void Disp_WriteAlarm(u8 val);
|
|||
|
|
// д<><D0B4><EFBFBD><EFBFBD>״̬
|
|||
|
|
void Disp_WriteError(u8 val);
|
|||
|
|
// д<><D0B4>װ״̬
|
|||
|
|
void Disp_WriteFill(u8 val);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Clear();
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸
|
|||
|
|
void Disp_SetBlinkVisible(u8 visible);
|
|||
|
|
void Disp_Fld1Blink(u8 blink);
|
|||
|
|
void Disp_Fld2Blink(u8 blink);
|
|||
|
|
void Disp_Fld3Blink(u8 blink);
|
|||
|
|
void Disp_Fld4Blink(u8 blink);
|
|||
|
|
void Disp_BatteryBlink(u8 blink);
|
|||
|
|
// ********************************************
|
|||
|
|
// <20><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>ʵ<EFBFBD><CAB5>
|
|||
|
|
// ********************************************
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|||
|
|
void Disp_SetCursor(u8 pos, u8 width);
|
|||
|
|
void Disp_ClearCursor();
|
|||
|
|
|
|||
|
|
// ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
u8 pos; // <20><>ʾλ<CABE>ã<EFBFBD>0~3<><33>0Ϊ<30><CEAA>ѹ<EFBFBD><D1B9>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>3λ<33><CEBB>ѹ<EFBFBD><D1B9>ʾ<EFBFBD><CABE><EFBFBD>ұߣ<D2B1>
|
|||
|
|
u8 width; // <20><>ʾλ<CABE><CEBB>
|
|||
|
|
u8 count; // ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30><EFBFBD><EFBFBD>ѡ<EFBFBD>
|
|||
|
|
u8 idx; // <20><>ǰѡ<C7B0><D1A1>
|
|||
|
|
u8 read_only; // ֻ<><D6BB>
|
|||
|
|
u8 hide; // <20><><EFBFBD><EFBFBD>
|
|||
|
|
char items[13][5]; // <20><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>4<EEB3A4><34><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
|||
|
|
} TSelectBox;
|
|||
|
|
|
|||
|
|
// ˢ<><CBA2><EFBFBD><EFBFBD>ʾ
|
|||
|
|
void SelectBox_Refresh(TSelectBox *pBox);
|
|||
|
|
// <20><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>
|
|||
|
|
void SelectBox_Create(TSelectBox *pBox, u8 pos, u8 width, u8 count, const char items[][5], u8 idx);
|
|||
|
|
// <20><><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void SelectBox_ReadOnly(TSelectBox *pBox);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void SelectBox_Hide(TSelectBox *pBox);
|
|||
|
|
// ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
u8 SelectBox_OnKey(TSelectBox *pBox, u8 key);
|
|||
|
|
// ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>
|
|||
|
|
void SelectBox_SetFocus(TSelectBox *pBox);
|
|||
|
|
|
|||
|
|
// <20>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
u8 pos; // <20><>ʾλ<CABE><CEBB>
|
|||
|
|
u8 width; // <20><>ʾλ<CABE><CEBB>
|
|||
|
|
u8 len; // <20>༭<EFBFBD><E0BCAD><EFBFBD>ݳ<EFBFBD><DDB3>ȣ<EFBFBD><C8A3><EFBFBD>len>width<74><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>
|
|||
|
|
u8 left_idx; // <20>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>idx
|
|||
|
|
u8 curr_idx; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>idx
|
|||
|
|
u8 read_only; // ֻ<><D6BB>
|
|||
|
|
u8 hide; // <20><><EFBFBD><EFBFBD>
|
|||
|
|
char text[20]; // <20>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD>
|
|||
|
|
} TEditBox;
|
|||
|
|
|
|||
|
|
// ˢ<><CBA2><EFBFBD><EFBFBD>ʾ
|
|||
|
|
void EditBox_Refresh(TEditBox *pEdit);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD>༭<EFBFBD><E0BCAD>
|
|||
|
|
void EditBox_Create(TEditBox *pEdit, u8 pos, u8 width, u8 len, char *text);
|
|||
|
|
// <20><><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void EditBox_ReadOnly(TEditBox *pEdit);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void EditBox_Hide(TEditBox *pEdit);
|
|||
|
|
// <20>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
u8 EditBox_OnKey(TEditBox *pEdit, u8 key);
|
|||
|
|
// <20>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>
|
|||
|
|
void EditBox_SetFocus(TEditBox *pEdit);
|
|||
|
|
|
|||
|
|
// <20><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
u8 pos; // <20><>ʾλ<CABE><CEBB>
|
|||
|
|
u8 width; // <20><>ʾλ<CABE><CEBB>
|
|||
|
|
u8 hide; // <20><><EFBFBD><EFBFBD>
|
|||
|
|
char caption[5]; // <20><><EFBFBD><EFBFBD>
|
|||
|
|
} TButton;
|
|||
|
|
|
|||
|
|
// ˢ<><CBA2><EFBFBD><EFBFBD>ʾ
|
|||
|
|
void Button_Refresh(TButton *pButton);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ť
|
|||
|
|
void Button_Create(TButton *pButton, u8 pos, u8 width, char *caption);
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Button_Hide(TButton *pButton);
|
|||
|
|
// <20><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
u8 Button_OnKey(TButton *pButton, u8 key);
|
|||
|
|
// <20><>ť<EFBFBD><C5A5><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>
|
|||
|
|
void Button_SetFocus(TButton *pButton);
|
|||
|
|
|
|||
|
|
#endif
|