Softools Development Tools

Home Contact Softools Support
 

TurboTask Queues

 
Up
TurboTask Interrupt Support
TurboTask Message Boxes
TurboTask Queues
TurboTask Semaphores
 
Note
Queue interrupt support can also be used to enable and disable an RS-485 transmitter!
 



 
  TurboTask Queues
 
bulletSupports up to 256 queues. The size of each queue is defined during system configuration and may be any number of bytes in size. A queue will hold any 8-bit encoded message or data.
bulletAllows tasks to read a queue optionally suspending the task until the queue is written to by another task. A error flag may be checked if a queue is empty or has timed out.
bulletAllows a task to be suspended until a queue contains a specific number of bytes. This allows a task to wait without CPU overhead until a queue has a minimum amount of data to process.
bulletSupports two queue insertion functions.  One is high-speed and returns immediately without notification to TurboTask.  The second will allow TurboTask to reschedule if necessary.
bulletProvides interrupt support to a configurable number of queues. The queue is initialized with addresses of functions to enable and disable the interrupt source used with the queue. When a queue is written to and interrupts are disabled, TurboTask will execute the interrupt enable routine. The interrupt service routine will read the queue and process the data. When the queue is empty, TurboTask will execute the stop interrupt routine. This feature is perfect for serial transmit interrupts. For example, printf() can be directed to "print" to a queue. TurboTask will start and stop transmit interrupts as needed to empty the queue to the serial device. The demo program provided shows clearly how to use this powerful feature.
 
 
   
Back Next
 
Copyright © 2005-2023, Softools. All rights reserved.