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

📄 dsp28_defaultisr.c

📁 单个表头的显示 运用了MAX7219驱动芯片
💻 C
📖 第 1 页 / 共 3 页
字号:
  // Uncomment this line after adding ISR Code 
  // return;
  EvbRegs.EVBIFRB.bit.T4CINT = 1;
}

interrupt void T4UFINT_ISR(void)   // EV-B
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  PieCtrl.PIEACK.all = PIEACK_GROUP5;

  // Next two lines for debug only - remove after inserting
  // ISR Code
  if(Under == 1) {
     Under = 0;
     EvbRegs.GPTCONB.bit.T4PIN = 0;
     EvbRegs.GPTCONB.bit.T3PIN = 2;

	 EvbRegs.T4CON.bit.TECMPR = 0;
     EvbRegs.T3CON.bit.TECMPR = 1;
	 EvbRegs.T3CNT = 0;
	 }
  // Uncomment this line after adding ISR Code 
  // return;
}

interrupt void T4OFINT_ISR(void)   // EV-B
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP5;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}

interrupt void CAPINT4_ISR(void)   // EV-B
{
	PieCtrl.PIEACK.bit.ACK5 = 1;
	EvbRegs.EVBIFRC.bit.CAP4INT = 1;
	
	//粗调细调切换
	status ^= 0x0002;
}

interrupt void CAPINT5_ISR(void)   // EV-B
{
	PieCtrl.PIEACK.bit.ACK5 = 1;
	EvbRegs.EVBIFRC.bit.CAP5INT = 1;
	if(GpioDataRegs.GPADAT.bit.GPIOA8)
	{
//		GpioDataRegs.GPATOGGLE.bit.GPIOA5 = 1;
//		switch((status&0x003E))
        switch((status&0x0006))
		{
			case 0x0004: // 电压粗调减
				if(v_ref > 0x8100 || v_ref < 0x8000)
					v_ref -= 0x0100;
				else
					v_ref = 0x8000;
				break;

			case 0x0006: // 电压细调减
				if(v_ref > 0x8008 || v_ref < 0x8000)
					v_ref -= 0x0008;
				else
					v_ref = 0x8000;
				break;
/***
			case 0x0008: // 电流粗调减
				if(i_ref > 0x8100 || i_ref < 0x8000)
					i_ref -= 0x0100;
				else
					i_ref = 0x8000;
				break;

			case 0x000A: // 电流细调减
				if(i_ref > 0x8008 || i_ref < 0x8000)
					i_ref -= 0x0008;
				else
					i_ref = 0x8000;
				break;

			case 0x0010: // 频率粗调减
				break;

			case 0x0012: // 频率细调减
				break;

			case 0x0020: // 占空比粗调减
				break;

			case 0x0022: // 占空比细调减
				break;
***/
		}
	}
	else
	{
//		GpioDataRegs.GPATOGGLE.bit.GPIOA6 = 1;
//		switch((status&0x003E))
        switch((status&0x0006))
		{
			case 0x0004: // 电压粗调加
				if(v_ref < 0x7EFF || v_ref > 0x7FFF)
					v_ref += 0x0100;
				else
					v_ref = 0x7FFF;
				break;

			case 0x0006: // 电压细调加
				if(v_ref < 0x7FF7 || v_ref > 0x7FFF)
					v_ref += 0x0008;
				else
					v_ref = 0x7FFF;
				break;
/***
			case 0x0008: // 电流粗调加
				if(i_ref < 0x7EFF || i_ref > 0x7FFF)
					i_ref += 0x0100;
				else
					i_ref = 0x7FFF;
				break;

			case 0x000A: // 电流细调加
				if(i_ref < 0x7FF7 || i_ref > 0x7FFF)
					i_ref += 0x0008;
				else
					i_ref = 0x7FFF;
				break;

			case 0x0010: // 频率粗调加
				break;

			case 0x0012: // 频率细调加
				break;

			case 0x0020: // 占空比粗调加
				break;

			case 0x0022: // 占空比细调加
				break;
***/
		}
	}
}

interrupt void CAPINT6_ISR(void)   // EV-B
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP5;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);
  
  // Uncomment this line after adding ISR Code 
  // return;
}

//---------------------------------------------------------------------------
// McBSP-A Default ISRs: 
//
interrupt void MRINTA_ISR(void)     // McBSP-A
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP6;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}

interrupt void MXINTA_ISR(void)     // McBSP-A
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP6;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}

