#include "DSP28_Device.h" char buffer[100]; void main(void) { int i = 0; InitSysCtrl(); DINT; IER = 0x0000; IFR = 0x0000; InitPieCtrl(); InitPieVectTable(); InitGpio(); InitSci(); for(i=0;i<100;i++) { buffer[i] = 0; } PieCtrl.PIEIER9.bit.INTx1 = 1; //使能pie模块中sci的接受中断 PieCtrl.PIEIER9.bit.INTx2 = 1; //使能pie模块中sci的发送中断 IER |= M_INT9; ERTM; EINT; for(;;) { ; } } *******************************************************************************************************************DefaultIsr.c******************************************** interrupt void SCIRXINTA_ISR(void) // SCI-A接收中断函数 { int j; for(j=0;j<8;j++) { buffer[j] = SciaRegs.SCIRXBUF.all; } if(strncmp(buffer,"hellodsp",8) == 0) { SciaRegs.SCIFFTX.bit.TXINTCLR = 1; } SciaRegs.SCIFFRX.bit.RXFIFORESET = 0; SciaRegs.SCIFFRX.bit.RXFIFORESET = 1; SciaRegs.SCIFFRX.bit.RXFFINTCLR = 1; PieCtrl.PIEACK.bit.ACK1 = 1; } interrupt void SCITXINTA_ISR(void) // SCI-A发送中断函数 { int _j; for(_j=0;_j<8;_j++) { SciaRegs.SCITXBUF = buffer[_j]; } PieCtrl.PIEACK.bit.ACK1 = 1; }