Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12589 Discussions

Interrupt processing not working

SKuma120
Novice
1,388 Views

Hello , I am new to nios programming this can be a basic question.

I have two external interrupts connected to external devices with different interrupt priorities one is 1 and other is 8 . Both the interrupt are properly registered also but while running only one isr is getting serviced and other is not at all serviced. How to check the status register while debugging in eclipse.?

In other micro controllers we need to clear the interrupt flag after each time it get serviced , in nios also do we need to do it ? If yes is which function can i use?

 

0 Kudos
1 Solution
Ahmed_H_Intel1
Employee
750 Views
Hi, Thanks for figuring out the mistake by yourself, in future I recommend you to use the VIC (Vectored Interrupt controller) IP. Regards.

View solution in original post

0 Kudos
6 Replies
Ahmed_H_Intel1
Employee
750 Views
Hi, Why you give priorities 1 and 8, is there any other interrupts between?
0 Kudos
SKuma120
Novice
750 Views

Thanks for the reply.

Yes, there are other interrupts in between. I tried changing the priorities to 1 & 2 but it did not help.

Reading the interrupt register in debug mode, i observed an issue while reading the result from one of the interface clears other existing interrupts . So the second channel interrupt get cleared and isr is not serviced.

I have to fix this now.

Ahmed_H_Intel1
Employee
750 Views
Hi, So what interface clears the interrupt register? Can you share with us your results?
0 Kudos
SKuma120
Novice
750 Views

Its like two sensors connected as two i2c interface (user defined) to the system.

In verilog we made some mistake, after reading the result from one interface we cleared the interrupt for the both interfaces . So the isr for second interface did not work.

Now the issue is fixed. Thanks for the Help. 🙂

0 Kudos
Ahmed_H_Intel1
Employee
751 Views
Hi, Thanks for figuring out the mistake by yourself, in future I recommend you to use the VIC (Vectored Interrupt controller) IP. Regards.
0 Kudos
Reply