| Installation
Known Issues |
| ID |
Known Issue |
| — |
Do not install the LabVIEW
Microprocessor SDK
8.5.1 software after you install the Embedded Module for ARM
Microcontrollers. If you install the LabVIEW Microprocessor SDK 8.5.1
software after you install the Embedded Module for ARM
Microcontrollers, you will not be able to build ARM applications. |
| General
Known Issues |
| ID |
Known Issue |
| 44734 |
You cannot use strings in VIs
you create to handle
interrupts. In addition, interrupt handler VIs do not support array
operations that use dynamic memory. If you use a VI or function in an
interrupt handler VI that interrupt handler VIs do not support, you
will receive an Invalid Context
error when you try to build. |
| — |
Sometimes you might receive a
dialog box telling
you that quitting LabVIEW will abort all running VIs, even though no
VIs appear to be running. You can click the OK
button to close this dialog box. |
| 102464 |
The Show Code
item in the shortcut menu, available when you right-click a block
diagram item during OCDI debugging, does not work. |
| — |
The blue right-arrow button on
the Manage Interrupts page of the Build
Specification Properties
dialog box is grayed out after you select a VI as an interrupt handler.
However, you can assign the same VI to a different interrupt by first
clicking another object in the Manage Interrupts
page to make the blue right-arrow button active again. |
| 106635 |
If you abort an ARM application
while a Simulate IO VI is running, the STOP
button on the front panel of the Simulate IO VI does not stop the
Simulate IO VI. Click the Abort button to
stop the Simulate IO VI. The next time you try to run the Simulate IO
VI, the VI runs and then stops. Click the Run
button again and the Simulate IO VI runs normally. |
| 42967 |
You cannot add Elemental I/O
items to the Project Explorer window if
you create a project using the Create New ARM Project
wizard and then drop an Elemental I/O Node on the block diagram before
interacting with the target in the Project Explorer
window.
Workaround—Save and close the
project. When you reopen the project, right-click the target in the Project
Explorer window and select New»Elemental
I/O
from the shortcut menu to add Elemental I/O items to the project. Then
right-click the item in the Elemental I/O Node on the block diagram and
select Select Elemental I/O»xxx
from the shortcut menu, where xxx
is the type of Elemental I/O you want to add. |
| 4G5A62BR |
If you hit the
<RESET> button on the board, the Processor
Status window may not reflect the actual processor
status correctly. |
| 4G5CTHBR |
When you create a target for a
generic processor,
the Interrupt Service Manager might not correctly configure the
interrupts. If you do not explicitly specify the microcontroller in the
General page of the Target
Properties dialog box, then the interrupt list on the Manage
Interrupts page of the Build
Specification Properties dialog box is empty.
Workaround—Right-click the
microcontroller target in the Project Explorer
window and select Properties from the
shortcut menu. Click the Target processor
pull-down menu and select the microcontroller, even if the correct
microcontroller target is already listed. |
| — |
Target syntax checking might
not happen until you edit an embedded VI. |
| — |
Target syntax checking does
not work on data types inside of clusters. |
| — |
Indicators that contain
variant data do not update on the front panel.
Workaround—Use a probe on the block
diagram to see the data. |
| — |
Because reading and writing of
strings, clusters,
and arrays is not synchronized in ARM applications, sometimes front
panel controls and indicators do not update properly.
Workaround—Set breakpoints on the
wires to the controls or indicators you are debugging. |
| — |
Probes on time stamps do not
work with non-instrumented debugging. |
| — |
The Embedded Module for ARM
Microcontrollers does not support creating a source distribution. If
you right-click Build Specifications in
the Project Explorer window and select New»Source
Distribution from the shortcut menu, LabVIEW displays an
error message in the Source Distribution Properties
dialog box. |
| — |
You can use integer values as
inputs to
expressions. However, functions that operate on the input use C
rounding rules when the input is integer. This means that each function
rounds down when returning its value to the rest of the expression. On
Windows desktop targets, the functions round to nearest integer
instead. |
| — |
When you use time stamp
constants or controls to
enter time stamps on the host PC, the time zone of the host machine is
used, but time stamps print out in GMT. This is because ARM targets do
not support time zones, so time stamps are always considered GMT,
regardless of the time stamp on the host PC. |
| — |
MathScript is unsupported on
embedded targets. |
| — |
The Timed Loop introduces
threads to the generated C code. However, the following parts of
LabVIEW are not thread-safe:
- Local and global variables
- Data types that use reference numbers (refnums)
- VI Server
- Queues and notifiers—Use the RT FIFO VIs to pass data
between Timed Loops instead
- Serial I/O
|
| — |
Indicators represented as
double data types do
not update for integer values. Change the representation of the
indicator by right-clicking the indicator, selecting Representation
from the shortcut menu, and selecting a different data type. |
| — |
A linker error occurs if you
include an external C
file in a project and the external C file has the same name as a VI in
the same project. |
| — |
Combo box controls that use the
string data type are unsupported. |
| — |
If you flatten data that
contains an extended
precision or complex precision floating-point data type, the flattened
data is incompatible with any other LabVIEW version or add-on except
the Embedded Module for ARM Microcontrollers. |
| — |
Any binary operation involving
a dynamic data type
and a non-scalar non-dynamic data type, such as a 1D array, does not
work correctly. |
| 44698H30 |
If you copy and paste global
variables, you receive a link error when you try to build the ARM VI
into an application. |
| — |
When you create a VI that uses
multiple global
variables, do not copy controls from one global variable to another
global variable. Controls copied from one global variable to another
global variable result in errors when you build the ARM VI into an
application. |
| — |
ARM VIs do not support the
values of Z, X, or T in
digital data controls and digital waveform controls. You can use values
of 0, 1, L, and H. |
| Windows
Vista Known Issues |
| ID |
Known Issue |
| 4EM8O000 |
If you uninstall µVision on
Vista without first releasing the µVision license, the license is
permanently lost.
Workaround—Before uninstalling
µVision on Vista, complete the following steps:
- Launch µVision.
- Select File»License Management.
- Select the license you want to uninstall from the Product
list and then click the Uninstall button.
- Following the instructions on screen and then close
µVision.
- Uninstall µVision.
|
| — |
The Embedded Module for ARM
Microcontrollers does
not run on the Windows Vista x64 Edition, the 64-bit version of the
operating system. |
| VIs,
Functions, and Structures Known Issues |
| ID |
Known Issue |
| 103664 |
The EKLM3S8962 Display VIs do
not include a VI to clear the display.
Workaround—You can clear the screen
by using EKLM3S8962 Display Set Foreground VI and EKLM3S8962 Display
Draw Rect VI. Set the color input of the
EKLM3S8962 Display Set Foreground VI to match the background color.
Then set the filled input of the
EKLM3S8962 Display Draw Rect VI to TRUE and draw a rectangle the size
of the whole display. |
| 106561 |
The template VIs for creating
custom Elemental I/O are located in the labview\Targets\NI\Embedded\eio\simulatedIOPlugins
directory. |
| 102752 |
The maximum combined total of
Timed Loops and
asynchronous Call Library Nodes that ARM applications can run
simultaneously is sixteen. |
| — |
ARM targets do not support port
0 with UDP communication.
The port output for the UDP Open function
always returns 0. Do not wire the port
output to other VIs or functions.
Workaround—Wire the port
input to the UDP Open function and to the next VI or function in the
diagram to maintain the proper port specification. |
| 4H3A5KX1 |
Using the Bessel Filter VI
causes compiler errors in the generated code. |
| 4H7C2000 |
The Escape XML and Unescape XML
VIs are unsupported. |
| — |
If you receive empty dynamic
data from functions
with two inputs and one output, check to see if you have a dynamic data
type wired to one input and an array of scalars wired to the other
input.
Workaround—Use the Convert to
Dynamic
Data Express VI to convert the scalar array to a dynamic data type
before you wire the input to the function. |
| — |
XNOR (Not XOR) and NAND (Not
And) functions do not yield correct data with integer array inputs. |
| — |
If you set the allow
empty tokens? input to TRUE in the Scan String for
Tokens function and the string starts with a delimiter, the offset
past token output and the token string
output contains incorrect values. |
| — |
Multi-dimensional arrays do not
work with Formula Nodes.
Workaround—Use the Inline C Node to
obtain a pointer to the first element in the array and do your own
index calculations. |
| — |
If you declare outputs inside
of a Formula Node, the Formula Node causes syntax errors in the
generated C code.
Workaround—Create an input with the
same name and type as the output so you do not have to declare the
output inside of a Formula Node. |
| — |
Call Library Nodes do not
check the error in input before
executing, which means a Call Library Node executes even if there is a
previous error. |
| — |
If you are using instrumented
debugging, the Wait
Until Next ms Multiple function does not change the timing if the
function updates inside of a loop.
Workaround—Turn off debugging or use
a Timed Loop and update the Period
terminal from within the Timed Loop. |
| — |
When you use a #include in an Inline C Node
to add a header file, the #include
is inserted in the middle of the C file, which can cause problems with
scoping.
Workaround—Use the Add/Remove
Header Files dialog box to add header files. Adding
header files using the Add/Remove Header Files
dialog box inserts the code at the top of the generated C file. |
| — |
Reserved words are used in the
generated C code.
Using these words as inputs or outputs in an Inline C Node can cause
unexpected behavior or the embedded application to crash.
Workaround—Change the name of the
variables to something else. |
| — |
When you wire two empty arrays
to a Build Array function, the output is an array of one element rather
than an empty array. |
| — |
The Call Chain function cannot
be used with Timed Loops, including any VIs called from within the
Timed Loop. |
| — |
When you drag and drop an
Elemental I/O Node from Project Explorer
window to the block diagram, the Run
button for the VI is not broken even though the Elemental I/O Node
requires an input. However, the Run
button breaks as soon as you make another edit to the VI that does not
wire an input to the Elemental I/O Node. |
| — |
The Draw Text at Point and the
Get Text Rect VIs are unsupported in ARM VIs. |
| — |
Dynamic Add/Remove Signals is
unsupported. |
| — |
You must use strict C code in
Formula Nodes you
use in ARM VIs. However, LabVIEW does not check the C syntax in the
Formula Node syntax while in edit mode. If you build a VI into an ARM
application that contains a Formula Node with non-strict C code,
LabVIEW returns a general error. |
| — |
The Delay Values Express VI and
the Trigger and
Gate Express VI do not function correctly in ARM VIs because
maintaining state in local variables between calls to a subVI is not
supported. |
| Building
VIs into Applications Known Issues |
| ID |
Known Issue |
| — |
You cannot build an empty VI
with debugging information. |
| 102393 |
If you move an ARM project
between computers, make
sure the directory path to LabVIEW is the same on both computers. If
the Embedded Module for ARM Microcontrollers is installed in different
locations on the computers, you receive a build error, PRJ_ADD_FILE. |
| 4EM8KA00 |
You cannot debug an application
if the top-level
VI you specify in the build specification is missing from the project.
If you try to debug or run a build specification with a missing
top-level VI, LabVIEW appears to do nothing. The wait mouse cursor
appears then disappears, and the target does not build of download.
Workaround—Verify that the VI you
specify as a top-level VI in the Source Files
category of the Build Specification Properties
dialog box is in the project. |
| 4GAB06HQ |
On the Communication
Options page of the ARM Build
Specification Properties dialog box, LabVIEW allows you
to select Serial port in the Console
Output section even if you also select Serial
port in the Debugging Mode
section on the Advanced debugging Options
page of the ARM Build Specification Properties
dialog box. Serial port debugging mode is not compatible with serial
port console output. |
| 4GDEG6HQ |
On the Application
Information page of the Build
Specification Properties dialog box, LabVIEW allows you
to select Use stack variables even if you
also select USB ULINK2 JTAG in the Debugging
Mode section on the Advanced debugging
Options page of the ARM Build
Specification Properties dialog box. USB ULINK2 JTAG
debugging mode is not compatible with stack variables. |
| 4H38HGBR |
If you are using the C style
function calls build
option, front panel control and indicator values in the top-level VI
are not generated correctly and are ignored.
Workaround—Use a top-level VI with
an empty front panel or do not use the C style function calls build
option. |
| — |
If you try to build an embedded
VI that is
password-protected into an embedded application, the build fails with
syntax errors if you enter the wrong password. |
| — |
If you wire an array to an
Inline C Node and set the Disable parallel execution
and Generate C Style Function Calls build
options on the Application Information
page, the generated C code cannot build. |
| — |
If you attempt to build an ARM
application with the Generate C style function calls
code generation option and the application contains subVIs with unwired
inputs, you receive syntax errors. |
| Debugging
Known Issues |
| ID |
Known Issue |
| — |
You cannot debug global
variables.
Workaround—Probe the wires coming
into or out of the global variable. |
| 59134 |
Controls that can update with
continuous values,
such as knobs and sliders, might not synchronize correctly. For
example, if you wire an indicator to a knob and move the knob to a
value, the indicator might not show the value of the knob.
Workaround—Use controls the require
discrete values, such as Numeric controls. |
| 40485 |
If you single-step through an
ARM VI and step into
an Elemental I/O Node, you will see ghost images of nodes on the block
diagram.
Workaround—Set a breakpoint after
the Elemental I/O Node and then single-step through the block diagram. |
| — |
Debugging reentrant VIs is not
supported. |
| Documentation
Known Issues |
| ID |
Known Issue |
| 106561 |
The help topic, Creating
Elemental I/O Plug-In VIs, states that you can find example plug-in VIs
in the labview\examples\lvemb\EDM\EIO\EIOSimulationExample
directory. The correct location is the labview\Targets\NI\Embedded\eio\simulatedIOPlugins
directory. |
| — |
Pressing the
<ESC> key in the Build Error
dialog box displays the Error Details
dialog box. |
| 4BPCFOWD |
The Detailed Help
link in the Context Help window does not
open the correct topic for the Inline C Node.
Workaround—Open the LabVIEW
Help by selecting Help»Search the LabVIEW Help.
Click the Index tab and select Inline
C Node. |
| — |
The Help
button in the Add/Remove Headers dialog
box does not open the correct help topic.
Workaround—Open the LabVIEW
Help by selecting Help»Search the LabVIEW Help.
Click the Index tab and select Add/Remove
Headers dialog box (Embedded Targets, PDA, TPC). |
| — |
The Detailed Help
link in the Context Help window does not
open the correct topic for the Real-Time FIFO VIs.
Workaround—Open the LabVIEW
Help by selecting Help»Search the LabVIEW Help.
Click the Index tab and select RTFIFO
VIs (Embedded Targets). |
| — |
The ARM VIs reference topics in
the LabVIEW Help do not contain the Place
on the block diagram or the Find on the
Functions palette buttons. |
| — |
ARM-specific VIs do not contain
the Open example buttons. ARM-specific
examples are available in the LabVIEW\examples\arm
directory. Open the .lvproj
file to open the project and the example ARM VI. |
| 4D5GDNHQ |
The File Mapping
dialog box is called the VI Mapping
dialog box in the documentation, which was the name of the dialog box
in previous versions of the software. In addition to mapping VIs, you
also can now map external files, so the VI Name
text box is now the File Name textbox. |