This repository has been archived on 2023-11-05. You can view files and clone it, but cannot push or open issues or pull requests.
FreeRTOS-Kernel/FreeRTOS/Demo/CORTEX_LM3S811_KEIL
2012-08-14 12:14:48 +00:00
..
heap Prepare for V7.2.0 release. 2012-08-14 12:14:48 +00:00
LuminaryCode Add FreeRTOS-Plus directory. 2012-08-11 21:34:11 +00:00
FreeRTOSConfig.h Prepare for V7.2.0 release. 2012-08-14 12:14:48 +00:00
main.c Prepare for V7.2.0 release. 2012-08-14 12:14:48 +00:00
readme.txt Add FreeRTOS-Plus directory. 2012-08-11 21:34:11 +00:00
RTOSDemo.Opt Add FreeRTOS-Plus directory. 2012-08-11 21:34:11 +00:00
RTOSDemo.Uv2 Add FreeRTOS-Plus directory. 2012-08-11 21:34:11 +00:00
startup_rvmdk.S Add FreeRTOS-Plus directory. 2012-08-11 21:34:11 +00:00

/*
 * This project contains an application demonstrating the use of the 
 * FreeRTOS.org mini real time scheduler on the Luminary Micro LM3S811 Eval
 * board.  See http://www.FreeRTOS.org for more information.
 *
 * main() simply sets up the hardware, creates all the demo application tasks, 
 * then starts the scheduler.  http://www.freertos.org/a00102.html provides
 * more information on the standard demo tasks. 
 *
 * In addition to a subset of the standard demo application tasks, main.c also
 * defines the following tasks: 
 *
 * + A 'Print' task.  The print task is the only task permitted to access the
 * LCD - thus ensuring mutual exclusion and consistent access to the resource.
 * Other tasks do not access the LCD directly, but instead send the text they
 * wish to display to the print task.  The print task spends most of its time
 * blocked - only waking when a message is queued for display.
 *
 * + A 'Button handler' task.  The eval board contains a user push button that
 * is configured to generate interrupts.  The interrupt handler uses a 
 * semaphore to wake the button handler task - demonstrating how the priority 
 * mechanism can be used to defer interrupt processing to the task level.  The
 * button handler task sends a message both to the LCD (via the print task) and
 * the UART where it can be viewed using a dumb terminal (via the UART to USB
 * converter on the eval board).  NOTES:  The dumb terminal must be closed in 
 * order to reflash the microcontroller.  A very basic interrupt driven UART
 * driver is used that does not use the FIFO.  19200 baud is used.
 *
 * + A 'check' task.  The check task only executes every five seconds but has a
 * high priority so is guaranteed to get processor time.  Its function is to
 * check that all the other tasks are still operational and that no errors have
 * been detected at any time.  If no errors have every been detected 'PASS' is
 * written to the display (via the print task) - if an error has ever been
 * detected the message is changed to 'FAIL'.  The position of the message is
 * changed for each write.
 */