10-13-2016 02:00 PM
I use VAVIDO2015.4 and SDK2015.4 on board KC705.
My application on SDK is based on XAPP1026 socket mode. It includes several servers under use of TCP/UDP protocols and runs on Xilkernel OS. Now i generated an interrupt signal from my custom ip on hardware platform in vivido (interrupt signal has been connected to the interrupt controller in vivado) and want to use it in SDK. When an interrupt is detected in sdk, a great deal of data should be received and handled in my interruptcontroller.
Due to the restrictive condition of Xilkernel OS, i created a new thread and used specified API of interrupt handler in SDK.
„register_int_handler(XPAR_INTC_0_TEST_0_VEC_ID , (XInterruptHandler)test_InterruptHandler, (void*)XPAR_TEST_0_0); „ and „enable_interrupt(XPAR_INTC_0_TEST_0_VEC_ID);“
At first, my program works fine. It can detects the interrupt signal correctly and i can see the received data in the handler (for test purpose, i used printf function). But after i ran the program 2 or 3 times, i can’t access my interrupt controller any more. Even if i shut down my board, restart the computer, nothing works. main.c has been attached.
I’m still a newbie in c programming and have struggled for this issue several days… I need your help!!!!
Thanks for your helps in advance!
10-13-2016 03:12 PM
P.S. when i debug my c program i found that, i can use Xil_Out32 function to write data to my custom ip in interrupt handler. However, Xil_In32 and printf don't work in the handler.