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

📄 keyproc.c

📁 15寸
💻 C
字号:
#include <at89x51.h>
#include <string.h>
#include "lcd.h"
#include "keyproc.h"
#include "command.h"

unsigned char s[16];
unsigned char *submenu[]={"voice","channel","bright","contrast","red","green","blue"};
unsigned char position_num = 0;
unsigned char *first,*second;

extern bit onoffFlag;
extern bit receiveFlag;

extern unsigned char command,recommand;
extern unsigned char address;
extern unsigned char menusub;


extern void serial(void);
extern void num2string(unsigned char number);

void sendAddress_key(void)
{
//	if(onoffFlag)	
//	{
		position_num = 0;
		lcd_cls();
		lcd_string16(0,"wait...");
		
		command = address;
		SCON = 0x0e8;
		serial();

//		lcd_cls();
		if(receiveFlag)
		{
			if(recommand == command)
			{	
				onoffFlag = ~onoffFlag;
				if(onoffFlag)
				{				
					lcd_string16(0,"please insert CMD:");
					return;
				}
				else
				{				
					lcd_string16(0,"please insert ID");
					return;
				}
			}
			lcd_string16(0,"error");
			return;
		}
		lcd_string16(0,"ID is not exist!");

//		return;
//	}	
}

void power_key(void)
{
	if(onoffFlag)
	{
		lcd_cls();
		lcd_string16(0,"wait...");
		command = power;
		SCON = 0x0e0;
		serial();
		lcd_cls();
		if(receiveFlag)
		{
			if(recommand == command)
			{
				lcd_string16(0,"OK");
				return;
			}
		}
		lcd_string16(0,"error");
	}
}

void menu_key(void)
{
	if(onoffFlag)	
	{
		lcd_cls();
		lcd_string16(0,"wait...");
		command = menu;
		SCON = 0x0e0;
		serial();
		lcd_cls();
		if(receiveFlag)
		{
			if(recommand == command)
			{
				lcd_string16(0,"OK");
				return;
			}
		}
		lcd_string16(0,"error");
	}
}

void up_key()
{
	if(onoffFlag)	
	{
		if(1)	
		{
//			lcd_cls();
//			lcd_string16(0,"wait...");
			command = up;
			SCON = 0x0e0;
			serial();			
			if(receiveFlag)
			{
				if(recommand == command)
				{
					lcd_string16(0,"+");
					return;
				}				
			}
		}
	}
}

void down_key()
{
	if(onoffFlag)	
	{
		if(1)	
		{
			command = down;
			SCON = 0x0e0;
			serial();			
			if(receiveFlag)
			{
				if(recommand == command)
				{
					lcd_string16(0,"-");
					return;
				}
			}
		}
	}
}

void enter_key(void)
{
	if(onoffFlag)
	{
		if(1)
		{
			command = enter;
			SCON = 0x0e0;
			serial();
			if(receiveFlag)
			{
				
			}
		}
	}
}

void del_key(void)
{
	if(~onoffFlag)
	{
		first = " ";				   
		second = " ";				   
		address = 0;
		lcd_cls();
	}
}

void number_key(unsigned char number,unsigned char *char_number)
{
	if(~onoffFlag)
	{   
		lcd_string16(13,first);
		lcd_string16(14,second);
		lcd_string16(15,char_number);		

		first = second;
		second = char_number;

		position_num++;
		if(position_num>3)
		{
			position_num=0;
			address = 0;
		}
		else
		{
			unsigned char size = 10;
//			for(i = 0; i<(position_num-1) ; i ++)
//			{
//				size = size * 10;
//			}
	//		size = size / 10;
			address=address*size+number;
		}		
	}
}

⌨️ 快捷键说明

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