void __irq Uart(void)
{
U8 Data_Buff;
//Data_Buff=rURXH0;
if(rSUBSRCPND&0x01==BIT_SUB_RXD0)
{
//rSUBSRCPND|=BIT_SUB_RXD0;
Data_Buff=rURXH0;
}
rSUBSRCPND|=0x3;
rSRCPND|=(1<<28);
rINTPND|=(1<<28);
}
void Main()
{
//U8 Data;
All_clk_init(2); //主频率400MHz HCLK=FCLK/4
Port_Init();
Uart_Init( 0,115200); //设置波特率
Uart_Select(0); //选择串口0
rSUBSRCPND=0X3;
rSRCPND|=(1<<28);
rINTPND|=(1<<28);
rINTSUBMSK&=~(3);
rINTMSK&=~(1<<28);
MMU_Init();
pISR_UART0=(U32)Uart; //中断向量指向
while(1);
}
以上是我的串口中断程序,串口的查询方式,发送接收已经做过了是可以的
网上说要重新设置中断向量,实在不知道该怎么做了,希望大家帮忙指点下。
非常感谢!