
Rockwell Automation Publication 2080-UM002N-EN-E - November 2022
123
Chapter
7
Program Execution in Micro800
This section provides a brief overview of running or executing programs with a Micro800
controller.
For detailed information regarding ladder diagrams, instructions, function blocks, and so on,
see Micro800 Programmable Controllers Instruction Manual, publication
Overview of Program
Execution
A Micro800 cycle or scan consists of reading inputs, executing programs in sequential order,
updating outputs, and performing housekeeping (data log, recipe, communications).
Program names must begin with a letter or underscore, followed by up to 127 letters, digits, or
single underscores. Use programming languages such as ladder logic, function block
diagrams, and structured text.
Up to 256 programs may be included in a project, depending on available controller memory.
By default, the programs are cyclic (executed once per cycle or scan). As each new program is
added to a project, it is assigned the next consecutive order number. When you start up the
Project Organizer in Connected Components Workbench, it displays the program icons based
on this order. You can view and modify an order number for a program from the program’s
properties. However, the Project Organizer does not show the new order until the next time the
project is opened.
The Micro800 controller supports jumps within a program. Call a subroutine of code within a
program by encapsulating that code as a User Defined Function (UDF) or User Defined
Function Block (UDFB). A UDF is similar to a traditional subroutine and uses less memory than
a UDFB, while a UDFB can have multiple instances. Although a UDFB can be executed within
another UDFB, a maximum nesting depth of five is supported. A compilation error occurs if this
is exceeded. This also applies to UDFs.
Alternatively, you can assign a program to an available interrupt and have it executed only
when the interrupt is triggered. A program assigned to the User Fault Routine runs once just
prior to the controller going into Fault mode.
In addition to the User Fault Routine, Micro800 controllers also support two Selectable Timed
Interrupts (STI). STIs execute assigned programs once every set point interval (1…65535 ms).
The Global System Variables associated with cycles/scans are:
• __SYSVA_CYCLECNT – Cycle counter
• __SYSVA_TCYCURRENT – Current cycle time
• __SYSVA_TCYMAXIMUM – Maximum cycle time since last start.
IMPORTANT
This section generally describes program execution in Micro800
controllers. Certain elements may not be applicable or true for certain
models (for example, Micro820 does not support PTO motion control).