您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 12864并行多级菜单程序
#includeincludes.hu8key=0,hua;externu32Second;externu32minite,hour,day,k,month,year,shan;u8xingqi[]={一二三四五六日};u8ModeFlag=0,wei=0;//液晶界面选择intmain(void){u8PasswordIndex=0;//密码数组索引u8Password[4]={};//存储密码数组BSP_Init();//初始化外部资源ModeFlag=0;while(1){////////////////////////////////////////界面一//////////////////////////////////if(ModeFlag==0){LCD12864_Waddr(1,3);LCD12864_WPoss(0,WELCOME!);LCD12864_Waddr(2,2);LCD12864_WPoss(0,--欢迎使用--);Delay_1ms(8000);LCD12864_Clear();}////////////////////////////////////////界面二////////////////////////////////////ModeFlag=0;/////改while(ModeFlag==0)//进入登录界面{LCD12864_Waddr(1,1);LCD12864_WPoss(0,请输入登陆密码:);LCD12864_Waddr(2,3);//LCD12864_WPoss(0,);LCD12864_Waddr(3,1);LCD12864_WPoss(0,密码为四位数字);LCD12864_Waddr(4,1);LCD12864_WPoss(0,删除*);LCD12864_Waddr(4,6);LCD12864_WPoss(0,确定#);key=Key_Scan();//键盘扫描if(key_check==1)//检测是否有按键按下{if(key='9'&&key='0')//密码只能是数字{Password[PasswordIndex]=key;//存储输入的密码//LCD12864_WPoss(0,);////////////////改动过++PasswordIndex;//记录输入密码的次数if(PasswordIndex4)//如果次数超过4次返回重新输入{PasswordIndex=0;//清空索引Password[0]=0;//清空数组Password[1]=0;Password[2]=0;Password[3]=0;LCD12864_Clear();LCD12864_Waddr(3,1);LCD12864_WPoss(0,密码只能为四位);Delay_1ms(4000);//延时两秒显示LCD12864_Clear();//延时清空break;}if(PasswordIndex=4){LCD12864_Waddr(2,3);LCD12864_WPoss(0,Password);//显示输入的密码LCD12864_WPoss(0,);///改}//ModeFlag=10;//进入while(1)重新开始/////改}if(key=='#')//确认密码{if(PasswordIndex4)//密码位数少于4位则返回重新输入{PasswordIndex=0;Password[0]=0;Password[1]=0;Password[2]=0;Password[3]=0;LCD12864_Clear();LCD12864_Waddr(3,1);LCD12864_WPoss(0,密码只能为四位);Delay_1ms(4000);LCD12864_Clear();break;}if(Password[0]=='1'&&Password[1]=='2'&&Password[2]=='3'&&Password[3]=='4'){//如果输入密码正确则进入计数界面//ModeFlag=2;LCD12864_Clear();////LCD12864_Waddr(1,5);////LCD12864_WPoss(0,00:00);//LCD12864_Waddr(2,4);////LCD12864_WPoss(0,2013/01/01);//LCD12864_Waddr(3,4);//LCD12864_WPoss(0,星期一);////LCD12864_Waddr(4,6);////LCD12864_WPoss(0,返回*);//////Second=0;//计数器清零//minite=0;//计数器清零//hour=0;//day=1;//month=1;}else//如果密码错误重新输入{//ModeFlag=10;//进入while(1)重新开始LCD12864_Clear();LCD12864_Waddr(3,1);LCD12864_WPoss(0,密码错误);Delay_1ms(4000);LCD12864_Clear();PasswordIndex=0;Password[0]=0;Password[1]=0;Password[2]=0;Password[3]=0;break;}}if(key=='*')//删除按键{Password[--PasswordIndex]='';//删除一位密码LCD12864_Waddr(2,3);LCD12864_WPoss(0,Password);//显示输入的密码LCD12864_WPoss(0,);if(PasswordIndex=0){PasswordIndex=0;break;}}key_check=0;LCD12864_Waddr(2,8);LCD12864_WPoss(0,);}}//////////////////////////////////界面三///////////////////////////////////////////////////while(ModeFlag==2){LCD12864_Waddr(1,1);LCD12864_WPoss(0,查看时钟);LCD12864_Waddr(1,6);LCD12864_WPoss(0,B向上);LCD12864_Waddr(2,1);LCD12864_WPoss(0,查看图片);LCD12864_Waddr(2,6);LCD12864_WPoss(0,C向下);LCD12864_Waddr(3,1);LCD12864_WPoss(0,空文件);LCD12864_Waddr(4,1);LCD12864_WPoss(0,返回*);LCD12864_Waddr(4,6);LCD12864_WPoss(0,确定#);key=Key_Scan();//键盘扫描if(key_check==1){key_check=0;if(key=='B'){if(hua0)hua--;}if(key=='C'){if(hua2)hua++;}if(hua2)hua=0;switch(hua){case0:{convertChar(1,1,10);break;}case1:{convertChar(2,1,10);break;}case2:{convertChar(3,1,10);break;}}if(key=='#'){if(hua==0)ModeFlag=3;if(hua==1)ModeFlag=4;if(hua==2)ModeFlag=5;LCD12864_W(LCD12864_COM,0x30);break;}if(key=='*'){LCD12864_Clear();Delay_1ms(1000);ModeFlag=0;LCD12864_Clear();}}}///////////////////////////////////////////界面四//////////////////////////if(ModeFlag==3)//计数界面{/////////Password[]=;//LCD12864_Waddr(1,1);//LCD12864_WPoss(0,);LCD12864_Clear();//LCD12864_Waddr(1,5);//LCD12864_WPoss(0,00:00);LCD12864_Waddr(2,4);//LCD12864_WPoss(0,2013/01/01);LCD12864_Waddr(3,4);LCD12864_WPoss(0,星期一);//LCD12864_Waddr(4,6);//LCD12864_WPoss(0,返回*);//Second=0;//计数器清零minite=0;//计数器清零hour=0;day=1;month=1;while(ModeFlag==3){if(shan==0)//:以秒为单位进行闪烁{LCD12864_Waddr(1,6);LCD12864_WPoss(0,);}if(shan!=0){LCD12864_Waddr(1,6);LCD12864_WPoss(0,:);}if(minite10){LCD12864_Wnum(0,0);LCD12864_Wnum(minite,0);LCD12864_WPoss(0,);}else{LCD12864_Wnum(minite,0);LCD12864_WPoss(0,);}LCD12864_Waddr(1,5);if(hour10){LCD12864_Wnum(0,0);LCD12864_Wnum(hour,0);}if(hour=10){LCD12864_Waddr(1,5);LCD12864_Wnum(hour,0);}LCD12864_Waddr(2,8);if(day10){LCD12864_Wnum(0,0);LCD12864_Wnum(day,0);}if(day=10)LCD12864_Wnum(day,0);LCD12864_Waddr(2,6);if(month10){LCD12864_WPoss(0,/);LCD12864_Wnum(0,0);LCD12864_Wnum(month,0);LCD12864_WPoss(0,/);}if(month=10){LCD12864_WPoss(0,/);LCD12864_Wnum(month,0);LCD12864_WPoss(0,/);}LCD12864_Waddr(3,6);LCD12864_W(LCD12864_DAT,xingqi[k]);LCD12864_W(LCD12864_DAT,xingqi[k+1]);if(day365)year++;LCD12864_Waddr(2,4);LCD12864_Wnum(year,0);key=Key_Scan();//键盘扫描if(key_check==1){key_check=0;if(key=='A'){wei++;if(wei==7)wei=1;}switch(wei){case1:{if(key=='B')hour++;if(hour0){if(key=='C')hour--;}convertChar(1,5,2);//写入字节break;}case2:{if(key=='B')minite++;if(minite0){if(key=='C')minite--;}convertChar(1,6,3);break;}case3:{if(key=='B')year++;if(year0){if(key=='C')year--;}convertChar(2,4,4);break;}case4:{if(key=='B')month++;if(month1){if(key=='C')month--;}convertChar(2,6,3);break;}case5:{if(key=='B')day++;if(
本文标题:12864并行多级菜单程序
链接地址:https://www.777doc.com/doc-3059663 .html