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

📄 handler_dma.c

📁 日本IRON os 在汽车电子中的应用 高度机密
💻 C
📖 第 1 页 / 共 2 页
字号:
                          KEY_NEMBER=0x4D;

                        else if((X_Pos>125)&&(X_Pos<384)&&(Y_Pos>181)&&(Y_Pos<205))
                          KEY_NEMBER=0x4E;

                       
			 
			 
			
                   
			 

			
			  
                     

		       }

          else if(unMXR_score ==6)//TV
	  	{ 
                   if((X_Pos>410)&&(X_Pos<450)&&(Y_Pos>37)&&(Y_Pos<108))
                     KEY_NEMBER=0x44;
                else   if((X_Pos>391)&&(X_Pos<410)&&(Y_Pos>37)&&(Y_Pos<108))
                     KEY_NEMBER=0x43;

	         else   if((X_Pos>367)&&(X_Pos<391)&&(Y_Pos>41)&&(Y_Pos<108))
                     KEY_NEMBER=0x42;

                else if((X_Pos>298)&&(X_Pos<367)&&(Y_Pos>50)&&(Y_Pos<125))
                     KEY_NEMBER=0x41;

		  else if((X_Pos>20)&&(X_Pos<58)&&(Y_Pos>37)&&(Y_Pos<108))
                     KEY_NEMBER=0x48;
                else   if((X_Pos>58)&&(X_Pos<67)&&(Y_Pos>37)&&(Y_Pos<108))
                     KEY_NEMBER=0x47;

	         else   if((X_Pos>67)&&(X_Pos<91)&&(Y_Pos>40)&&(Y_Pos<108))
                     KEY_NEMBER=0x46;

                else if((X_Pos>95)&&(X_Pos<174)&&(Y_Pos>50)&&(Y_Pos<125))
                     KEY_NEMBER=0x45;
				
                   else if((X_Pos>172)&&(X_Pos<279)&&(Y_Pos>52)&&(Y_Pos<124))
                     KEY_NEMBER=0x62;


		


		else if((X_Pos>380)&&(X_Pos<460)&&(Y_Pos>17)&&(Y_Pos<30))
                         KEY_NEMBER=0x5d;
              }

	else if(unMXR_score ==5)
	  	{ 
             if((X_Pos>30)&&(X_Pos<363)&&(Y_Pos>50)&&(Y_Pos<170))
                         KEY_NEMBER=0x55;
              else if((X_Pos>326)&&(X_Pos<373)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x42;
		else if((X_Pos>271)&&(X_Pos<318)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x43;
		else if((X_Pos>221)&&(X_Pos<264)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x44;
		else if((X_Pos>164)&&(X_Pos<211)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x45;
		else if((X_Pos>116)&&(X_Pos<159)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x46;
		else if((X_Pos>63)&&(X_Pos<106)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x47;
		else if((X_Pos>18)&&(X_Pos<59)&&(Y_Pos>180)&&(Y_Pos<230))
                         KEY_NEMBER=0x48;

		else if((X_Pos>380)&&(X_Pos<460)&&(Y_Pos>17)&&(Y_Pos<57))
                         KEY_NEMBER=0x5d;
              }

	
	  else if(unMXR_score ==7)//dvd and camer  
	  	{ 
                 if(unMXR_track==1)
		{
               if((X_Pos>331)&&(X_Pos<460)&&(Y_Pos>69)&&(Y_Pos<100))
                         KEY_NEMBER=0x55;
	       else if((X_Pos>331)&&(X_Pos<460)&&(Y_Pos>117)&&(Y_Pos<144))
                         KEY_NEMBER=0x56;
		 else if((X_Pos>331)&&(X_Pos<460)&&(Y_Pos>152)&&(Y_Pos<190))
                         KEY_NEMBER=0x57;
		else if((X_Pos>18)&&(X_Pos<95)&&(Y_Pos>182)&&(Y_Pos<212))
                         KEY_NEMBER=0x5d;
                 }

           else if(unMXR_track==4)
		{
               if((X_Pos>369)&&(X_Pos<446)&&(Y_Pos>171)&&(Y_Pos<211))
                         KEY_NEMBER=0x5B;
	       else if((X_Pos>18)&&(X_Pos<86)&&(Y_Pos>168)&&(Y_Pos<216))
                         KEY_NEMBER=0x5C;
		   
		 else
                         KEY_NEMBER=0x5A;
		
                 }

		else if(unMXR_track==2)
		{
               if((X_Pos>187)&&(X_Pos<249)&&(Y_Pos>184)&&(Y_Pos<214))
                         KEY_NEMBER=0x5C;
	       else 
                         KEY_NEMBER=0x5A;
		
                 }
		
		else if(unMXR_track==3)
		{
               if((X_Pos>196)&&(X_Pos<268)&&(Y_Pos>181)&&(Y_Pos<210))
                         KEY_NEMBER=0x5C;
	       else if((X_Pos>240)&&(X_Pos<480)&&(Y_Pos>0)&&(Y_Pos<180))
                         KEY_NEMBER=0x58;
		 else if((X_Pos>10)&&(X_Pos<240)&&(Y_Pos>0)&&(Y_Pos<180))
                         KEY_NEMBER=0x59;
	
                 }


		

	       }

	  
	  else if(unMXR_score ==8)
			{
			;
	               }
		return KEY_NEMBER;
	 }
	
	 
}
#endif	
/************************************/
/*     僌儖乕僾妱傝崬傒僥乕僽儖     */
/************************************/
void (* const v_ITR_VectorTbl[MAX_GROUP_NUM])(void) = {
	v_ITR_GrpReserve,			/* Group0  *//* 僲儞儅僗僇僽儖		*/
	v_ITR_GrpReserve,			/* Group1  *//* 僔僗僥儉儕僓乕僽 	*/
	v_ITR_GrpReserve,			/* Group2  */
	v_ITR_GrpReserve,			/* Group3  */
	v_ITR_GrpReserve,			/* Group4  */
	v_ITR_GrpReserve,			/* Group5  */
	v_ITR_GrpReserve,			/* Group6  */
	v_ITR_GrpReserve,			/* Group7  */
	v_ITR_GrpReserve,			/* Group8  */
	v_ITR_GrpReserve,			/* Group9  */
	v_ITR_GrpReserve,			/* Group10 */
#if 1	/*	@018s6[08/03/09]	*/
#if (SETTING_TOOL_MODE==SETTING_TOOL_ON)
	v_ITR_Grp11Irq,			/* Group11 */
	v_ITR_Grp12Irq,				/* Group12 */
	v_ITR_GrpReserve,			/* Group13  */
	v_ITR_GrpReserve,			/* Group14 */
#elif (SETTING_TOOL_MODE==SETTING_TOOL_OFF)
	v_ITR_GrpReserve,			/* Group11 */
	v_ITR_GrpReserve,			/* Group12 */
	v_ITR_Grp13Irq,				/* Group13 */
	v_ITR_Grp14Irq,				/* Group14 */
#else
ERROR!!
#endif	/*	(SETTING_TOOL_MODE)	*/
#endif	/*	@018s6[08/03/09]	*/
	v_ITR_GrpReserve,			/* Group15 */
	v_ITR_GrpReserve,			/* Group16 */
	v_ITR_GrpReserve,			/* Group17 */
	v_ITR_GrpReserve,			/* Group18 */
	v_ITR_GrpReserve,			/* Group19 */
	v_ITR_GrpReserve,			/* Group20 */
	v_ITR_GrpReserve,			/* Group21 */
	#if (T0UCHPANEL_THOOSE==THOOSE)
       v_ITR_GrpP02,    
      #else
	v_ITR_GrpReserve,/* Group22 */
	#endif
	v_ITR_GrpReserve,			/* Group23 */
	v_ITR_GrpReserve,			/* Group24 */
	v_ITR_GrpReserve,			/* Group25 */
	v_ITR_GrpReserve,			/* Group26 */
       v_ITR_GrpReserve,			/* Group27 */
	v_ITR_GrpReserve,			/* Group28 */
	v_ITR_GrpReserve,			/* Group29 */
	v_ITR_GrpReserve			/* Group30 */
};

#if (T0UCHPANEL_THOOSE==THOOSE)
void v_ITR_GrpP02(void){

	UCHAR	i;
	ER		ercd;
      USHORT firstkey,secandkey;

		ui8_t	dummy;

	if ( bCPU_IRQ2ID ){				/* 専弌僼儔僌愝掕?			*/
		if ( bCPU_IRQ2IR ){			/* 僔儕傾儖庴怣妱崬傒梫媮	*/
			bCPU_IRQ2IR = 0;		/* 梫媮僼儔僌儕僙僢僩		*/
			dummy = bCPU_IRQ2IR;

                  begin_critical();
			
                   bCPU_IRQ2IE  =0 ;
              
                 DelayLongTIME(325);
			TSC_Reaed();
                   firstkey=GetKey();
				 // bCPU_P03GPDO=1;
		     DelayLongTIME(100);
				 //bCPU_P03GPDO=0;
		        TSC_Reaed();
			secandkey=GetKey();
			 //DelayLongTIME(3000);
			// CONTER++;
                   if (firstkey==secandkey)//&&(CONTER<2))
		//if 
		{
                     KEY_NEMBER=0;
		rcv_cmd.cmd_mbx[1] = secandkey;
		ercd = isnd_mbx( MBX1,(T_MSG *)&rcv_cmd );
               }       
		
                   
                      
                     bCPU_IRQ2IE  =1 ;
					 bCPU_IRQ2IR =0 ;
			 end_critical();
//ercd = isnd_mbx( MBX1,(T_MSG *)&rcv_cmd );	/* 儊僢僙乕僕憲怣			*/
	
//end_critical();
   }
 }
}

#endif
/************************************************************************/
/*!
  @fn			LONG inh_dma_handler(void)
  @brief		妱崬傒僴儞僪儔乮儗儀儖2乯
  @attention	懡廳妱傝崬傒偼嬛巭偝傟偨忬懺偱屇偽傟傞
  @return		側偟
  @date			2007/xx/xx
*/
/************************************************************************/
LONG inh_dma_handler(void)
{
	ui16_t	group;

	group = (ui16_CPU_IAGR >> 2);	/* 妱崬傒僌儖乕僾庢摼	*/
	if(group <= MAX_GROUP_NUM){		/* 妱崬傒張棟傊僽儔儞僠	*/
		v_ITR_VectorTbl[group]();	
	}								
	return ( ui16_CPU_IAGR );		/* 岆摦嶌杊巭			*/
}


/***********************************************************************/
/*!
  @fn			void v_ITR_GrpReserve(void)
  @brief		儕僓乕僽 妱傝崬傒暘婒僴儞僪儔(枹張棟)
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_GrpReserve(void){;}


#if 0	/* 枹巊梡 */
/***********************************************************************/
/*!
  @fn			void v_ITR_Grp0Irq( void )
  @brief		僲儞儅僗僇僽儖 妱傝崬傒暘婒僴儞僪儔 (儗儀儖0)
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_Grp0Irq( void )
{
	/************************************/
	/*         WDT妱傝崬傒張棟          */
	/************************************/
	if ( bCPU_WDIF ){
		;
	}
	/************************************/
	/*  	奜晹僲儞儅僗僇僽儖妱崬傒	*/
	/************************************/
	if ( bCPU_NMIF ){
		;
	}
	/************************************/
	/*   僔僗僥儉僄儔乕妱傝崬傒張棟     */
	/************************************/
	if ( bCPU_SYSEF ){
		while(1){
			bCPU_CHIPRST = 1;			/* 僙儖僼儕僙僢僩	*/
		}
	}
}
#endif	/* 枹巊梡 */


#if (PCCOM == SERIAL)
/***********************************************************************/
/*!
  @fn			void v_ITR_Grp11Irq(void)
  @brief		Group11 妱傝崬傒暘婒僴儞僪儔乮儗儀儖2乯
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_Grp11Irq(void)
{
	/************************************/
	/*        儘乕僇儖曄悢掕媊          */
	/************************************/
	/* 妱傝崬傒梫媮僋儕傾屻丄斀塮偝偣傞偨傔偵 */
	/* 儗僕僗僞偺撉傒崬傒張棟傪幚巤           */
	/* LSI儅僯儏傾儖嶲徠偺偙偲                */
	ui8_t	dummy;

	if ( bCPU_SC0RID ){				/* 専弌僼儔僌愝掕?			*/
		if ( bCPU_SC0RIR ){			/* 僔儕傾儖庴怣妱崬傒梫媮	*/
			bCPU_SC0RIR = 0;		/* 梫媮僼儔僌儕僙僢僩		*/
			dummy = bCPU_SC0RIR;	/* 岆摦嶌杊巭				*/
			vIRQ_Serial0Rcv();		/* SIF CH0 僔儕傾儖庴怣		*/
		}
	}
}


/***********************************************************************/
/*!
  @fn			void v_ITR_Grp12Irq(void)
  @brief		Group11 妱傝崬傒暘婒僴儞僪儔乮儗儀儖2乯
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_Grp12Irq(void)
{
	/************************************/
	/*        儘乕僇儖曄悢掕媊          */
	/************************************/
	/* 妱傝崬傒梫媮僋儕傾屻丄斀塮偝偣傞偨傔偵 */
	/* 儗僕僗僞偺撉傒崬傒張棟傪幚巤           */
	/* LSI儅僯儏傾儖嶲徠偺偙偲                */
	ui8_t	dummy;

	if ( bCPU_SC0TID ){				/* 専弌僼儔僌愝掕?			*/
		if ( bCPU_SC0TIR ){			/* 僔儕傾儖庴怣妱崬傒梫媮	*/
			bCPU_SC0TIR = 0;		/* 梫媮僼儔僌儕僙僢僩		*/
			dummy = bCPU_SC0TIR;	/* 岆摦嶌杊巭				*/
			vIRQ_Serial0Snd();		/* SIF CH0 僔儕傾儖憲怣		*/
		}
	}
}
#endif	/* (PCCOM == SERIAL) */


#if (PCCOM == DMA)
/***********************************************************************/
/*!
  @fn			void v_ITR_Grp13Irq(void)
  @brief		Group13 妱傝崬傒暘婒僴儞僪儔乮儗儀儖2乯
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_Grp13Irq(void)
{
	/************************************/
	/*        儘乕僇儖曄悢掕媊          */
	/************************************/
	/* 妱傝崬傒梫媮僋儕傾屻丄斀塮偝偣傞偨傔偵 */
	/* 儗僕僗僞偺撉傒崬傒張棟傪幚巤           */
	/* LSI儅僯儏傾儖嶲徠偺偙偲                */
	ui8_t	dummy;

	if ( bCPU_DM0ID ){				/* DMA揮憲廔椆専弌僼儔僌	*/
		if ( bCPU_DM0IR ){			/* DMA揮憲廔椆妱崬傒梫媮	*/
			bCPU_DM0IR = 0;			/* 梫媮僼儔僌儕僙僢僩		*/
			dummy = bCPU_DM0IR;		/* 岆摦嶌杊巭				*/
			vIRQ_DMA0();			/* DMA0妱崬傒張棟			*/
		}
	}

}


