FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [March 2013 Threads] Tactile Switch Hardware InterruptPosted by Shashank on March 19, 2013 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...
RE: Tactile Switch Hardware InterruptPosted by Dave on March 19, 2013 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
RE: Tactile Switch Hardware InterruptPosted by Shashank on March 19, 2013 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....
RE: Tactile Switch Hardware InterruptPosted by Richard on March 19, 2013 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.
RE: Tactile Switch Hardware InterruptPosted by Shashank on March 20, 2013 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 .setnomips16 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 :
.setnomips16 .set noreorder .extern vSW1InterruptHandler .globalChangeNotice_Handler .setnoreorder .set noat .entChangeNotice_Handler
Thanking you.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|