Tactile Switch Hardware Interrupt

Hello all,
I am new to this forum and RTOS too. I am looking for a code to generate a tactile switch interrupt on PIC32MX360F512L. I am using PIC32 starter kit. I tried to call the ISR void __ISR(_CHANGE_NOTICE_VECTOR, ipl2) ChangeNotice_Handler(void) from a task but it gave me error “/pic32mx/include/sys/appio.h:(.vector_26+0x0): undefined reference to `ChangeNotice_Handler’ “. I tired to search the interrupt in the RTOS files but could not get it. Can somebody help with this?
Thanks in advance…

Tactile Switch Hardware Interrupt

The page linked below has a section “Interrupt service routines” that tells you how to write an interrupt that uses FreeRTOS http://www.freertos.org/port_PIC32_MIPS_MK4.html

Tactile Switch Hardware Interrupt

Thanks a lot for the quick reply!!! I tried to implement in the similar manner; creating .S file and .c file containing the void __ISR(_CHANGE_NOTICE_VECTOR, ipl2) ChangeNotice_Handler(void);  but it still gives me the same error “/pic32mx/include/sys/appio.h:(.vector_26+0x0): undefined reference to `ChangeNotice_Handler’ ” Where do you think am going wrong? I checked the appio.h file and it has nothing in it regarding it….

Tactile Switch Hardware Interrupt

I don’t think your problem is in any way FreeRTOS related.  It sounds like you have a simple build problem, or linking problem to be more precise. If you are calling ChangeNotice_Handler in your code then the code you are building must somewhere define a function called ChangeNotice_Handler, but evidently (from the error message) it doesn’t.  That would be the case whether you included FreeRTOS in your build or not because ChangeNotice_Handler is definitely not a FreeRTOS function. Regards.

Tactile Switch Hardware Interrupt

Hey thanks Richard for the reply!!
I did the code according to the procedure mentioned on the page http://www.freertos.org/port_PIC32_MIPS_MK4.html but could not make it run. So I looked through the examples given and found that .set nomips16 and .set noreorder was mentioned in every .S file. I modified my code accordingly and it worked though I do not understand what these line mean. My .S files looks something like this : .set nomips16
.set noreorder
.extern vSW1InterruptHandler
.global ChangeNotice_Handler
.set noreorder
.set noat
.ent ChangeNotice_Handler Thanking you.