Series 3700A System Switch/Multimeter Reference Manual
Section 10: Instrument programming
3700AS-901-01 Rev. D/June 2018
10-15
Fundamentals of programming for TSP
Introduction
To conduct a test, a computer (controller) is programmed to send sequences of commands to an
instrument. The controller orchestrates the actions of the instrumentation. The controller is typically
programmed to request measurement results from the instrumentation and make test sequence
decisions based on those measurements.
To take advantage of the advanced features of the instrument, you can add programming commands
to your scripts. Programming commands control script execution and provide tools such as variables,
functions, branching, and loop control.
The Test Script Processor (TSP
®
) scripting engine is a Lua interpreter. In TSP-enabled instruments,
the Lua programming language has been extended with Keithley-specific instrument control
commands.
What is Lua?
Lua is a programming language that can be used with TSP-enabled instruments. Lua is an efficient
language with simple syntax that is easy to learn.
Lua is also a scripting language, which means that scripts are compiled and run when they are sent
to the instrument. You do not compile them before sending them to the instrument.
Lua basics
This section contains the basics about the Lua programming language to allow you to start adding
Lua programming commands to your scripts quickly.
For more information about Lua, see the
). Another source of useful
information is the
), created for and by users of Lua programming
language.
Comments
Comments start anywhere outside a string with a double hyphen (
--
). If the text immediately after a
double hyphen (
--
) is anything other than double left brackets (
[[
), the comment is a short comment,
which continues only until the end of the line. If double left brackets (
[[
) follow the double hyphen (
--
[[
), it is a long comment, which continues until the corresponding double right brackets (
]]
) close
the comment. Long comments may continue for several lines and may contain nested
[[
. . .
]]
pairs. The table below shows how to use code comments.
Using code comments
Type of
comment
Comment
delimiters
Usage
Example
Short
comment
--
Use when the
comment text fits
on a single line.
--Turn off the front-panel display.
display.lightstate = display.STATE_LCD_OFF
Long
comment
--[[
]]
Use when the
comment text is
longer than one
line.
--[[Display a menu with three menu items.
If the second menu item is selected,
the selection will be given the value
Test2.]]