123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- #include "interface.h"
- #include "bmp.h"
- #include "keyboard.h"
- #include "tt808.h"
- #include "usart.h"
- #include "key.h"
- /**
- * @breaf 本页定义变量
- */
-
- //结构体
- Menu_table menu;
- TipsFlag tipsflag;
- extern LockInfo lockinfo;
- //布尔
- bool refresh=false;
- bool ReturnInterface = false;
- //字符串
- //方法
- void logoDisplay(void);
- void lockWork(void);//界面1 一键施解封
- void ApplyPermission(void);//界面2 申请权限
- void PleaseWakeUp(void);//界面3 请唤醒
- void SecondMain(void);//次主界面
- void MACbindDisplay(void);//界面4
- /**
- * @breaf 界面跳转
- */
- void Jump_interface(void)
- {
- if(refresh)
- {
- OLED_Clear();
- refresh=false;
- }
- switch(menu.current)
- {
- case 0:
- {
- logoDisplay();//无任何绑定,显示Logo界面
- //lockWork();
- //ApplyPermission();
- //PleaseWakeUp();
- //SecondMain();
- break;
- }
- case 1:
- {
- lockWork();
- break;
- }
- case 2:
- {
- ApplyPermission();
- break;
- }
- case 3:
- {
- PleaseWakeUp();
- break;
- }
- case 4:
- {
- MACbindDisplay();
- break;
- }
- }
-
- }
- void MACbindDisplay(void)
- {
- if(menu.down<4)
- {
- OLED_ShowString(5,0,(unsigned char*)lockinfo.SN1name,16,1);
- OLED_ShowString(5,15,(unsigned char*)lockinfo.SN2name,16,1);
- OLED_ShowString(5,30,(unsigned char*)lockinfo.SN3name,16,1);
- OLED_ShowString(5,45,(unsigned char*)lockinfo.SN4name,16,1);
-
- if(menu.down==0)
- OLED_ShowString(5,0,(unsigned char*)lockinfo.SN1name,16,0);
- if(menu.down==1)
- OLED_ShowString(5,15,(unsigned char*)lockinfo.SN2name,16,0);
- if(menu.down==2)
- OLED_ShowString(5,30,(unsigned char*)lockinfo.SN3name,16,0);
- if(menu.down==3)
- OLED_ShowString(5,45,(unsigned char*)lockinfo.SN4name,16,0);
-
- OLED_ShowString(110,45,(unsigned char*)"1/2",12,1);
- }
- else
- {
- OLED_ShowString(5,0,(unsigned char*)lockinfo.SN5name,16,1);
- OLED_ShowString(5,15,(unsigned char*)lockinfo.SN6name,16,1);
- OLED_ShowString(5,30,(unsigned char*)lockinfo.SN7name,16,1);
- OLED_ShowString(5,45,(unsigned char*)lockinfo.SN8name,16,1);
-
- if(menu.down==4)
- OLED_ShowString(5,0,(unsigned char*)lockinfo.SN5name,16,0);
- if(menu.down==5)
- OLED_ShowString(5,15,(unsigned char*)lockinfo.SN6name,16,0);
- if(menu.down==6)
- OLED_ShowString(5,30,(unsigned char*)lockinfo.SN7name,16,0);
- if(menu.down==7)
- OLED_ShowString(5,45,(unsigned char*)lockinfo.SN8name,16,0);
- OLED_ShowString(110,45,(unsigned char*)"2/2",12,1);
- }
- }
- void logoDisplay(void)//界面1
- {
- if(!MgnssFlag)
- {
- OLED_ShowString(20,10,(unsigned char*)"System Staring...",12,0);
- }
- else
- {
- OLED_ShowPicture(0,0,128,64,BMP7,1);
- }
- }
- void lockWork(void) //界面2
- {
- char count[6]; // 数字1转换为字符串形式最多需要2个字符,再加上终止符'\0'共6个字符的空间
- sprintf(count, "%u", macsetptr->macCount);
- OLED_ShowChinese(18,2,56,16,1);//一
- OLED_ShowChinese(38,2,57,16,1);//键
- OLED_ShowChinese(58,2,18,16,1);//解
- OLED_ShowChinese(78,2,19,16,1);//封
- OLED_ShowChinese(18,25,56,16,1);//一
- OLED_ShowChinese(38,25,57,16,1);//键
- OLED_ShowChinese(58,25,17,16,1);//施
- OLED_ShowChinese(78,25,19,16,1);//封
- OLED_ShowChinese(25,48,26,12,1);//已
- OLED_ShowChinese(40,48,27,12,1);//绑
- OLED_ShowChinese(55,48,28,12,1);//定
- OLED_ShowChinese(70,48,29,12,1);//锁
- OLED_ShowString(85,48,(unsigned char*)"(",12,1);
- OLED_ShowString(94,48,(unsigned char*)count,12,1);
- OLED_ShowString(100,48,(unsigned char*)")",12,1);
-
- //*选择
- if(menu.down==0)
- {
- OLED_ShowString(100,2,(unsigned char*)"<<-",12,0);
- }
- else if(menu.down==1)
- {
- OLED_ShowString(100,25,(unsigned char*)"<<-",12,0);
- }
- else if(menu.down==2)
- {
- OLED_ShowString(110,48,(unsigned char*)"<<-",12,0);
- }
-
- }
- void ApplyPermission(void)//界面2 申请权限
- {
- char count[6]; // 数字1转换为字符串形式最多需要2个字符,再加上终止符'\0'共6个字符的空间
- sprintf(count, "%u", macsetptr->macCount);
- OLED_ShowChinese(5,20,58,16,1);//正
- OLED_ShowChinese(25,20,59,16,1);//在
- OLED_ShowChinese(45,20,60,16,1);//申
- OLED_ShowChinese(65,20,61,16,1);//请
- OLED_ShowChinese(85,20,62,16,1);//权
- OLED_ShowChinese(105,20,63,16,1);//限
-
- OLED_ShowString(10,48,(unsigned char*)">",12,1);
- OLED_ShowString(25,48,(unsigned char*)count,12,1);
-
- if(reAuth)
- {
- OLED_ShowString(60,48,(unsigned char*)"->>",12,1);
- OLED_ShowString(80,48,(unsigned char*)"Success",12,1);
- }
-
- }
- void PleaseWakeUp(void)//界面3 请唤醒
- {
- char workedCount[6]; // 数字1转换为字符串形式最多需要2个字符,再加上终止符'\0'共6个字符的空间
- sprintf(workedCount, "%u", macsetptr->macWorked);
- OLED_ShowChinese(5,20,64,16,1); //请
- OLED_ShowChinese(25,20,65,16,1); //唤
- OLED_ShowChinese(45,20,66,16,1); //醒
- OLED_ShowChinese(65,20,67,16,1); //蓝
- OLED_ShowChinese(85,20,68,16,1); //牙
- OLED_ShowChinese(105,20,69,16,1);//锁
-
-
- OLED_ShowChinese(25,48,26,12,1);//已
- OLED_ShowChinese(40,48,30,12,1);//操
- OLED_ShowChinese(55,48,31,12,1);//作
- OLED_ShowChinese(70,48,29,12,1);//锁
- OLED_ShowString(85,48,(unsigned char*)"(",12,1);
- OLED_ShowString(94,48,(unsigned char*)workedCount,12,1);
- OLED_ShowString(100,48,(unsigned char*)")",12,1);
-
- }
- void SecondMain(void)//次主界面
- {
- //*个数显示
- OLED_ShowString(90,25,(unsigned char*)":",16,1);
- //*解封
- // OLED_ShowChinese(8,25,18,16,1);//解
- // OLED_ShowChinese(28,25,19,16,1);//封
- // OLED_ShowChinese(48,25,69,16,1);//锁
- // OLED_ShowChinese(68,25,70,16,1);//数
- // OLED_ShowString(105,26,(unsigned char*)"8",16,1);
- //*施封
- // OLED_ShowChinese(8,25,17,16,1);//施
- // OLED_ShowChinese(28,25,19,16,1);//封
- // OLED_ShowChinese(48,25,69,16,1);//锁
- // OLED_ShowChinese(68,25,70,16,1);//数
- // OLED_ShowString(105,26,(unsigned char*)"8",16,1);
-
- //*所有锁已
- OLED_ShowChinese(5,25,71,16,1);//所
- OLED_ShowChinese(25,25,72,16,1);//有
- OLED_ShowChinese(45,25,69,16,1);//锁
- OLED_ShowChinese(65,25,73,16,1);//已
- OLED_ShowChinese(105,25,19,16,1);//封
- OLED_ShowChinese(85,25,18,16,1);//解
- // OLED_ShowChinese(85,25,17,16,1);//施
-
-
-
-
- }
|