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] [June 2017 Threads]
Hi,
I'm working with FreeRTOSv9.0.0 and I have a BMP085 pressure sensor that has an End Of Conversion Pin.
I would like to use this pin to manage a (CHANGE NOTICE) interrupt on my Pic32 PIC32MX795F512L.
After vTaskStartScheduler();
start my task and in the init of the task i wrote this code :
~~~
TRISBbits.TRISB0 = 0;
CNCONbits.ON = 1;
CNENbits.CNEN2 = 1;
CNPUEbits.CNPUE2 = 1;
IPC6bits.CNIP = 1;
IEC1bits.CNIE = 1;
IFS1bits.CNIF = 0;
INTCONbits.MVEC = 1;
asm volatile("ei");
~~~
than i wrote the ISR as follow :
~~~
void _ISR(CHANGENOTICEVECTOR, IPL1SOFT) vCNInterruptHandler (void)
{
MyFlag = 1;
IFS1bits.CNIF = 0;
}
~~~
About the hardware connection it's all'ok, i already tested the EOC (end of conversion) signal presence and the Pic pin (corresponding to RB0 PORT).
The issue is that the ISR is never executed.
Thanks in advance.
Best Regards
What have you done to establish that the issue is related to FreeRTOS.
For example, are you implying that in a bare metal project (without
FreeRTOS) the interrupt works ok, but in a multi-threaded FreeRTOS
project it doesn't. I'm afraid we can't support chip specific interrupt
configuration, as per the code you posted.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.