//---------------------------------------------------------------------------
// SPI-A Default ISRs: 
//
interrupt void SPIRXINTA_ISR(void)    // SPI-A
{
  /* if(ff==2)
   {
    var3 =Dp;
    var4 =Dn;
    var1 =Dp;
    var2 =Dn;
   
    ff=0;
  }*/
   //  PieCtrl.PIEACK.all = PIEACK_GROUP6;

  // 	spi_xmit(var3);					
 //   while(SpiaRegs.SPISTS.bit.INT_FLAG==0){}	
 //  Test_flag3 = SpiaRegs.SPIRXBUF;
   				
   /* spi_xmit(var4);					
    while(SpiaRegs.SPISTS.bit.INT_FLAG==0) { }	
    Test_flag4 = SpiaRegs.SPIRXBUF;				
  
    spi_xmit(var1);					
    while(SpiaRegs.SPISTS.bit.INT_FLAG==0) { }	
   Test_flag1 = SpiaRegs.SPIRXBUF;				
   
	spi_xmit(var2);					
    while(SpiaRegs.SPISTS.bit.INT_FLAG==0) { }	
    Test_flag2 = SpiaRegs.SPIRXBUF;	*/
    			
//	SpiaRegs.SPICCR.bit.RESET=0;
   
}


interrupt void SPITXINTA_ISR(void)     // SPI-A
{

 
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP6;

  // Next two lines for debug only - remove after inserting
  // ISR Code
 //    SpiaRegs.SPICCR.bit.RESET=0;
   //  PieCtrl.PIEACK.all |= PIEACK_GROUP6;
    // EINT;                                   //开全局中断
  
}



//---------------------------------------------------------------------------
// SCI-A Default ISRs: 
//
interrupt void SCIRXINTA_ISR(void)     // SCI-A
{
	unsigned int crc, crc_receive;

	EINT;

	if(SciaRegs.SCIRXST.bit.RXRDY == 1)
	{
		if(SciaRegs.SCIRXST.bit.RXWAKE == 1)
		{
			sci_rx_num = 100;
			sci_rx_current = 0;
		}

		sci_rx_data[sci_rx_current] = SciaRegs.SCIRXBUF.all;

		if(sci_rx_current == 6)
		{
			switch(sci_rx_data[1])
			{
			case 0x10:
				sci_rx_num = sci_rx_data[6] + 9;
				break;
				 
			default:
				sci_rx_num = 8;
			}
		}
		sci_rx_current++;
		
		if(sci_rx_current == sci_rx_num)
		{
			sci_rx_current = 0;
			crc = CRC16(sci_rx_data, sci_rx_num-2);
			crc_receive = ((unsigned int)(sci_rx_data[sci_rx_num-2])<<8) + sci_rx_data[sci_rx_num-1];
			if(crc == crc_receive)
			{
				ModbusRTUFrameReceive();
			}
			else
			{
				sci_rx_num = 100;
			}
		}
	}
//    SciaRegs.SCIFFRX.bit.RXFFINTCLR = 1;
	PieCtrl.PIEACK.all |= PIEACK_GROUP9;
	
}


interrupt void SCITXINTA_ISR(void)     // SCI-A
{
	EINT;

	if(SciaRegs.SCICTL2.bit.TXRDY == 1 && sci_tx_current < sci_tx_num)
	{
		SciaRegs.SCITXBUF = sci_tx_data[sci_tx_current];
		sci_tx_current++;
	}
//	SciaRegs.SCIFFTX.bit.TXINTCLR = 1;
	PieCtrl.PIEACK.all |= PIEACK_GROUP9;
}


//---------------------------------------------------------------------------
// SCI-B Default ISRs: 
//
interrupt void SCIRXINTB_ISR(void)     // SCI-B
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP9;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}

interrupt void SCITXINTB_ISR(void)     // SCI-B
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP9;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}


//---------------------------------------------------------------------------
// CAN-A Default ISRs: 
//
interrupt void ECAN0INTA_ISR(void)  // eCAN-A
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP9;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}

interrupt void ECAN1INTA_ISR(void)  // eCAN-A
{
  // Insert ISR Code here

  // To recieve more interrupts from this PIE group, acknowledge this interrupt 
  // PieCtrl.PIEACK.all = PIEACK_GROUP9;

  // Next two lines for debug only - remove after inserting
  // ISR Code
   asm ("      ESTOP0");
   for(;;);

  // Uncomment this line after adding ISR Code 
  // return;
}


//---------------------------------------------------------------------------
// Catch All Default ISRs: 
//
interrupt void PIE_RESERVED(void)  // Reserved space.  For test.
{
  asm ("      ESTOP0");
  for(;;);
}

interrupt void rsvd_ISR(void)          // for test
{
  asm ("      ESTOP0");
  for(;;);
}

//===========================================================================
// No more.
//===========================================================================

⌨️ 快捷键说明

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