www.pudn.com > ads8364.rar > ADS8364_PieVect.c


//########################################################################### 
// 
// FILE:	DSP28_PieVect.c 
// 
// TITLE:	DSP28 Devices PIE Vector Table Initialization Functions. 
// 
//########################################################################### 
// 
//  Ver | dd mmm yyyy | Who  | Description of changes 
// =====|=============|======|=============================================== 
//  0.55| 06 May 2002 | L.H. | EzDSP Alpha Release 
//  0.56| 20 May 2002 | L.H. | No change 
//  0.57| 27 May 2002 | L.H. | No change 
//  0.58| 29 Jun 2002 | L.H. | Changed PieCtrl to PieCtrlRegs for consistancy 
//########################################################################### 
 
#include "DSP28_Device.h" 
 
const struct PIE_VECT_TABLE PieVectTableInit = { 
 
      PIE_RESERVED,  // Reserved space 
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
      PIE_RESERVED,    
 
 
// Non-Peripheral Interrupts 
      PIE_RESERVED,     // XINT13 or CPU-Timer 1 
      PIE_RESERVED,     // CPU-Timer2 
      PIE_RESERVED,   // Datalogging interrupt 
      PIE_RESERVED,   // RTOS interrupt 
      PIE_RESERVED,    // Emulation interrupt 
      PIE_RESERVED,       // Non-maskable interrupt 
      ILLEGAL_ISR,   // Illegal operation TRAP 
      PIE_RESERVED,     // User Defined trap 0 
      PIE_RESERVED,     // User Defined trap 1 
      PIE_RESERVED,     // User Defined trap 2 
      PIE_RESERVED,     // User Defined trap 3 
      PIE_RESERVED,     // User Defined trap 4 
      PIE_RESERVED,     // User Defined trap 5 
      PIE_RESERVED,     // User Defined trap 6 
      PIE_RESERVED,     // User Defined trap 7 
      PIE_RESERVED,     // User Defined trap 8 
      PIE_RESERVED,     // User Defined trap 9 
      PIE_RESERVED,    // User Defined trap 10 
      PIE_RESERVED,    // User Defined trap 11 
 
// Group 1 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      XINT1_ISR,      
      XINT2_ISR, 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
 
// Group 2 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,  
       
// Group 3 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,  
       
// Group 4 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      
// Group 5 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,   
 
// Group 6 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,  
       
// Group 7 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
 
// Group 8 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
       
// Group 9 PIE Vectors      
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,   
       
// Group 10 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
             
// Group 11 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
 
// Group 12 PIE Vectors 
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
      rsvd_ISR,    
}; 
 
 
//--------------------------------------------------------------------------- 
// InitPieVectTable:  
//--------------------------------------------------------------------------- 
// This function initializes the PIE vector table to a known state. 
// This function must be executed after boot time. 
// 
 
void InitPieVectTable(void) 
{ 
	int16	i; 
	Uint32 *Source = (void *) &PieVectTableInit; 
	Uint32 *Dest = (void *) &PieVectTable; 
		 
	EALLOW;	 
	for(i=0; i < 128; i++) 
		*Dest++ = *Source++;	 
	EDIS; 
 
	// Enable the PIE Vector Table 
	PieCtrlRegs.PIECRTL.bit.ENPIE = 1;	 
			 
} 
 
//=========================================================================== 
// No more. 
//===========================================================================