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] [July 2016 Threads] PIC24 counting semaphores:Posted by paraparvy on July 3, 2016 Hi All,
Having difficulty in tyring to create counting semaphores in PIC24 port.
SemaphoreHandle_t xCountingSemaphore;
xCountingSemaphore = xSemaphoreCreateCounting(5,0);
The above lines generate the following errors: (...can't see anything to configure in FreeRTOSConfig.h
i.e configSUPPORTDYNAMICALLOCATION is not defined)
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
build/default/production/ext/1472/mainInterruptBinSemaTut.o(.text+0x8c): In function .L0':
: undefined reference to xQueueCreateCountingSemaphore'
build/default/production/ext/1472/mainInterruptBinSemaTut.o(.text+0x8e): In function .L0':
: undefined reference to _xQueueCreateCountingSemaphore'
make[2]: *** [dist/default/production/FreeRTOSTutorial.X.production.hex] Error 255
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 3s)
Thanks
PIC24 counting semaphores:Posted by rtel on July 3, 2016 If you look at the implementation of xQueueCreateCountingSemaphore() you
will see it is guarded by:
#if( ( configUSE_COUNTING_SEMAPHORES == 1 ) && (
configSUPPORT_DYNAMIC_ALLOCATION == 1 ) )
Do you have both configUSECOUNTINGSEMAPHORES and
configSUPPORTDYNAMICALLOCATION set to 1?
PIC24 counting semaphores:Posted by paraparvy on July 4, 2016 Hi,
Thanks for getting back.
No, configUSECOUNTINGSEMAPHORES and configSUPPORTDYNAMICALLOCATION
do not appear to be declared anywhere...or at least i could't find them.
Should I define and set them in FreeRTOSConfig.h ?
Cheers
PIC24 counting semaphores:Posted by davedoors on July 4, 2016 Only if you want to use counting semaphores.
PIC24 counting semaphores:Posted by paraparvy on July 4, 2016
PIC24 counting semaphores:Posted by paraparvy on July 4, 2016 Hi All,
Counting semaphores are now OK...having trouble compling Mutex:
SemaphoreHandle_t xMutex;
xMutex = xSemaphoreCreateMutex();
configSUPPORTDYNAMICALLOCATION is set to 1 in FreeRTOSConfig.h
...and i think that is all that is needed in semphr.h
Cheers
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
build/default/production/ext/1472/mainMutex1Tut.o(.text+0x50): In function .L0':
: undefined reference to _xQueueCreateMutex'
build/default/production/ext/1472/mainMutex1Tut.o(.text+0x52): In function .L0':
: undefined reference to _xQueueCreateMutex'
PIC24 counting semaphores:Posted by rtel on July 4, 2016 Either search for the word "Mutex" on the configuration options web page
(http://www.freertos.org/a00110.html), or search for xQueueCreateMutex
in the source code (the "queue" in the function name tells you it is
implemented in queue.c) - then you will be able to answer your own question.
PIC24 counting semaphores:Posted by paraparvy on July 4, 2016 OK, needed to declare and set configUSE_MUTEXES, all fine now
Thank you so much
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|