📄 dsp28_defaultisr.c
字号:
// 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 + -