本帖最后由 江苏-天文 于 2019-7-18 17:18 编辑
程序在附件中,在教程的基础上修改。中断的触发与初始化程序中这两段的顺序有关,在后面的这段能正常触发。
https://pan.baidu.com/s/1OxKoE0PxGQY5dqOwHzQVMw提取码:kcdx
int i;
void init_intr_sys(void)
{
Init_UartPsIntr1(&UartPs1,XPAR_XUARTPS_0_DEVICE_ID);
Init_Intr_System1(&Intc1);
Setup_Intr_Exception(&Intc1);
UartPs_Setup_IntrSystem1(&Intc1, &UartPs1, XPAR_XUARTPS_0_INTR);
Init_UartPsIntr(&UartPs,XPAR_XUARTPS_1_DEVICE_ID);
Init_Intr_System(&Intc);
Setup_Intr_Exception(&Intc);
UartPs_Setup_IntrSystem(&Intc, &UartPs, XPAR_XUARTPS_1_INTR);
}
int main(void)
{
init_intr_sys();
XUartPs_Recv1(&UartPs1, RecvBuffer1, TEST_BUFFER_SIZE1);
XUartPs_Recv(&UartPs, RecvBuffer, TEST_BUFFER_SIZE);
while(1)
}
|