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

📄 point_menu.c

📁 自己写的小程序
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "lcd.h"
#include "Fs7805.h"
#include "Fs7805Regs.h"
#include "table.h"

/************主菜单******************/
void menu (void)
{
     unsigned char i=0;
     clear_GLCD();
	 gotoxy(0,0);
	 display_GLCD_string(menu_1,8);
	 //delay1ms(1);
	 gotoxy(0,2);
	 display_GLCD_string(menu_2,8);
	 //delay1ms(1);
	 gotoxy(0,4);
     display_GLCD_string(menu_3,8);
	 //delay1ms(1);
     gotoxy(0,6);
     display_GLCD_string(teacher,8);
     delay10ms(500);
	 clear_GLCD();
	 //display_photo(photo);
	 //delay10ms(150);
	 
}
/*************主菜单结束************************/

/*************进入输入电压周期菜单*******************/
 //正玹波参数输入**************************************
 void display_partition_beijing(void)
 {
  char line0=0;
  clear_GLCD();
  gotoxy(0,0);
  display_GLCD_string(beijing,8);
  gotoxy(0,2);
  display_GLCD_string(xianshi,8);
  gotoxy(48,4);
  display_GLCD_data(nian);
  gotoxy(80,4);
  display_GLCD_data(yue);
  gotoxy(112,4);
  display_GLCD_data(ri);
  gotoxy(48,6);
  display_GLCD_data(maohao);
  gotoxy(88,6);
  display_GLCD_data(maohao);
  delay100us(1);

  while(line0<=3)
    {	
	    char key=0x00;
        char key1=0x00;
        P0=0xF0;
		if(P0!=0xF0)
		{ key=P0; }
		delay10ms(1);

		P0=0x0F;
		if(P0!=0x0F)
		{ key1=P0;}
		delay10ms(1);
			
		key=key|key1;
		delay10ms(1);


		switch(key)
		{
			case 0xEE:			//0 					
			P1=0xC0;
			gotoxy(16+line0*8,4);
			display_number(c0);
			delay10ms(50);
			line0++;			  
			break;

			case 0xED:	    	//1
			P1=0xF9;
			gotoxy(16+line0*8,4);
			display_number(c1);
			delay10ms(50);
			line0++;	
			break;

			case 0xEB:		    //2
			P1=0xA4;
			gotoxy(16+line0*8,4);
			display_number(c2);
			delay10ms(50);
			line0++;	
			break;

			case 0xE7:	        //3
			P1=0xB0;
			gotoxy(16+line0*8,4);
			display_number(c3);
			delay10ms(50);
			line0++;	
			break;

			case 0xDE:			//4
			P1=0x99;
			gotoxy(16+line0*8,4);
			display_number(c4);
			delay10ms(50);
			line0++;	
			break;
  	
			case 0xDD:			//5
			P1=0x92;
			gotoxy(16+line0*8,4);
			display_number(c5);
			delay10ms(50);
			line0++;	
			break;

			case 0xDB:			//6
			P1=0x82;
			gotoxy(16+line0*8,4);
			display_number(c6);
			delay10ms(50);
			line0++;	
			break;

			case 0xD7:			//7
			P1=0xF8;
			gotoxy(16+line0*8,4);
			display_number(c7);
			delay10ms(50);
			line0++;	
			break;

			case 0xBE:			//8
			P1=0x80;
			gotoxy(16+line0*8,4);
			display_number(c8);
			delay10ms(50);
			line0++;	
			break;

			case 0xBD:			//9
			P1=0x90;
			gotoxy(16+line0*8,4);
			display_number(c9);
			delay10ms(50);
			line0++;	
			break;

			case 0xBB:			//A
			P1=0x88;
			break;
							
			case 0xB7:			//b
			P1=0x83;
			break;

			case 0x7E:			//C
			P1=0xc6;
			display_shuruyue();  //输入月
			break;

			case 0x7D:			//d
			P1=0xa1;
			clear_GLCD();
			display_partition_beijing(); //返回
			break;

			case 0x7B:			//E
			P1=0x86;
			break;

			case 0x77:			//F
			P1=0x8e;
			break;
  	
			default:
			break;
	       }
		
	     }
		 display_shuruyue();
	}
 //矩形波参数输入**************************************
 void display_partition_niuyue(void)
 {
  char KEY;
  char line=0;
  clear_GLCD();
  gotoxy(0,0);
  display_GLCD_string(niuyue,8);
  gotoxy(0,2);
  display_GLCD_string(xianshi,8);
  gotoxy(48,4);
  display_GLCD_data(nian);
  gotoxy(80,4);
  display_GLCD_data(yue);
  gotoxy(112,4);
  display_GLCD_data(ri);
  gotoxy(48,6);
  display_GLCD_data(maohao);
  gotoxy(88,6);
  display_GLCD_data(maohao);
    delay100us(1);

  while(line<=3)
    {	  
	    
	    char key=0x00;
        char key1=0x00;
        char number=0;
        P0=0xF0;
		if(P0!=0xF0)
		{ key=P0; }
		delay10ms(1);

		P0=0x0F;
		if(P0!=0x0F)
		{ key1=P0;}
		delay10ms(1);
			
		key=key|key1;
		KEY=key;
		delay10ms(1);


		switch(key)
		{
			case 0xEE:			//0 					
			P1=0xC0;
			gotoxy(16+line*8,4);
			display_number(c0);
			delay10ms(50);
			line++;			  
			break;

			case 0xED:	    	//1
			P1=0xF9;
			gotoxy(16+line*8,4);
			display_number(c1);
			delay10ms(50);
			line++;	
			break;

			case 0xEB:		    //2
			P1=0xA4;
			gotoxy(16+line*8,4);
			display_number(c2);
			delay10ms(50);
			line++;	
			break;

			case 0xE7:	        //3
			P1=0xB0;
			gotoxy(16+line*8,4);
			display_number(c3);
			delay10ms(50);
			line++;	
			break;

			case 0xDE:			//4
			P1=0x99;
			gotoxy(16+line*8,4);
			display_number(c4);
			delay10ms(50);
			line++;	
			break;
  	
			case 0xDD:			//5
			P1=0x92;
			gotoxy(16+line*8,4);
			display_number(c5);
			delay10ms(50);
			line++;	
			break;

			case 0xDB:			//6
			P1=0x82;
			gotoxy(16+line*8,4);
			display_number(c6);
			delay10ms(50);
			line++;	
			break;

			case 0xD7:			//7
			P1=0xF8;
			gotoxy(16+line*8,4);
			display_number(c7);
			delay10ms(50);
			line++;	
			break;

			case 0xBE:			//8
			P1=0x80;
			gotoxy(16+line*8,4);
			display_number(c8);
			delay10ms(50);
			line++;	
			break;

			case 0xBD:			//9
			P1=0x90;
			gotoxy(16+line*8,4);
			display_number(c9);
			delay10ms(50);
			line++;	
			break;

			case 0xBB:			//A
			P1=0x88;
			break;
							
			case 0xB7:			//b
			P1=0x83;
			break;

			case 0x7E:			//C
			P1=0xc6;
			display_shuruyue();
			break;

			case 0x7D:			//d
			P1=0xa1;
			clear_GLCD();
			display_partition_niuyue();	//返回
			break;

			case 0x7B:			//E
			P1=0x86;
			break;

			case 0x77:			//F
			P1=0x8e;
			break;
  	
			default:
			break;
		}
		
	  }
	  display_shuruyue();
  }
    //三角波参数输入**************************************
  void display_partition_lundun(void)
 {
  char line=0;
  clear_GLCD();
  gotoxy(0,0);
  display_GLCD_string(lundun,8);
  gotoxy(0,2);
  display_GLCD_string(xianshi,8);
  gotoxy(48,4);
  display_GLCD_data(nian);
  gotoxy(80,4);
  display_GLCD_data(yue);
  gotoxy(112,4);
  display_GLCD_data(ri);
  gotoxy(48,6);
  display_GLCD_data(maohao);
  gotoxy(88,6);
  display_GLCD_data(maohao);
    delay100us(1);

  while(line<=3)
    {	  
	    
	    char key=0x00;
        char key1=0x00;
        char number=0;
        P0=0xF0;
		if(P0!=0xF0)
		{ key=P0; }
		delay10ms(1);

		P0=0x0F;
		if(P0!=0x0F)
		{ key1=P0;}
		delay10ms(1);
			
		key=key|key1;
		delay10ms(1);


		switch(key)
		{
			case 0xEE:			//0 					
			P1=0xC0;
			gotoxy(16+line*8,4);
			display_number(c0);
			delay10ms(50);
			line++;			  
			break;

			case 0xED:	    	//1
			P1=0xF9;
			gotoxy(16+line*8,4);
			display_number(c1);
			delay10ms(50);
			line++;	
			break;

			case 0xEB:		    //2
			P1=0xA4;
			gotoxy(16+line*8,4);
			display_number(c2);
			delay10ms(50);
			line++;	
			break;

			case 0xE7:	        //3
			P1=0xB0;
			gotoxy(16+line*8,4);
			display_number(c3);
			delay10ms(50);
			line++;	
			break;

			case 0xDE:			//4
			P1=0x99;
			gotoxy(16+line*8,4);
			display_number(c4);
			delay10ms(50);
			line++;	
			break;
  	
			case 0xDD:			//5
			P1=0x92;
			gotoxy(16+line*8,4);
			display_number(c5);
			delay10ms(50);
			line++;	
			break;

			case 0xDB:			//6
			P1=0x82;
			gotoxy(16+line*8,4);
			display_number(c6);
			delay10ms(50);
			line++;	
			break;

			case 0xD7:			//7
			P1=0xF8;
			gotoxy(16+line*8,4);
			display_number(c7);
			delay10ms(50);
			line++;	
			break;

			case 0xBE:			//8
			P1=0x80;
			gotoxy(16+line*8,4);
			display_number(c8);
			delay10ms(50);
			line++;	
			break;

			case 0xBD:			//9
			P1=0x90;
			gotoxy(16+line*8,4);
			display_number(c9);
			delay10ms(50);
			line++;	
			break;

			case 0xBB:			//A
			P1=0x88;
			break;
							
			case 0xB7:			//b
			P1=0x83;
			break;

			case 0x7E:			//C
			P1=0xc6;
			display_shuruyue();
			break;

			case 0x7D:			//d
			P1=0xa1;
			clear_GLCD();
			display_partition_lundun();   //返回
			break;

			case 0x7B:			//E
			P1=0x86;
			break;

			case 0x77:			//F
			P1=0x8e;
			break;
  	
			default:
			break;
		}
		
	  }
	display_shuruyue();
	
  }

  //锯齿波参数输入**************************************
  void display_partition_dongjing(void)
 {
  char line=0;
  clear_GLCD();
  gotoxy(0,0);
  display_GLCD_string(dongjing,8);
  gotoxy(0,2);
  display_GLCD_string(xianshi,8);
  gotoxy(48,4);
  display_GLCD_data(nian);
  gotoxy(80,4);
  display_GLCD_data(yue);
  gotoxy(112,4);
  display_GLCD_data(ri);
  gotoxy(48,6);
  display_GLCD_data(maohao);
  gotoxy(88,6);
  display_GLCD_data(maohao);
  delay100us(1);

  while(line<=3)
    {	  
	    
	    char key=0x00;
        char key1=0x00;
        char number=0;
        P0=0xF0;
		if(P0!=0xF0)
		{ key=P0; }
		delay10ms(1);

		P0=0x0F;
		if(P0!=0x0F)
		{ key1=P0;}
		delay10ms(1);
			
		key=key|key1;
		delay10ms(1);
		switch(key)
		{
			case 0xEE:			//0 					
			P1=0xC0;
			gotoxy(16+line*8,4);
			display_number(c0);
			delay10ms(50);
			line++;			  
			break;

			case 0xED:	    	//1
			P1=0xF9;
			gotoxy(16+line*8,4);
			display_number(c1);
			delay10ms(50);
			line++;	
			break;

			case 0xEB:		    //2
			P1=0xA4;
			gotoxy(16+line*8,4);
			display_number(c2);
			delay10ms(50);
			delay1ms(1);
			line++;	
			break;

			case 0xE7:	        //3
			P1=0xB0;
			gotoxy(16+line*8,4);
			display_number(c3);
			delay10ms(50);
			line++;	
			break;

			case 0xDE:			//4
			P1=0x99;
			gotoxy(16+line*8,4);
			display_number(c4);
			delay10ms(50);
			line++;	
			break;
  	
			case 0xDD:			//5
			P1=0x92;
			gotoxy(16+line*8,4);
			display_number(c5);
			delay10ms(50);
			line++;	
			break;

			case 0xDB:			//6
			P1=0x82;
			gotoxy(16+line*8,4);
			display_number(c6);
			delay10ms(50);
			line++;	
			break;

			case 0xD7:			//7
			P1=0xF8;
			gotoxy(16+line*8,4);
			display_number(c7);
			delay10ms(50);
			line++;	
			break;

			case 0xBE:			//8
			P1=0x80;
			gotoxy(16+line*8,4);
			display_number(c8);
			delay10ms(50);
			line++;	
			break;

			case 0xBD:			//9
			P1=0x90;
			gotoxy(16+line*8,4);
			display_number(c9);
			delay10ms(50);
			line++;	
			break;

			case 0xBB:			//A
			P1=0x88;
			break;
							
			case 0xB7:			//b
			P1=0x83;
			break;

			case 0x7E:			//C
			P1=0xc6;
			display_shuruyue();
			break;

			case 0x7D:			//d
			P1=0xa1;
			clear_GLCD();
			display_partition_dongjing();	   //返回
			break;

			case 0x7B:			//E
			P1=0x86;
			break;

			case 0x77:			//F
			P1=0x8e;
			break;
  	
			default:
			break;
		}
		
	  }
   display_shuruyue();
}
/****************输入电压周期结束********************/

void display_shuruyue()
{
  char line1=0;
  while(line1<=1)
     {
	    char key=0x00;
        char key1=0x00;
        P0=0xF0;
		if(P0!=0xF0)
		{ key=P0; }
		delay10ms(1);

		P0=0x0F;
		if(P0!=0x0F)

⌨️ 快捷键说明

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