/***********************************************************************/
/*!
  @fn			void v_ITR_Grp13Irq(void)
  @brief		Group14 妱傝崬傒暘婒僴儞僪儔乮儗儀儖2乯
  @param[in]	側偟
  @return		側偟
  @date			2007/xx/xx
*/
/***********************************************************************/
void v_ITR_Grp14Irq(void)
{
	/************************************/
	/*        儘乕僇儖曄悢掕媊          */
	/************************************/
	/* 妱傝崬傒梫媮僋儕傾屻丄斀塮偝偣傞偨傔偵 */
	/* 儗僕僗僞偺撉傒崬傒張棟傪幚巤           */
	/* LSI儅僯儏傾儖嶲徠偺偙偲                */
	ui8_t	dummy;

	/* DMA1 揮憲廔椆屻梫媮 妱崬傒梫媮 		*/
	/* (僔儕傾儖僨乕僞揮憲廔椆屻偺妱崬傒)	*/
	if ( bCPU_DMR1ID ){				/* 専弌僼儔僌愝掕?			*/
		if ( bCPU_DMR1IR ){			/* DMA揮憲廔椆妱崬傒梫媮	*/
			bCPU_DMR1IR = 0;		/* 梫媮僼儔僌儕僙僢僩		*/
			dummy = bCPU_DMR1IR;	/* 岆摦嶌杊巭				*/
			vIRQ_DMA1();			/* DMA1妱崬傒張棟			*/
		}
	}
}


#endif	/* (PCCOM == DMA) */

⌨️ 快捷键说明

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