You can use the LabVIEW Statechart Module to execute a statechart on many different types of targets. The following table shows the supported target types and any additional software you must install to execute a statechart on that type of target.
| Type of Target | Additional Required Software |
|---|---|
| A Windows PC | — |
| A National Instruments FPGA target, such as an NI Reconfigurable I/O (NI-RIO) device or CompactRIO chassis |
|
| An NI Real-Time (RT) target, such as a PXI chassis, Compact FieldPoint, or Compact Vision System |
|
| A PDA target | LabVIEW PDA Module for Windows Mobile |
| An embedded target, such as the Analog Devices Blackfin Processor |
|
| A Touch Panel target that runs Windows CE | LabVIEW Touch Panel Module for Windows CE |
![]() |
Note Refer to the National Instruments Web site for information about the National Instruments products this table mentions. |
You specify the execution target for the statechart by using the Statechart Code Generation dialog box.
When generating code for a different target, you do not need to modify the guard or action logic of the statechart. This logic is cross-platform as long as the target supports the data types you use.
For asynchronous statecharts that execute on an RT target, you must use an RT FIFO for the external trigger queue. You can specify this and other options by using the Statechart Code Generation dialog box.
You deploy statecharts to targets by using the Project Explorer window. In this window, you must add the caller VI to the target on which you want to run the statechart. However, National Instruments recommends that you add both the caller VI and the statechart .lvsc file to the target.
Before building a statechart that runs on an FPGA target, you must decide whether the statechart runs in a single-cycle loop application. Then, configure the statechart appropriately by using the Statechart Code Generation dialog box. This dialog box contains a Usage pull-down list that you use to specify whether the statechart runs in a single-cycle loop or regular While Loop. Then, generate code for the statechart.
![]() |
Note If you configure a statechart to run single-cycle loop application, the statechart does not have an internal trigger queue. Therefore, you cannot send triggers to this queue. |
If you configure a statechart for a single-cycle loop application but place that statechart in a While Loop, the statechart does not behave like a single-cycle application.