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

📄 eventpass.c

📁 T108 LCD屏的DEMO源代码!需要的就下吧
💻 C
字号:
#include "Common.h"
#include "Global.h"
#include "ICControl.h"	
#include "System.h"
#include "TWICreg.h"
#include "EventPass.h"
#include "Keypad.h"
#include "UIDraw.h"		   
#include "VideoSourceSwitch.h"	
#include "osd2csl.h"			
uCHAR code EventTable[MENU_STATE_COUNT/*State*/][MENU_TOKEN_COUNT/*Token*/]=
{
{MENU_Stage_MENU1_COLOR,MENU_Stage_Calculate, MENU_Stage_QUIT},
{MENU_Stage_Calculate,MENU_Stage_MENU1_COLOR,MENU_Stage_QUIT}
};
uCHAR Menu_ColorAdj()
{
	uCHAR Item=0;
	if(m_cCurreKey==REMOTE_KEY_MENU)
	{
		Show_Menu1_ColorAdj(Item);
		m_cCurreKey=0;
	}
#ifdef T108
		PoolingINT();
#endif
	
	switch(m_cCurreKey)
	{
		case REMOTE_KEY_CH_INC:	
			if(Item==0) 
				Item=MENU1_ITEM_NUM;
			else
				Item--;
		//	Show_Menu1_ColorAdj(Item);
		break;
		case REMOTE_KEY_CH_DEC :
			if(Item==MENU1_ITEM_NUM) 
				Item=0;
			else
				Item++;	
		//	Show_Menu1_ColorAdj(Item);	
		break;
		case REMOTE_KEY_LEFT:
		//	if(Item==0) 
		//		return MENU_Token_LEFT;	
		//	else
		//		Show_Menu1_ItemAdjNum(Item);
		break;
		case REMOTE_KEY_RIGHT:
		//	if(Item==0) 
		//		return MENU_Token_RIGHT;
		//	else
		//		Show_Menu1_ItemAdjNum(Item);		
		break;
		case REMOTE_KEY_RETURN:
			return 	MENU_Token_EXIT;
		break;
		case REMOTE_KEY_MENU:
				return 	MENU_Token_MENU;
		break;	 		
	} 
	m_cCurreKey=0;
	return 	MENU_Token_ORG;
}
/*
uCHAR Menu_VGAAdj()
{
	return 0;
}	   	*/
unsigned long Ca, Cb, Cc;
char proc;
uCHAR CalculaterProc()
{
	if(m_cCurreKey==REMOTE_KEY_MENU) 
	{
		Show_Calculate();
		m_cCurreKey=0;
	}
#ifdef T108
		PoolingINT();
#endif
	
	switch(m_cCurreKey)
	{					  
		case REMOTE_KEY_NUM0:	
			if(proc==0)
			{
				Ca = Ca*10;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10;
				Show_CalculateNum(Cb);
			}
		break;	  
		case REMOTE_KEY_NUM1:
			if(proc==0)
			{
				Ca = Ca*10+1;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+1;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_NUM2:
			if(proc==0)
			{
				Ca = Ca*10+2;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+2;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_NUM3:
			if(proc==0)
			{
				Ca = Ca*10+3;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+3;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_NUM4:
			if(proc==0)
			{
				Ca = Ca*10+4;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+4;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_NUM5:
			if(proc==0)
			{
				Ca = Ca*10+5;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+5;
				Show_CalculateNum(Cb);
			}
		break;
	    case REMOTE_KEY_NUM6:
			if(proc==0)
			{
				Ca = Ca*10+6;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+6;
				Show_CalculateNum(Cb);
			}
		break;		
		case REMOTE_KEY_NUM7:
			if(proc==0)
			{
				Ca = Ca*10+7;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+7;
				Show_CalculateNum(Cb);
			}
			break;
		case REMOTE_KEY_NUM8:
			if(proc==0)
			{
				Ca = Ca*10+8;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+8;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_NUM9:
			if(proc==0)
			{
				Ca = Ca*10+9;
				Show_CalculateNum(Ca);
			}
			else
			{
				Cb = Cb*10+9;
				Show_CalculateNum(Cb);
			}
		break;
		case REMOTE_KEY_CH_INC:	  // divid /		
			proc=4;
		break;
		case REMOTE_KEY_CH_DEC:	  // mul *	   	
			proc=3;
		break;
		case REMOTE_KEY_VO_INC:	  // sub -	   		
			proc=2;
		break;
		case REMOTE_KEY_VO_DEC:	  // add +
			proc=1;
		break;		  		
		case REMOTE_KEY_MUTE:	  // ans =
			if(proc==1)
			{
				Cc= Ca+Cb;
			}
			else if(proc==2)
			{
				Cc=Ca-Cb;
			}
			else if(proc==3)
			{
				Cc=Ca*Cb;
			}
			else if(proc==4)
			{
				Cc=Ca/Cb;
			}
			Show_CalculateNum(Cc);
			Ca=Cb=Cc=proc=0;
		break;		  		
		case REMOTE_KEY_RIGHT:	  // Clear
			Ca=Cb=Cc=proc=0;
			Show_CalculateNum(Cc);
		break;	
		case REMOTE_KEY_RETURN:
			
			return 	MENU_Token_EXIT;
		break;		
		case REMOTE_KEY_MENU:	   			
				return MENU_Token_MENU;					
		break;		 		
	} 
	CalculaterDraw();
	m_cCurreKey=0;
	return MENU_Token_ORG;
}


void MenuTransform()
{
	uCHAR	iStateNow = MENU_Stage_MENU1_COLOR;
	uCHAR	iTokenNow = MENU_Token_MENU;
	do
	{

		switch(iStateNow)
		{
			case MENU_Stage_MENU1_COLOR	:	
				iTokenNow = Menu_ColorAdj();
			break;
			case MENU_Stage_Calculate:
				iTokenNow = CalculaterProc();
			break;  
			case MENU_Stage_QUIT:
				goto QUITMENU;
			break; 			

		}// End switch case.
		iStateNow = EventTable[iStateNow][iTokenNow];	// Change state.
	}while(iStateNow != MENU_Stage_QUIT);

QUITMENU:
	OSD2Disable();
	OpenPanel();

} 
void SourceSwitch()
{
	if((EepPublic.cSource+1)<SOUCENUM)
		EepPublic.cSource++;
	else
		EepPublic.cSource=0;
	SourceSelect();
	Show_Source();
}
void EventPass()
{
	
	switch(m_cCurreKey)
	{
		case REMOTE_KEY_LEFT:

		break;
		case REMOTE_KEY_RIGHT:
		
		break;
		case REMOTE_KEY_MENU:
			MenuTransform();
			//Show_Source();
		break;
		case REMOTE_KEY_SOURCE:	  
			SourceSwitch();
		break;			 
	
	} 
	m_cCurreKey=0;
}
  

⌨️ 快捷键说明

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