⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keyboard.c

📁 HT1621液晶控制测试
💻 C
📖 第 1 页 / 共 3 页
字号:
					  	else {if(multiple_a!=0) {ration_num_a+=9*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(9);
					if(menu1==10){ration_num_a+=9*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=9;disp_memu1_important();}
						break;
				}
				break;
			case 9:	  //钮:STOP
				if(state1==0x01)
				{	state1=0x0;
					DCFX1=1;DCFD1=1;
					disp_key_clear_a();
					dcespk_out();    //电磁阀及蜂鸣器输出
					//pt=&gun1;
					//writebyteseq(0x01,pt,35);  //写EEPROM
					updatea=1;
					state1=0;
				}
				break;
			case 10:  //钮START
 		      if((state1==0x00 || state1==0x02 || state1==0x06 || (state1==4 && (menu1!=2 && menu1!=4))) && k1key  && mcstoptime_a==0 && !locknooil_a) 
				{ 	disp_floor_level_a=increment_a;
					if(state1==6 || state1==4)disp_return_a();
					clear_worka();  //如定量加油须换算相应的脉冲数
					
				  	if(ration_pulse_a>119){mc1=0;DCFX1=0;DCFD1=0;state1=0x01;}
					else {state1=0;prn1time=1;disp_return_a();}
				}
				break;
			case 11:  //钮:4
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=4*multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=4*multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  	  break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,4);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=4*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
				  		break;
					case 3:
				  	if(menu1==8)
					{
						if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=4*multiple_a;}}
					  	else {if(multiple_a!=0) {ration_num_a+=4*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(4);
					if(menu1==10){ration_num_a+=4*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=4;disp_memu1_important();}
						break;
				}
				break;
			case 12:  //钮:5
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=5*multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=5*multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  	  break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,5);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=5*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
				  		break;
					case 3:
				  	if(menu1==8)
					{
						if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=5*multiple_a;}}
					  	else {if(multiple_a!=0) {ration_num_a+=5*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(5);
					if(menu1==10){ration_num_a+=5*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=5;disp_memu1_important();}
						break;
				}
				break;
			case 13: //钮:6
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=6*multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=6*multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  	  break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,6);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=6*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
				  		break;
					case 3:
				  	if(menu1==8)
					{
						if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=6*multiple_a;}}
					  	else {if(multiple_a!=0) {ration_num_a+=6*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(6);
					if(menu1==10){ration_num_a+=6*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=6;disp_memu1_important();}
						break;
				}
				break;
			case 14:  //小数点
				switch (state1)
				{ 	case 1:
						oil_intmoney(0);   //金额取整加油
						break;
					case 2:
					  if(!setdotok) {multiple_a/=10;setdotok=1;}
					case 3:
					  if(menu1==8)if(!setdotok) {multiple_a/=10;setdotok=1;}
				  	break;
				}
				break;
			case 15:  //  V/P
					setdotok=0;
				   if(state1==0x06 || state1==0x07){ration_mode_a=!ration_mode_a;disp_total_a();break;}
					if(state1==0x00 && k1key) {vip_mode_a=!vip_mode_a;vipstart1();disp_vip_a();}
					else if(state1==0x02) 
					{	vip_mode_a=!vip_mode_a;
						ration_mode_a=vip_mode_a;
						ration_num_a=0;
						if(!ration_mode_a)
						{	bbyte=dotmode[decimal_a];   //小数点--元
							if(a0) multiple_a=10;
							else if(a3)multiple_a=100;
							else multiple_a=1;
						}
						else
						{   //升
							bbyte=dotmode[decimal_a];   //小数点
							if(a4) multiple_a=100;
							else if(a1)multiple_a=1000;
							else multiple_a=1;
						}
						disp_vip_a();
					}			  
					
				
				break;
			case 16:  //钮:1
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  	  break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,1);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=1*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
				  		break;
					case 3:
				  	if(menu1==8)
					{
						if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=1*multiple_a;}}
					  	else {if(multiple_a!=0) {ration_num_a+=1*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(1);
					if(menu1==10){ration_num_a+=1*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=1;disp_memu1_important();}
						break;
				}
				break;
			case 17:  //钮:2
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=2*multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=2*multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  		break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,2);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=2*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
						if(menu1==6) {printermode_a=0;disp_memu1_oil();}
						if(menu1==7) {pirnt_select_a=0;disp_memu1_oil();}
				  		break;
					case 3:
						if(menu1==1) {if(residue_a<60) residue_a++;disp_memu1_set();}
						if(menu1==2) {if(close_num_a<10) close_num_a++;disp_memu1_set();}
						if(menu1==3) {if(gunadd_a<32) gunadd_a++;disp_memu1_set();}
						if(menu1==4) {if(oil_types_a<7) oil_types_a++;disp_memu1_set();}
						if(menu1==5) {if(increment_a<23) increment_a++;disp_memu1_set();}
						if(menu1==6) {printermode_a=0;disp_memu1_set();}
						if(menu1==7) {pirnt_select_a=0;disp_memu1_set();}
					
					  	if(menu1==8)
						{
							if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=2*multiple_a;}}
						  	else {if(multiple_a!=0) {ration_num_a+=2*multiple_a;multiple_a/=10;}}
							price_a=ration_num_a;   //设置的单价
							disp_memu1_set();
						}
						if(menu1==9) set_time(2);
						if(menu1==10){ration_num_a+=2*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
						break;
					case 8:  //特殊菜单
						if(menu1==1) {if(decimal_a<4) decimal_a++;disp_memu1_important();}
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=2;disp_memu1_important();}
						break;
				}
				break;
			case 18:  //钮:3
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000){ ration_num_a*=10;ration_num_a+=3*multiple_a;}}
					  else {if(multiple_a!=0) {ration_num_a+=3*multiple_a;multiple_a/=10;}}
					  disp_vip_a();
				  		break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,3);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=3*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
						if(menu1==6) {printermode_a=1;disp_memu1_oil();}
						if(menu1==7) {pirnt_select_a=1;disp_memu1_oil();}
				  		break;
					case 3:
						if(menu1==1) {if(residue_a>0) residue_a--;disp_memu1_set();}
						if(menu1==2) {if(close_num_a>0) close_num_a--;disp_memu1_set();}
						if(menu1==3) {if(gunadd_a>1) gunadd_a--;disp_memu1_set();}
						if(menu1==4) {if(oil_types_a>0) oil_types_a--;disp_memu1_set();}
						if(menu1==5) {if(increment_a>1) increment_a--;disp_memu1_set();}
						if(menu1==6) {printermode_a=1;disp_memu1_set();}
						if(menu1==7) {pirnt_select_a=1;disp_memu1_set();}
						if(menu1==8)
						{
							if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=3*multiple_a;}}
						  	else {if(multiple_a!=0) {ration_num_a+=3*multiple_a;multiple_a/=10;}}
							price_a=ration_num_a;   //设置的单价
							disp_memu1_set();
						}
						if(menu1==9) set_time(3);
						if(menu1==10){ration_num_a+=3*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
						break;
					case 8:  //特殊菜单
						if(menu1==1) {if(decimal_a>0) decimal_a--;disp_memu1_important();}
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=3;disp_memu1_important();}
						break;
				}
				break;
			case 19:  //钮:0
				vipstart1();
				switch (state1)
				{ case 2:
					  if(!setdotok){if(ration_num_a<100000) ration_num_a*=10;}
					  else  {if(multiple_a!=0){multiple_a/=10;}}
					  disp_vip_a();
				  		break;
					case 4:
				  		if(menu1==1) disp_eeprom_history(0,0);  //查询前10次
						else if(menu1==2 || menu1==4){ration_num_a+=0*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_lock_a();}
				  		break;
					case 3:
				  	if(menu1==8)
					{
						if(!setdotok){if(ration_num_a<100000) {ration_num_a*=10;ration_num_a+=0*multiple_a;}}
					  	else {if(multiple_a!=0) {ration_num_a+=0*multiple_a;multiple_a/=10;}}
						price_a=ration_num_a;   //设置的单价
						disp_memu1_set();
					}
					if(menu1==9) set_time(0);
					if(menu1==10){ration_num_a+=0*multiple_a;if(multiple_a<10000)multiple_a*=10;disp_pass_vital(0);}
				  	break;
					case 8:
						if(menu1==2 ||menu1==3){ration_num_a*=10;ration_num_a+=0;disp_memu1_important();}
						break;
				}
				break;
			case 20:   //CLEAR
				if(state1==0x07) 
				{
					gun1.work_sale=0;gun1.work_liter=0;
					gun1.liter=0x00;   //123456
		  			gun1.sale=0x00;
					gun1.pulse=0x00;
					
					pt=&gun1;
					writebyteseq(0x01,pt,37);  //写EEPROM
					disp_total_a();
					accumulative_total_list_a();  //累计转换至列表a
					break;
				}
				if(state1==0x02) 
				{	setdotok=0;ration_num_a=0;
					if(!ration_mode_a)
					{	bbyte=dotmode[decimal_a];   //小数点
						if(a0) multiple_a=10;
						else if(a3)multiple_a=100;
						else multiple_a=1;
					}
					else
					{   //升
						bbyte=dotmode[decimal_a];   //小数点
						if(a4) multiple_a=100;
						else if(a1)multiple_a=1000;
						else multiple_a=1;
					}
					disp_vip_a();break;
				}
				else if(state1==4 && (menu1==2 ||menu1==4)) {multiple_a=1;ration_num_a=0;disp_memu1_oil();break;}
				if(state1==3 && (menu1==8 ||menu1==9)) {multiple_a=1;ration_num_a=0;disp_memu1_set();}
				if(state1==3  && menu1==8)
					{	bbyte=dotmode[decimal_a];
						if (a2)	multiple_a=1000;
						else if(a5) multiple_a=100;
						else 	multiple_a=1;
						ration_num_a=0;
						setdotok=0;
						price_a=ration_num_a;
						disp_memu1_set();
						break;
					}
				if(state1==3  && menu1==9)
				{
					temp_mema=0;
					disp_memu1_set();
					break;
				}
				if(state1==4  || state1==6)
				{
					if(!locknooil_b){state1=0;prn1time=1;disp_return_a();}
				}
				break;
			default:   
				break;
		}
	 
	}
}
/************************************************************
*        KEYB_SOLVE
*     功能:按键处理函数
*************************************************************/
void keyb_solve(void)
{	
   void  *pt;
	
	if(keyok_b && keyinput_b==0)
	{  //data uchar ucCurtime[7];   //日期--时间
      
		keyok_b=0;
		switch (keysolve_b)
		{	case 1:  //钮:TOTAL
				if(k2key)
				{
					if(state2==0){state2=06;ration_mode_b=1;menu2=2;disp_total_b();break;}
					if(state2==6){if(menu2==1)menu2=2;else menu2=1;disp_total_b();break;}
				}
				else
				{
					if(state2==0){state2=7;ration_mode_b=0;menu2=2;disp_total_b();break;}	
				}
				break;
			case 2:  //钮:MENU
				if(k2key && !locknooil_b)
				{	if(state2==0){temp_memb=1;state2=4;menu2=1;disp_memu2_oil();}
					else if(state2==4){menu2++;if(menu2>7)menu2=1;multiple_b=1;ration_num_b=0;disp_memu2_oil();}
					if(state2==4 && menu2==4){temp_memb=1;disp_lock_b();}
				}
				else  //设置
				{  ration_num_b=0;
					if(state2==0){state2=3;menu2=1;disp_memu2_set();}
					else if(state2==3){temp_memb=0;menu2++;if(menu2>10)menu2=1;if(state2==3  && menu2==10)multiple_b=1;disp_memu2_set();}
					else if(state2==8){menu2++;if(menu2>4)menu2=1;disp_memu2_important();}
					if(state2==3  && menu2==8)
					{	bbyte=dotmode[decimal_b];
						if (a2)	multiple_b=1000;
						else if(a5) multiple_b=100;
						else 	multiple_b=1;
						ration_num_b=0;
						setdotok_b=0;
					}
					
				}
				break;
			case 3:  //钮:ENTER
				//if(state2==2) {state2=0;break;}
				if(state2==4 && menu2==2) 
				{	if(pass_check(1))
					{	if(locknooil_b){state2=0;locknooil_b=0;prn2time=1;disp_return_b();}
						else {locknooil_b=1;multiple_b=1;ration_num_b=0;disp_lock_b();}
					}
					else if(!locknooil_b){state2=0;prn2time=1;disp_return_b();}
					else {locknooil_b=1;multiple_b=1;ration_num_b=0;disp_lock_b();}
					break;
				}
				if(state2==4 && menu2==4) 
				{	if(pass_check(1) || temp_memb==2)
					{	if(temp_memb==1){temp_memb=2;ration_num_b=0;multiple_b=1;ration_num_b=0;}  
						else if(temp_memb==2){temp_memb=3;ration_pulse_b=ration_num_b;multiple_b=1;ration_num_b=0;} //新密码暂存
						else if(temp_memb==3){temp_memb=4;}
						disp_lock_b();
					}
					else{state2=0;prn2time=1;disp_return_b();}
					break;
				}
				if(state2==3 && menu2==10)
				{	if(ration_num_b==5604 && multiple_b==10000)setpas_b=1;
					else  setpas_b=0;
					if((ration_num_b==4321 || ration_num_b==5604) && multiple_b==10000){state2=8;menu2=1;disp_memu2_important();}
				}
				if(state2==8 && menu2==2){gun2.sum_sale=ration_num_b;pt=&gun2.sum_sale;writebyteseq(62,pt,4);disp_memu2_important();accumulative_total_list_b();}
				if(state2==8 && menu2==3){gun2.sum_liter=ration_num_b;pt=&gun2.sum_liter;writebyteseq(58,pt,4);disp_memu2_important();accumulative_total_list_b();}
				if(state2==8 && menu2==4) 	eeprom_ipl();  //EEPROM初始化程序
				break;
			case 4:  //钮:EXIT
				switch(state2)
				{	case 2:
						if(state2==2) {state2=0;ration_num_b=0;clr_exitdata_b();disp_key_clear_b();}   // 
						break;
					case 0:
						//if(state2==0) {clr_exitdata_b();} //取消授权
						//else {state2=0;prn2time=1;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -