Hi,
i am using mpc577c evk board. I developed drivers per our requirements and also Freertos integrated in my project.
But i am facing issue that freertos is jumping to vPortISRHandler when a tick generates (which is in interrupt vector.s and portasm.s file).
since in interrupt_vector.s file i found small code snippet.
IVOR4_Vector:
#ifdef USING_OS_FREERTOS
e_b vPortISRHandler
#else
e_b IVOR4_Handler
#endif
For Freertos to run need the macro to be defined. but for normal interrupts the macro defined not required. when the macro is defined normal interrupts are not working going to lock stage(swt1_handler).
i need freertos and also some of the input interrupts to execute.
Can anyone help me regarding this issue.
Thanks,
karthik.k
Hi,
My application deals with SPI interrupt action things as well as OS.
How os will handler SPI based interrupt?
In vPortISRHandler : in the handler last step is se_blrl
can we try in this way
se_blrl to se_blrl functionname
can i do such kind of things in handler?
Is this useful or we will face any issue.
Hi,
How os will handler SPI based interrupt?
In exactly same way as it is handling any other external interrupt (IVOR4).
se_blrl to se_blrl functionname
can i do such kind of things in handler?
Hmm, You can do anything in handler.
But what is the purpose of this? Since you have vector table where the ISR address is.
There is interrupt prolog which will store all content and then jump in address where the ISR is placed.
I expect this is part of OS by default. (at least for AUTOSAR is)
If you have any questions regarding FreeRTOS is suggest you to contact FreeRTOS support as it is not our product.
regards,
Peter
Hello, petervlna
Now I am reading the MPC5744P demo pit_periodic_interrupt_mpc5744p in the S32.
There is an interrupt handler here like following figure. but I can find where the PIT_Ch0_IRQHandler is defined.
I also cannot find the VectorTable about it.
Can you tell me how to call the function PIT_Ch0_IRQHandler when the interrupt occurs ?
thank you very much.
best regards
hao
Hi,
For Freertos to run need the macro to be defined. but for normal interrupts the macro defined not required
What do you mean normal interrupts. If you are using OS, all interrupts must be handled in OS.
OS usually has prepared interrupt and exception handlers.
If you mix them you will end up in not coherent system of interrupts.
use either OS or custom code. But not both at once.
regards,
Peter