📄 lcd.h
字号:
//Table1 0CBA DEGF
const TableData1[]={0x7D,0x60,0x3E,0x7A,0x63,0x5B,0x5F,0x70,0x7F,0x7B,0x77,0x4f,0x1d,0x6e,0x1f,0x17};
//0111 1101B,0110 0000b,0011 1110B,0111 1010B,0110 0011B ;0~4
//0101 1011b,0101 1111b,0111 0000b,0111 1111b,0111 1011b ;5~9
//0111 0111b,0100 1111b,0001 1101b,0110 1110b,0001 1111b ;a~e
//0001 0111b ;f
//============================================================
Lcd_main()
{
//装载数据
Lcd_LoadOffData();
Lcd_LoadOnData();
//显示数据
Lcd_Display();
}
//======================================
Lcd_LoadOnData()
{
WDTC.byte=0x05;
if (LcdAllLightFlag==0) return;
Lcd_ClearUp_Down();
//----------------------------
Lcd_Dispose_1_To_G(); //公用f500mSFlashFlag标志,f500mSFlashFlag的清除在Lcd_Error()程序中,
Lcd_Error(); //Lcd_Dispose_1_To_G()和Lcd_Error()的顺序不要颠倒
//---------------------------
Lcd_InDoorTemp();
Lcd_SetTemp();
Lcd_ForceRun();
Lcd_HouseAndTree();
Lcd_CheckTemp();
Lcd_Mode();
Lcd_FanDoor();
Lcd_FanSpeed();
Lcd_Time();
for (i=0;i<IndoorMacs;i++)
{//所有机器停机情况下,有定时开机就必须让液晶点亮
if (ModeRegister[i].bit_.TimerOnFlag_)
{LcdOffDisposeFlag=1;HaveTimerOnFlag=1;return;}
else
{HaveTimerOnFlag=0;}
}
if ((AllMacOn_Off.word==0xffff)&& RemoteOnFlag==0)
{Lcd_KeyOffDis();} //关机以后要显示的数据
}
//=================================================
//=============模式处理程序========================
//=================================================
Lcd_CheckTemp()
{
if (TempChoose)
{SavingEle_Icon=1;}
else
{SavingEle_Icon=0;}
if (RemoteModeFlag)
{SavingEle_Icon=0;}
}
Lcd_Error()
{
if (NoUart2Timer>2440 && RemoteModeFlag)
{ErrCode=88;}
/*
Error_Icon = 0;
if ((DisplayMode & 0xf0) == DisError)
{
for (i=0;i<IndoorMacs;i++)
{
WDTC.byte=0x05;
if (InError[DisplayMachineOrder])
{Error_Icon=1;}//有一台室内机故障,故障图标点亮
}
if (InError[DisplayMachineOrder])
{Error_Icon=1;}//有一台室内机故障,故障图标点亮
if (ErrCode>1)
{Error_Icon = 1;}//有室外故障,故障图标闪烁
}
*/
Error_Icon = 0;
if (ErrCode)
{//有室外故障,故障图标闪烁
if (f500mSFlashFlag)
{Error_Icon = 1;}
}
else
{
for (i=0;i<IndoorMacs;i++)
{
WDTC.byte=0x05;
if (InError[i])
{Error_Icon=1;}//有一台室内机故障,故障图标点亮
}
}
}
//=================================================
Lcd_Time()
{
WDTC.byte=0x05;
Timer_Icon=0;
if (HaveDisposeTimerOnKeyFlag)
{//有定时开机操作
if (tTimerOnOffFlash>122)
{
On_Icon = ~On_Icon;
if (!HaveDisposeTimerOffKeyFlag);
{tTimerOnOffFlash=0;}
}
Timer_Icon=1;
}
else
{
if (TimerOn[DisplayMachineOrder])
{On_Icon=1;Timer_Icon=1;}
else
{On_Icon=0;}
}
if (HaveDisposeTimerOffKeyFlag)
{//有定时关机操作
if (tTimerOnOffFlash>122)
{Off_Icon = ~Off_Icon;tTimerOnOffFlash=0;}
Timer_Icon=1;
}
else
{
if (TimerOff[DisplayMachineOrder])
{Off_Icon=1;Timer_Icon=1;}
else
{Off_Icon=0;}
}
// if ((On_Icon==0) && (Off_Icon==0) && (HaveDisposeTimerOnKeyFlag==0) && (HaveDisposeTimerOffKeyFlag==0))
// {Timer_Icon=0;}
i=DisplayMode & 0xf0;
if (i==DisError)
{
Off_Icon=0;
Timer_Icon=0;
On_Icon=0;
}
}
Lcd_HouseAndTree()
{
// SavingEle_Icon=SaveElc; //-------节电图标
// if (KeyTempChangeFlag)
// {House_Icon=1;}
// else
// {House_Icon=0;return;}
if (!RemoteModeFlag)
{
if ((DisplayMode & 0xf0)==0x90 && KeyEnModeWatchModeFlag)
{House_Icon=0;}
else
{House_Icon=1;}
return;
}
i=DisplayMode & 0xf0;
if ( i>DisNatural && i<DisInValve )
{House_Icon=0;Tree_Icon=1;}
else if (i==DisError)
{House_Icon=0;Tree_Icon=0;}
else
{House_Icon=1;Tree_Icon=0;}
}
Lcd_ForceRun()
{
if (ForceRunFlag)
{LedFlashNumber=1;}
}
//==============================================================================
Lcd_Dispose_1_To_G()
{
WDTC.byte=0x05;
Lcd_Clear_1_To_G();
if (RemoteModeFlag && IndoorTestOverFlag==0) return; //如果是集控器且没有检测到室内机则退出
i=DisplayMode & 0xf0;
if (i)
{
k=0;
SendDataToMac_Ico();
if (i==DisPrimary)
{Seg16_Seg17.byte=0Xf0;return;}//--------------------------------------->显示外部常用参数时显示"A"
else if (i==DisAltitude)//-------------------------------------------------->显示外部综合参数"B"
{Seg18_Seg19.byte=0x0f;return;}
else if (i==DisOutFre)//-------------------------------------------------->显示频率时显示"C"
{Seg18_Seg19.byte=0xf0;return;}
else if (i==DisOutValve)//-------------------------------------------------->显示室外阀时显示"D"
{Seg1A_Seg1B.byte=0x0f;return;}
else if (i==DisInValve)//-------------------------------------------------->显示室内阀显示"E"
{Seg1A_Seg1B.byte=0xf0;return;}
else if (DisError==i && KeyEnModeWatchModeFlag)//-------------------------->调试时显示故障显示"F"
{Seg1C_Seg1D.byte=0x0f;return;}
}
if (MacNumEntOkFlag)
{
if (ModeRegister[0].bit_.On_Off_)
{A1_ON_Icon=0;}
else
{A1_ON_Icon=1;}
if (ModeRegister[1].bit_.On_Off_)
{A2_ON_Icon=0;}
else
{A2_ON_Icon=1;}
if (ModeRegister[2].bit_.On_Off_)
{A3_ON_Icon=0;}
else
{A3_ON_Icon=1;}
if (ModeRegister[3].bit_.On_Off_)
{A4_ON_Icon=0;}
else
{A4_ON_Icon=1;}
if (ModeRegister[4].bit_.On_Off_)
{A5_ON_Icon=0;}
else
{A5_ON_Icon=1;}
if (ModeRegister[5].bit_.On_Off_)
{A6_ON_Icon=0;}
else
{A6_ON_Icon=1;}
if (ModeRegister[6].bit_.On_Off_)
{A7_ON_Icon=0;}
else
{A7_ON_Icon=1;}
if (ModeRegister[7].bit_.On_Off_)
{A8_ON_Icon=0;}
else
{A8_ON_Icon=1;}
if (ModeRegister[8].bit_.On_Off_)
{A9_ON_Icon=0;}
else
{A9_ON_Icon=1;}
if (ModeRegister[9].bit_.On_Off_)
{AA_ON_Icon=0;}
else
{AA_ON_Icon=1;}
if (ModeRegister[10].bit_.On_Off_)
{AB_ON_Icon=0;}
else
{AB_ON_Icon=1;}
if (ModeRegister[11].bit_.On_Off_)
{AC_ON_Icon=0;}
else
{AC_ON_Icon=1;}
if (ModeRegister[12].bit_.On_Off_)
{AD_ON_Icon=0;}
else
{AD_ON_Icon=1;}
if (ModeRegister[13].bit_.On_Off_)
{AE_ON_Icon=0;}
else
{AE_ON_Icon=1;}
if (ModeRegister[14].bit_.On_Off_)
{AF_ON_Icon=0;}
else
{AF_ON_Icon=1;}
if (ModeRegister[15].bit_.On_Off_)
{AG_ON_Icon=0;}
else
{AG_ON_Icon=1;}
WDTC.byte=0x05;
if (f500mSFlashFlag)
{
if (InError[0]&& ~ModeRegister[0].bit_.On_Off_) {A1_ON_Icon =1;}
if (InError[1]&& ~ModeRegister[1].bit_.On_Off_) {A2_ON_Icon =1;}
if (InError[2]&& ~ModeRegister[2].bit_.On_Off_) {A3_ON_Icon =1;}
if (InError[3]&& ~ModeRegister[3].bit_.On_Off_) {A4_ON_Icon =1;}
if (InError[4]&& ~ModeRegister[4].bit_.On_Off_) {A5_ON_Icon =1;}
if (InError[5]&& ~ModeRegister[5].bit_.On_Off_) {A6_ON_Icon =1;}
if (InError[6]&& ~ModeRegister[6].bit_.On_Off_) {A7_ON_Icon =1;}
if (InError[7]&& ~ModeRegister[7].bit_.On_Off_) {A8_ON_Icon =1;}
if (InError[8]&& ~ModeRegister[8].bit_.On_Off_) {A9_ON_Icon =1;}
if (InError[9]&& ~ModeRegister[9].bit_.On_Off_) {AA_ON_Icon =1;}
if (InError[10]&& ~ModeRegister[10].bit_.On_Off_) {AB_ON_Icon =1;}
if (InError[11]&& ~ModeRegister[11].bit_.On_Off_) {AC_ON_Icon =1;}
if (InError[12]&& ~ModeRegister[12].bit_.On_Off_) {AD_ON_Icon =1;}
if (InError[13]&& ~ModeRegister[13].bit_.On_Off_) {AE_ON_Icon =1;}
if (InError[14]&& ~ModeRegister[14].bit_.On_Off_) {AF_ON_Icon =1;}
if (InError[15]&& ~ModeRegister[15].bit_.On_Off_) {AG_ON_Icon =1;}
}
else
{
if (InError[0]&& ~ModeRegister[0].bit_.On_Off_) {A1_ON_Icon =0;}
if (InError[1]&& ~ModeRegister[1].bit_.On_Off_) {A2_ON_Icon =0;}
if (InError[2]&& ~ModeRegister[2].bit_.On_Off_) {A3_ON_Icon =0;}
if (InError[3]&& ~ModeRegister[3].bit_.On_Off_) {A4_ON_Icon =0;}
if (InError[4]&& ~ModeRegister[4].bit_.On_Off_) {A5_ON_Icon =0;}
if (InError[5]&& ~ModeRegister[5].bit_.On_Off_) {A6_ON_Icon =0;}
if (InError[6]&& ~ModeRegister[6].bit_.On_Off_) {A7_ON_Icon =0;}
if (InError[7]&& ~ModeRegister[7].bit_.On_Off_) {A8_ON_Icon =0;}
if (InError[8]&& ~ModeRegister[8].bit_.On_Off_) {A9_ON_Icon =0;}
if (InError[9]&& ~ModeRegister[9].bit_.On_Off_) {AA_ON_Icon =0;}
if (InError[10]&& ~ModeRegister[10].bit_.On_Off_) {AB_ON_Icon =0;}
if (InError[11]&& ~ModeRegister[11].bit_.On_Off_) {AC_ON_Icon =0;}
if (InError[12]&& ~ModeRegister[12].bit_.On_Off_) {AD_ON_Icon =0;}
if (InError[13]&& ~ModeRegister[13].bit_.On_Off_) {AE_ON_Icon =0;}
if (InError[14]&& ~ModeRegister[14].bit_.On_Off_) {AF_ON_Icon =0;}
if (InError[15]&& ~ModeRegister[15].bit_.On_Off_) {AG_ON_Icon =0;}
}
for (i=0;i<IndoorMacs;i++)
{
WDTC.byte=0x05;
if (RemoteModeFlag)
{M_IconDispose();}
else if (i==DisplayMachineOrder)
{M_IconDispose();break;}
else
{;}
}
}
}
M_IconDispose()
{
switch (i)
{
case 0:
A1_M_Icon=0; //关闭M图标
if (Command1[0].bit_.EnLineContr_)
{//如果1号机受线控器控制
A1_Icon=1; //点亮1图标
A1_M_Icon=1; //点亮M图标
if (RemoteModeFlag)
{
if (i==DisplayMachineOrder)
{
if (f500mSFlashFlag)
{A1_M_Icon =1;} //集控器液晶当前显示的机器的"M"图标闪烁
else
{A1_M_Icon =0;} //集控器液晶当前显示的机器的"M"图标闪烁
}
else if (HaveMac1Flag==0)
{A1_Icon=0;A1_M_Icon=0;}
else
{;}
}
}
else if (HaveMac1Flag)
{A1_Icon=1;}
break;
case 1:
A2_M_Icon=0; //关闭M图标
if (Command1[1].bit_.EnLineContr_)
{//如果1号机受线控器控制
A2_Icon=1; //点亮1图标
A2_M_Icon=1; //点亮M图标
if (RemoteModeFlag)
{
if (i==DisplayMachineOrder)
{
if (f500mSFlashFlag)
{A2_M_Icon =1;} //集控器液晶当前显示的机器的"M"图标闪烁
else
{A2_M_Icon =0;} //集控器液晶当前显示的机器的"M"图标闪烁
}
else if (HaveMac2Flag==0)
{A2_Icon=0;A2_M_Icon=0;}
else
{;}
}
}
else if (HaveMac2Flag)
{A2_Icon=1;}
break;
case 2:
A3_M_Icon=0; //关闭M图标
if (Command1[2].bit_.EnLineContr_)
{//如果1号机受线控器控制
A3_Icon=1; //点亮1图标
A3_M_Icon=1; //点亮M图标
if (RemoteModeFlag)
{
if (i==DisplayMachineOrder)
{
if (f500mSFlashFlag)
{A3_M_Icon =1;} //集控器液晶当前显示的机器的"M"图标闪烁
else
{A3_M_Icon =0;} //集控器液晶当前显示的机器的"M"图标闪烁
}
else if (HaveMac3Flag==0)
{A3_Icon=0;A3_M_Icon=0;}
else
{;}
}
}
else if (HaveMac3Flag)
{A3_Icon=1;}
break;
case 3:
A4_M_Icon=0; //关闭M图标
if (Command1[3].bit_.EnLineContr_)
{//如果1号机受线控器控制
A4_Icon=1; //点亮1图标
A4_M_Icon=1; //点亮M图标
if (RemoteModeFlag)
{
if (i==DisplayMachineOrder)
{
if (f500mSFlashFlag)
{A4_M_Icon =1;} //集控器液晶当前显示的机器的"M"图标闪烁
else
{A4_M_Icon =0;} //集控器液晶当前显示的机器的"M"图标闪烁
}
else if (HaveMac4Flag==0)
{A4_Icon=0;A4_M_Icon=0;}
else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -