ps2.c

来自「采用STC89C51RC单片机」· C语言 代码 · 共 81 行

C
81
字号
#include <config.h>

#include <serial.h>

extern uint8 Key_Char;

extern uint16 Key_Value;

extern bit Key_Flag;

extern uint8	Cc;
extern uint8	PreKey_Char;

extern bit	PreKey_Flag;



/*******************************************************************************************************
** Function name: Get_KeyChar
** Descriptions:  将编码转换为按键 Key_Char            
********************************************************************************************************/
void Get_KeyChar(void)
{
   	uint8 Char;	
	Char = (uint8)(Key_Value); 
		
	Key_Char = 0;

	switch(Char)
	{
		case  	0xE0:	break; 

		case  	0xF0:	Key_Flag = 0; Key_Char = 0xF0;	break;

		case  	0x70:  	Key_Char = '0'; 	break;
		case  	0x69:  	Key_Char = '1'; 	break;
		case  	0x72:  	Key_Char = '2';		break;
		case  	0x7a:  	Key_Char = '3';		break;
		case  	0x6B:  	Key_Char = '4'; 	break;
		case  	0x73:  	Key_Char = '5'; 	break;
		case  	0x74:  	Key_Char = '6'; 	break;
		case  	0x6c:  	Key_Char = '7'; 	break;
		case  	0x75:  	Key_Char = '8'; 	break;
		case  	0x7d:  	Key_Char = '9'; 	break;
		case  	0x79:  	Key_Char = '+'; 	break;
		case  	0x7b:  	Key_Char = '-';		break;
		case  	0x7c:  	Key_Char = '*'; 	break;
		case  	0x4a:  	Key_Char = '/'; 	break;
		case  	0x71:  	Key_Char = '.';		break;
		case  	0x66:  	Key_Char = 'b'; 	break;
		case  	0x77:  	Key_Char = 'n'; 	break;
		case  	0x5a:  	Key_Char = 'e'; 	break;
			
    	default :	 break;	 

	}

}

/*******************************************************************************************************
** Function name: Ps2_SendKey
** Descriptions:  将转换后的键值发给串口           
********************************************************************************************************/
void Ps2_SendKey(void)
{
	if(Cc>0) 		
	{
		if((Key_Char!=0)&&(Key_Char!=0xF0)&&(PreKey_Char!=0xF0))							//add  				
		{ 	
			UART_SendChar(Key_Char);
			Key_Char = 0;
			PreKey_Char = 0; 			
		}		 
		if((Key_Flag == 0)&&(PreKey_Flag == 1))
		{
			UART_SendChar('x');	
		}

		Cc--;
	}
}

⌨️ 快捷键说明

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