Page 1 of 1

How to write Interrupt/Exception Handler?

Posted: Fri Apr 27, 2012 8:02 am
by porsche
hi:
Do somebody write interrupt/exception handler?
Or Is the interrupt/exception not available for users?

By the way, I see UART code in http://github.xcore.com/sc_uart/generic.html
In the uart_rx_impl.xc, there is a function

static inline void trap()
{
asm("ecallf %0" : : "r"(0));
}

how do trap() work?

Thanks for hacker!

Re: How to write Interrupt/Exception Handler?

Posted: Fri Apr 27, 2012 3:40 pm
by Ross
Trap() isn't a exception-handler in this case, but a function that raises one.

Re: How to write Interrupt/Exception Handler?

Posted: Fri Apr 27, 2012 6:31 pm
by Bianco
Hi porsche,

For writing an exception handler, see: https://www.xcore.com/forum/viewtopic.php?f=26&t=626

For writing an interrupt handler see the timer interrupt implementation of my project FreeRTOS port, the file FreeRTOS\Source\portable\XCC\XMOS_XS1\port_asm.S file contains the handler (clock_int_), and the setup is done in init_system_.
The timer itself is declared in port_xc.xc. This should get you started.