How to write Interrupt/Exception Handler?

Technical questions regarding the XTC tools and programming with XMOS.
Post Reply
porsche
Member
Posts: 15
Joined: Fri Nov 11, 2011 9:57 am

How to write Interrupt/Exception Handler?

Post 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!


User avatar
Ross
XCore Expert
Posts: 962
Joined: Thu Dec 10, 2009 9:20 pm
Location: Bristol, UK

Post by Ross »

Trap() isn't a exception-handler in this case, but a function that raises one.
User avatar
Bianco
XCore Expert
Posts: 754
Joined: Thu Dec 10, 2009 6:56 pm
Contact:

Post 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.
Post Reply