How to write Interrupt/Exception Handler?

Technical questions regarding the xTIMEcomposer, xSOFTip Explorer and Programming with XMOS.
porsche
Member
Posts: 15
Joined: Fri Nov 11, 2011 9:57 am

How to write Interrupt/Exception Handler?

Postby porsche » Fri Apr 27, 2012 8:02 am

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: 719
Joined: Thu Dec 10, 2009 9:20 pm

Postby Ross » Fri Apr 27, 2012 3:40 pm

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

Postby Bianco » Fri Apr 27, 2012 6:31 pm

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.

Return to “Development Tools and Programming”

Who is online

Users browsing this forum: ers35 and 5 guests