?? lock_main.c
字號:
while(key_inc==0);
break;
case 0x8f: //星期選項
do
{
tem[6]++;
if(tem[6]>=7)
{
tem[6]=0;
}
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_inc==0);
break;
case 0x91: //年選項
do
{
tem[0]++;
if(tem[0]>=29)
{
tem[0]=7;
}
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_inc==0);
break;
case 0x93: //月選項
do
{
tem[1]++;
if(tem[1]>=13)
{
tem[1]=1;
}
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_inc==0);
break;
case 0x95: //日選項
do
{
tem[2]++;
if(tem[2]>=32)
{
tem[2]=1;
}
time_set_display(); //更新顯示
delay_ms(150);
auto_return=0;
}
while(key_inc==0);
break;
default:
break;
}
}
}
if(key_dec==0)
{
delay_ms(5);
if(key_dec==0)
{
buzzer_pro(1); //峰鳴器指示
LCD_BACK_ON; //打開LCD背光
lcd_back_time=0; //計時變量清0
lcd_back_en=0xaa; //打開計時變量
auto_return=0; //清除菜單自動返回累計時間變量
switch(twinkling_addr)
{
case 0x88: //小時選項
do
{
if(tem[3]==0)
{
tem[3]=24;
}
tem[3]--;
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_dec==0);
break;
case 0x8a: //分鐘選項
do
{
if(tem[4]==0)
{
tem[4]=60;
}
tem[4]--;
time_set_display(); //更新顯示
delay_ms(120);
auto_return=0;
}
while(key_dec==0);
break;
case 0x8f: //星期選項
do
{
if(tem[6]==0)
{
tem[6]=7;
}
tem[6]--;
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_dec==0);
break;
case 0x91: //年選項
do
{
if(tem[0]==7)
{
tem[0]=29;
}
tem[0]--;
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_dec==0);
break;
case 0x93: //月選項
do
{
if(tem[1]==1)
{
tem[1]=13;
}
tem[1]--;
time_set_display(); //更新顯示
delay_ms(200);
auto_return=0;
}
while(key_dec==0);
break;
case 0x95: //日選項
do
{
if(tem[2]==1)
{
tem[2]=32;
}
tem[2]--;
time_set_display(); //更新顯示
delay_ms(150);
auto_return=0;
}
while(key_dec==0);
break;
default:
break;
}
}
}
}
//**************************************************字符閃動地址選擇***********************************************
void twinkling_addr_pro(void)
{
switch(left_right)
{
case 0:
twinkling_addr=0x91;
break;
case 1:
twinkling_addr=0x93;
break;
case 2:
twinkling_addr=0x95;
break;
case 3:
twinkling_addr=0x88;
break;
case 4:
twinkling_addr=0x8a;
break;
case 5:
twinkling_addr=0x8f;
break;
default:
break;
}
clear_screen();
return_temp=0; //返回臨時變量清0
}
//*************************************************顯示菜單********************************************************
void show_menu(void)
{
uchar n = 0;
max_items = menu_point[0].menu_count;
WDR(); //喂狗
if (max_items >= 4)
{
for (n = 0;n<4;n++)
{
switch(n)
{
case 0:
write_com(0x80);
break;
case 1:
write_com(0x90);
break;
case 2:
write_com(0x88);
break;
case 3:
write_com(0x98);
break;
default:
break;
}
han_zi_display(menu_point[n].display_string);
if (n == user_choose)
{
switch(n)
{
case 0:
select_menu(0x80);
break;
case 1:
select_menu(0x90);
break;
case 2:
select_menu(0x88);
break;
case 3:
select_menu(0x98);
break;
default:
break;
}
}
}
}
else //子菜單選擇
{
WDR(); //喂狗
clear_screen();
for (n = 0;n<max_items;n++)
{
write_com(0x80);
switch(choose_temp)
{
case 0:
han_zi_display(" 1.時間日期設置");
break;
case 1:
han_zi_display(" 2.報警開關設置");
break;
case 2:
han_zi_display(" 3.人體紅外設置");
break;
case 3:
han_zi_display(" 4.路燈開關設置");
break;
default:
break;
}
if(n==0)
{
write_com(0x88);
}
else if(n==1)
{
write_com(0x98);
}
han_zi_display(menu_point[n].display_string);
if (n== user_choose)
{
if(n==0)
{
select_menu(0x89);
}
else if(n==1)
{
select_menu(0x99);
}
}
}
}
}
//******************************************************初始化菜單目錄*********************************************
void menu_initial(void)
{
main_menu_initial();
alarm_menu_initial();
infrared_menu_initial();
lamp_menu_initial();
card_main_menu_initial();
card_inc_menu_initial();
card_dec_menu_initial();
}
//******************************************************主目錄初始化函數*******************************************
void main_menu_initial(void)
{
main_menu[0].menu_count = 4;
main_menu[0].display_string = " 1.時間日期設置";
main_menu[0].subs = date_time_set;
main_menu[0].children_menus =null;
main_menu[0].parent_menus = null;
main_menu[1].menu_count = 4;
main_menu[1].display_string = " 2.報警開關設置";
main_menu[1].subs = nullsubs;
main_menu[1].children_menus = alarm_menu;
main_menu[1].parent_menus = null;
main_menu[2].menu_count = 4;
main_menu[2].display_string = " 3.人體紅外設置";
main_menu[2].subs = nullsubs;
main_menu[2].children_menus = infrared_menu;
main_menu[2].parent_menus = null;
main_menu[3].menu_count = 4;
main_menu[3].display_string = " 4.路燈開關設置";
main_menu[3].subs = nullsubs;
main_menu[3].children_menus = lamp_menu;
main_menu[3].parent_menus = null;
}
//**************************************************報警開關設置目錄初始化函數*************************************
void alarm_menu_initial(void)
{
alarm_menu[0].menu_count = 2;
alarm_menu[0].display_string = " 1. 打開 ";
alarm_menu[0].subs = alarm_set;
alarm_menu[0].children_menus = null; //&null
alarm_menu[0].parent_menus = main_menu;
alarm_menu[1].menu_count = 2;
alarm_menu[1].display_string = " 2. 關閉 ";
alarm_menu[1].subs = alarm_set;
alarm_menu[1].children_menus = null; //&null
alarm_menu[1].parent_menus = main_menu;
}
//*************************************************人體紅外開關設置目錄初始化函數**********************************
void infrared_menu_initial(void)
{
infrared_menu[0].menu_count = 2;
infrared_menu[0].display_string = " 1. 打開 ";
infrared_menu[0].subs = infrared_set;
infrared_menu[0].children_menus = null; //&null
infrared_menu[0].parent_menus = main_menu;
infrared_menu[1].menu_count = 2;
infrared_menu[1].display_string = " 2. 關閉 ";
infrared_menu[1].subs = infrared_set;
infrared_menu[1].children_menus = null; //&null
infrared_menu[1].parent_menus = main_menu;
}
//*************************************************路燈開關設置目錄初始化函數**************************************
void lamp_menu_initial(void)
{
lamp_menu[0].menu_count = 2;
lamp_menu[0].display_string = " 1. 打開 ";
lamp_menu[0].subs = lamp_set;
lamp_menu[0].children_menus = null;
lamp_menu[0].parent_menus = main_menu;
lamp_menu[1].menu_count = 2;
lamp_menu[1].display_string = " 2. 關閉 ";
lamp_menu[1].subs = lamp_set;
lamp_menu[1].children_menus = null;
lamp_menu[1].parent_menus = main_menu;
}
//**********************************************管理卡操作主菜單***************************************************
void card_main_menu_initial(void)
{
card_main_menu[0].menu_count = 3;
card_main_menu[0].display_string = " 1.添加新卡?";
card_main_menu[0].subs =inc_new_card;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -