📄 menu.c
字号:
P0=table[10];
P2=0xef;
delayms(2);
break;}
case 4: {P2=0xff; //显示第二层第3个菜单 oN
P0=table[15];
P2=0xdf;
delayms(2);
P2=0xff;
P0=table[14];
P2=0xef;
delayms(2);
break;}
case 5: {P2=0xff; //显示第二层第4个菜单 oFF
P0=table[16];
P2=0xbf;
delayms(2);
P2=0xff;
P0=table[16];
P2=0xdf;
delayms(2);
P2=0xff;
P0=table[14];
P2=0xef;
delayms(2);
break;}
case 6: { //显示第三层第1个菜单 dateval 2007.12.10
P2=0xff;
P0=table[(DateVal[0]%10)]&0xDF;
if (index_shanshuo == 0) //选闪烁位
{
if (en_shanshuo == 0) P2=0x7f; //闪烁控制
}
else P2=0x7f;
delayms(2);
P2=0xff;
P0=table[(DateVal[0]/10)];
if (index_shanshuo == 0)
{
if (en_shanshuo == 0) P2=0xbf;
}
else P2=0xbf;
delayms(2);
P2=0xff;
P0=table[(DateVal[1]%10)]&0xDF;
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xdf;
}
else P2=0xdf;
delayms(2);
P2=0xff;
P0=table[(DateVal[1]/10)];
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xef;
}
else P2=0xef;
delayms(2);
P2=0xff;
P0=table[(DateVal[2]%10)]&0xDF;
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xf7;
}
else P2=0xf7;
delayms(2);
P2=0xff;
P0=table[(DateVal[2]/10)];
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xfb;
}
else P2=0xfb;
delayms(2);
P2=0xff;
P0=table[0];
P2=0xfd;
delayms(2);
P2=0xff;
P0=table[2];
P2=0xfe;
delayms(2);
break;}
case 7: {P2=0xff; //显示第三层第2个菜单 time值
P0=table[(TimeVal[0]%10)]&0xDF;
if (index_shanshuo == 0) //选闪烁位
{
if (en_shanshuo == 0) P2=0x7f; //闪烁控制
}
else P2=0x7f;
delayms(2);
P2=0xff;
P0=table[(TimeVal[0]/10)];
if (index_shanshuo == 0)
{
if (en_shanshuo == 0) P2=0xbf;
}
else P2=0xbf;
delayms(2);
P2=0xff;
P0=table[(TimeVal[1]%10)]&0xDF;
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xdf;
}
else P2=0xdf;
delayms(2);
P2=0xff;
P0=table[(TimeVal[1]/10)];
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xef;
}
else P2=0xef;
delayms(2);
P2=0xff;
P0=table[(TimeVal[2]%10)]&0xDF;
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xf7;
}
else P2=0xf7;
delayms(2);
P2=0xff;
P0=table[(TimeVal[2]/10)];
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xfb;
}
else P2=0xfb;
delayms(2);
break;}
case 8: {P2=0xff; //显示第三层第3个菜单 timeON
P0=table[(DingTimeOnVal[0]%10)]&0xDF;
if (index_shanshuo == 0) //选闪烁位
{
if (en_shanshuo == 0) P2=0x7f; //闪烁控制
}
else P2=0x7f;
delayms(2);
P2=0xff;
P0=table[(DingTimeOnVal[0]/10)];
if (index_shanshuo == 0)
{
if (en_shanshuo == 0) P2=0xbf;
}
else P2=0xbf;
delayms(2);
P2=0xff;
P0=table[(DingTimeOnVal[1]%10)]&0xDF;
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xdf;
}
else P2=0xdf;
delayms(2);
P2=0xff;
P0=table[(DingTimeOnVal[1]/10)];
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xef;
}
else P2=0xef;
delayms(2);
P2=0xff;
P0=table[(DingTimeOnVal[2]%10)]&0xDF;
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xf7;
}
else P2=0xf7;
delayms(2);
P2=0xff;
P0=table[(DingTimeOnVal[2]/10)];
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xfb;
}
else P2=0xfb;
delayms(2);
break;}
case 9: {P2=0xff; //显示第三层第4个菜单 timeOFF
P0=table[(DingTimeOffVal[0]%10)]&0xDF;
if (index_shanshuo == 0) //选闪烁位
{
if (en_shanshuo == 0) P2=0x7f; //闪烁控制
}
else P2=0x7f;
delayms(2);
P2=0xff;
P0=table[(DingTimeOffVal[0]/10)];
if (index_shanshuo == 0)
{
if (en_shanshuo == 0) P2=0xbf;
}
else P2=0xbf;
delayms(2);
P2=0xff;
P0=table[(DingTimeOffVal[1]%10)]&0xDF;
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xdf;
}
else P2=0xdf;
delayms(2);
P2=0xff;
P0=table[(DingTimeOffVal[1]/10)];
if (index_shanshuo == 1)
{
if (en_shanshuo == 0) P2=0xef;
}
else P2=0xef;
delayms(2);
P2=0xff;
P0=table[(DingTimeOffVal[2]%10)]&0xDF;
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xf7;
}
else P2=0xf7;
delayms(2);
P2=0xff;
P0=table[(DingTimeOffVal[2]/10)];
if (index_shanshuo == 2)
{
if (en_shanshuo == 0) P2=0xfb;
}
else P2=0xfb;
delayms(2);
break;}
case 10:{if (n_yanshi < 150)
{ //延时显示“sav ok”过2秒后跳到显示第二层菜单
n_yanshi++;
P2=0xff;
P0=table[18]; // k
P2=0x7f;
delayms(2);
P2=0xff;
P0=table[14]; // o
P2=0xbf;
delayms(2);
P2=0xff;
P0=table[19]; // v
P2=0xef;
delayms(2);
P2=0xff;
P0=table[12]; // a
P2=0xf7;
delayms(2);
P2=0xff;
P0=table[5]; // s
P2=0xfb;
delayms(2);
}else
{
switch (KeyFuncIndex)
{
case 3:{index_dis = 2; //显示第二层第1个菜单
break;}
case 4:{index_dis = 3; //显示第二层第2个菜单
break;}
case 5:{index_dis = 4; //显示第二层第3个菜单
break;}
case 6:{index_dis = 5; //显示第二层第4个菜单
break;}
default:break;
}
}
break;}
case 11:{P2=0xff; //正常显示运行值
P0=table[(TimeVal[0]%10)]&0xDF;
P2=0x7f;
delayms(2);
P2=0xff;
P0=table[(TimeVal[0]/10)];
P2=0xbf;
delayms(2);
P2=0xff;
P0=table[(TimeVal[1]%10)]&0xDF;
P2=0xdf;
delayms(2);
P2=0xff;
P0=table[(TimeVal[1]/10)];
P2=0xef;
delayms(2);
P2=0xff;
P0=table[(TimeVal[2]%10)]&0xDF;
P2=0xf7;
delayms(2);
P2=0xff;
P0=table[(TimeVal[2]/10)];
P2=0xfb;
delayms(2);
break;}
default:{index_dis = 11;
KeyFuncIndex = 0;
break;}
}
}
void main(void)
{
timecontrol[0]=0x20;
timecontrol[1]=0x00;
// wr_tdata(timecontrol,0x0e,2); //初始化RTC8025,写控制字
DateVal[0] = 10; DateVal[1] = 12; DateVal[2] = 7; //07-12-10
TimeVal[0] = 0; TimeVal[1] = 0; TimeVal[2] = 12; //12:00:00
while(1)
{
if (enable_key) GetKeyInput();
if ((P3 & 0x07) == 0x07) enable_key = 1;
Display();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -