===========================================================================
Nucleus Samples - Kernel Power Demo
===========================================================================


Purpose & Goals
---------------

This sample application illustrates the use of Power Services APIs to show basic use.
The simple application does the following:

    * Creates a nucleus timer that just calculates CPU usage every 20 ticks
    * Creates a timer task that just increments a count every 1 second and sets an event
    * Creates two tasks that compete for a semaphore and share the same task entry function
    * Creates a task that waits on the event set by the timer task and increments a count
    * Creates a task that outputs the state of the system to standard out and refreshes this
      information every second.

What You Will Need
------------------

This sample application will run on any Nucleus ReadyStart platform with sufficient memory.
 
Components Used
---------------

The Nucleus ReadyStart Plus kernel, power services, and a BSP are the only components required for this sample.

NOTE: You also need to turn on CPU Usage tracking by enabling the following option:

nu.os.svcs.pwr.core.enable_cpu_usage=true


How To Run The Application
--------------------------

The following steps explain how to run this sample application:

    * Follow the instructions found in the appropriate BSP document (\docs\bsp\<platform>.htm)
      to open a serial terminal and view standard out from the target.
    * Load and run the *.out file using a debugger or another method (ie U-Boot, etc).
    * View the demo output and press a key to refresh this output.

