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] [December 2007 Threads] Increase Queue size limit on 8-bit microsPosted by dcraw on December 10, 2007 Currently 8-bit micros are limited to a queue size of 255. To increase the limit I was thinking about modifying the QueueDefinition structure. I would change uxMessagesWaiting and uxLength to be unsigned portSHORT instead of unsiged portBASE_TYPE. Can anyone think of potential pitfalls with this? Are there certain atomic operations which depend on uxMessagesWaiting being only 1 byte?
RE: Increase Queue size limit on 8-bit microsPosted by Richard on December 11, 2007 There should be no problem with having the larger data size. As I recall the very old versions of FreeRTOS.org, prior to the introduction or portBASE_TYPE, had this member as a 16bit type.
Regards.
RE: Increase Queue size limit on 8-bit microsPosted by dcraw on December 11, 2007 For some reason the queues don't work after making this change. I only changed the type of uxMessagesWaiting and uxLength in the QueueDefinition structure to unsigned portSHORT. I left all of the function prototypes untouched (still passing portBASE_TYPE). After makeing these 2 small changes the code still compiles cleanly without warnings, but for some reason queue receive calls are never returning? Using an Atmega128
RE: Increase Queue size limit on 8-bit microsPosted by dcraw on December 11, 2007 My fault. I was passing in an uninitialized queue to xQueueSend(). Changing the QueueDefinition structure was just enough to cause my prgram to really crash. But once I fixed my initialization problem everything was working fine with the larger queues.
RE: Increase Queue size limit on 8-bit microsPosted by FordP on December 12, 2007 Why not make the type automatically switch to 16 bit when the queue gets bigger than 255 ?
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|