0% found this document useful (0 votes)
42 views60 pages

Mod9 Custom Coding

Uploaded by

hl.ascs
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views60 pages

Mod9 Custom Coding

Uploaded by

hl.ascs
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 60

J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 1


J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 2


J750 Test System

Module Overview

• This module covers the concepts and activities used to create and use
interpose functions in an IG-XL workbook.
• This module contains the following sections:
• Visual Basic Overview Pg 3
• Creating Interpose Functions Pg 29
• Using Visual Basic Editor for Debug Pg 45
• Review Pg 55
• Lab 5 - Exercise 3 Pg 57 in Lab Section

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 3


J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 4


J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding
Visual Basic Overview

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 5


J750 Test System

Visual Basic for Applications

• Visual Basic for Applications (VBA) is


the source programming language for a
J750 Test Program.
• Most of the code is already provided,
i.e., Templates, etc. However, there
may be requirements for user-written
code.
• Typical examples for coding are:
– Interpose Functions
– Custom Templates
– Custom Test Functions

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 6


J750 Test System

Visual Basic for Applications

• The Visual Basic Editor (VBE)


provides the user interface to Visual
Basic code.
• Visual Basic Editor may be started
from Data Tool by either:
– Alt + F11
– Tools Menu

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 7


J750 Test System

Visual Basic Editor

• The typical Visual Basic Editor


display has three (3) windows:
– Project Explorer Window
– Code Window
– Immediate Window

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 8


J750 Test System

VBE - Project Explorer

• The Project Explorer window


displays three project folders
holding code associated with:
– DataTool (DataTool.xla)
– Template (Template.xla)
– VBAProjects (user projects,
i.e., test program workbooks)
• To access the folders within each
project, it is necessary to expand
the column using the (+) that is to
the left of each segment.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 9


J750 Test System

Projects in Project Explorer

• DataTool.xla DataTool code (password protected)

• Template.xla : Template source code.


– Modules : Contain the VB code for the functions
– Forms Files: Contain the Graphical User Interface
– Class Files : Contain the variables
– Reference : Call function to the Datatool (reference to used
functions from the DataTool)
• VBAProject (mylab4.xls) Test Program Workbook
– There may be multiple folders if multiple workbooks are open at one time

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 10


J750 Test System

VBE - Code Window

• The Code Window of the Visual


Basic Editor may be used to:
– Display existing code, i.e.
Template code
– Create new code, i.e. interpose
functions, etc.
• To display template code:
1. Expand Modules Folder of
Template Project (Template.xla)
2. Double left-click on a template,
i.e. BoardPmu_T
3. Code for template will be
displayed in Code window
• Using the Code Window to create
new code will be discussed later in
this module.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 11


J750 Test System

VBE - Immediate Window

• The Immediate Window of the


Visual Basic Editor may be used to
enter and execute Visual Basic
code in real-time.
• Type in statement + Enter

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 12


J750 Test System

Visual Basic for Test

• Visual Basic for Test (VB-Test): This is the programmer’s interface to the
J750 hardware and tester executive functions.

• It is implemented as a Visual Basic interface to the underlying software


drivers of the tester.

• Use Excel’s Visual Basic Editor to write your own interpose or


customization procedures using the methods and properties of VB-Test.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 13


J750 Test System

VBT Model

• The VBT Model has two main


components: VBT
 Tester Hardware
 Digital
Digital Subsystem
TheHdw TheExec
 (Instruments)
All other programmable
hardware: i.e., BPMU,
PPMU, DPS, PinLevels,
MTO, CTO, UtilityBits (Instruments) Digital
 Tester Executive functions
• Two global VB handles are used to
access these components:
 TheHdw
 TheExec

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 14


J750 Test System

TheHdw Object

TheHdw BPMU

PPMU

Digital HRAM DPS

• TheHdw is the highest-level object that PatGen PinLevels


provides access to objects relating to
the Test System Hardware Patterns MTO

Relays CTO
• The following line of code would rerun
the currently loaded pattern:
Timing UtilityBits

TheHdw.Digital.PatGen.Restart

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 15


J750 Test System

TheHdw Object

• TheHdw is an object that provides


access to Properties and Methods TheHdw
relating to the test system
hardware.
• The Properties and Methods for
TheHdw are themselves objects
corresponding to the instruments (Instruments) Digital
used for testing.

Properties Properties
• A Property is a named attribute of
an object. Methods Methods
• A Method is a procedure that can
act on an object.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 16


J750 Test System

TheHdw - Instruments

• The following tester components are programmed through the TheHdw object.
– BPMU
– PPMU
– DPS
– PinLevels
– MTO
– CTO
– UtilityBits

• For example, TheHdw.DPS is the path to the Properties and Methods for the
DPS.
– TheHdw.DPS.chans(0).CurrentLimit = 0.100
Set the CurrentLimit parameter (Isc) of DPS0 to 100ma

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 17


J750 Test System

TheHdw - Digital

• Programming of the Digital Subsystem of the J750 is also provided through the
TheHdw object.
– TheHdw.Digital
• The Digital object, in turn, provides access to the elements of the Digital
Subsystem via their corresponding objects:
– HRAM TheHdw.Digital.HRAM.----
– Patgen TheHdw.Digital.Patgen.----
– Patterns TheHdw.Digital.Patterns.----
– Relays TheHdw.Digital.Relays.----
– Timing TheHdw.Digital.Timing.----
• Example - Rerun the current pattern - same as pressing Restart button in Pattern
Control
– TheHdw.Digital.PatGen.Restart
• Example - Load pattern file ‘a.pat’ - same as using Load in Pattern Control
– TheHdw.Digital.Patterns.Pat(“a.pat”).Load

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 18


J750 Test System

VBT Help

• Producing a Visual Basic statement


to program a tester component can
be complex.
• VB-Test Help can offer assistance
and information.
• A simple method for accessing VB-
Test Help
1. Start IG-XL Help
2. Use Find.
Enter ‘Complete List’
3. Display
• This will display ‘Complete List of
Objects, Properties, and Methods’
– Provides a starting point to work
your way through the hierarchy
of TheHdw or TheExec objects.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 19


J750 Test System

VBT - Pins vs. Chans

• Most of the hardware objects offer two (2) different ways to read from or write to
the tester hardware:
1. By DUT pin:
TheHdw.DPS.Pins("Vdd").ForceValue(dpsPrimaryVoltage) = 3.9
\\ Set Vps of Power pin ‘Vdd’ to 3.9
2. By Channel:
TheHdw.DPS.Chans(0).ForceValue (dpsAlternateVoltage) = 3.9
\\ Set Alt of DPS0 to 3.9

DUT pin programming is recommended as it handles multisite testing automatically.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 20


J750 Test System

Visual Basic - With Construct

• Visual Basic’s “With” construct can simplify programming:


With <object-path>
statements
End With
• The object-path will be applied to all relative references within the With construct
– Relative references begin with ‘.’, i.e., .ForceValue(dpsPrimaryVoltage)
• For Example, the following code:
With TheHdw.DPS.Pins(“Vdd”)
.ForceValue(dpsPrimaryVoltage) = 3.1
.CurrentLimit = .45
End With
Is the same as:
TheHdw.DPS.Pins(“Vdd”).ForceValue(dpsPrimaryVoltage)= 3.1
TheHdw.DPS.Pins(“Vdd”).CurrentLimit = .45

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 21


J750 Test System

Visual Basic - With Construct


• Allows programming to setup a block of code that focuses on a particular instrument
or set of pins or parameter.
• Object references that are not relative to the With Construct’s object reference must
be absolute references (complete path).

With TheHdw.Pins("db1")
.PinLevels.ModifyLevel(chDriveHi) = 3.0 // relative

.Timing.ReadEdgeTimingRam(time_PHLZ) // relative

// Next statement is different object path

TheHdw.Digital.Timing.Chans(29).EdgeTime(chEdgeR0) = 6.5*ns

.Timing.WriteEdgeTimingRam (time_PHLZ) // relative

End With

Note: Timing edges are read from hardware to memory, modified in memory and
then written back to the hardware.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 22


J750 Test System

Pins Object

• The ‘Pins’ object allows programming to focus on the DUT pins rather than the
instruments to be used. Many of the objects referenced from the Pins object are the
same instrument objects referenced by TheHdw.

• Both statements below modify the chDriveHi parameter of pin db1.


TheHdw.Pins("db1").PinLevels.ModifyLevel(chDriveHi) = 3.0
TheHdw.PinLevels.Pins(“db1”).ModifyLevel(chDriveHi) = 3.0

• Useful when working with a wide range of pin-related parameters. See previous slide -
both PinLevels object and Timing object are being accessed for pin ‘db1’. Also
note - Timing is being accessed directly from Pins rather than through the Digital
object.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 23


J750 Test System

TheExec Object

• TheExec is a high-level object that


provides access to objects relating to TheExec
the Test System Executive.
Datalog
• For example, accessing the Datalog
object can provide the same types of
results as using the Datalog Tab in the DataManager
DataCollect Setup Window.

• The following line of code would cause Flow


a line of output to be added to the
Datalog output:
RunOptions
TheExec.Datalog.WriteComment(
“Functional Relay has been
opened”) Sites

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 24


J750 Test System

Building a VB Statement

• When entering code, in the


Immediate Window or Code Window,
the statement may be built item by
item with the help of drop-down lists.

1. Enter high-level object, e.g. TheHdw


followed by a period (‘.’), After the
period is entered a drop-down list
appears. This list will be the
available choices at this point.

2. Select choice (Digital) with a


double left-click. The choice is added
to the statement. Enter a period.
A new drop-down list appears.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 25


J750 Test System

Building a VB statement

3. Select choice (Relays) with a double


left-click. Enter a period. A new
drop-down list appears. Select
choice (pins) with a double left-click.
Enter a period. A drop-down list
appears. And so on.

4. Eventually, no more drop-down lists


appear when a period is entered.
The statement has reached the end
of its path. Delete the last period.

5. Press Enter Key and the statement


will be translated and executed.

3. Sometimes an error message may


be displayed. (See next slide)

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 26


J750 Test System

Building a VB Statement

• Some objects have parameter lists.


Some do not. A missing parameter
list will cause an error.

• In this case, the ‘pins’ object has a


parameter list. The drop-down
parameter lists did not indicate that
a parameter list was needed.

• Instead of entering a period after


each object, first enter a space
character. If the object does not
have a parameter list, nothing will
change. Delete the space
character and add the period.

• If the object has a parameter list,


the list will be displayed. Enter the
parameters within parentheses.
Complete the statement and press
Enter. Now the statement will
translate and execute.
PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 27
J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 28


J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding
Creating Interpose Functions

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 29


J750 Test System

Interpose Functions - Overview

• Teradyne Templates provide a basis for many general test conditions.

• Some testing conditions will require actions beyond that of the standard Teradyne
Template. Consequently user-written code will be necessary.

• These requirements are typically handled as:


 Interpose Functions

 Custom Templates

 Custom Test Functions

• We will focus on the creation of Interpose Functions.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 30


J750 Test System

Interpose Functions - Overview

• Interpose Functions can satisfy most customization needs including:


 modifying the behavior of a template without modifying the code.
 making calls to the drivers, to get and set driver values.

• Arguments can be passed to an interpose Function.

• When possible, it is recommended that you use interpose functions instead of


creating customized templates.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 31


J750 Test System

Calling Interpose Functions

• The following are conditions (events) in the body of the typical template where an
interpose function may be called:
1. StartOfBodyF: Called as the first operation in the Template body.

2. PrePatF: Called before each pattern burst.

3. PreTestF: Called before the test is executed or the measurement is made.

4. PostTestF: Called after the test is executed or the measurement is made.

5. PostPatF: Called after each pattern burst.

6. EndOfBodyF: Called as the last operation in the Template body.

7. PatFlagFunc: Called to modify tester setups while the pattern is running.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 32


J750 Test System

Calling Interpose Functions

• An Interpose Function is typically


called by entering its name in one
of the Interpose Function Value
fields in an instance.
• An Interpose Function may require
a parameter list. This comma-
separated list is entered as strings
of characters.
• In this example, the function,
PrintStuff, is being executed at
each of the six points available in a
template. The output, on the next
slide, will show the relative position
of each of the function calls.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 33


J750 Test System

Calling Interpose Functions

• The order of execution for the


Interpose Functions within the Body
of a template is:
1. StartOfBody
2. PreTest
3. PrePat
4. PostPat
5. PostTest
6. EndOfBody

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 34


J750 Test System

PatFlagFunc

• The PatFlagFunc Tab of the


Functional Test Template includes a
PatFlagF parameter, specifying a
function to be called when certain
flag conditions are met. The
PatFlagF parameter is identical to
the Interpose Functions.
• The WaitFlags will identify the
condition(s) that must be met for this
special Interpose Function to be
executed.
• The Interpose Function called by
PatFlagF usually needs to reset the
WaitFlags condition(s) that called it.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 35


J750 Test System

Adding Interpose Functions to a Workbook

• New code, i.e. Interpose Functions,


are added to a workbook as .bas files
and are stored in the Modules folder
of the VBAProject.
• Interpose Functions may be added to
a workbook by:
– Importing a module
– Creating the function with VBE
• To import a module:
1. Open the Visual Basic Editor
2. Select the workbook folder in
Project Explorer
3. Left-click File, left-click Import File
4. Select file (*.bas), left-click Open
• Creating an interpose function is
discussed in the following slides.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 36


J750 Test System

Creating Interpose Functions

• The following steps are used to create an interpose function with VBE:
1. Open VBE
2. Select workbook folder
3. Insert Module
4. Code the Function Declaration statement
5. Add function code

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 37


J750 Test System

Function Declaration Statement

• An Interpose Function has the following structure:


Public Function <name> (argc As Long, argv() As String) As Long
<function code>
End Function

• The ‘Public Function ….’ line is the Function Declaration. In the example below, the
function ‘SetFlag’ is being declared.
Public Function SetFlag(argc As Long, argv() As String) As Long

• The portion in parentheses after the function name will always be the same
(see next slide)
(argc As Long, argv() As String) As Long

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 38


J750 Test System

Function Declaration Statement - (Cont.)

• The code in parentheses after the function name is the function’s parameter list.
– Where argc is a Long indicating the number of arguments passed to the
function.
– Where argv() is an Array of Strings, one element for each argument
passed.

Example: Parameter list = “VCC”, “3.5”, “100ma”


argc = 3
argv() = “VCC” argv(0) = first element
“3.5”
“100ma”

• If the function does not processes input arguments, the parameter list is ignored.
• If the function has parameters, the list is automatically translated into the argc, argv
format and passed to the function.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 39


J750 Test System

Interpose Function without Arguments

• The example function Demo does not process any input arguments:

Public Function Demo(argc As Long, argv() As String) As Long


TheExec.Datalog.WriteComment ("This is a Test")
End Function

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 40


J750 Test System

Interpose Function with Arguments

• The function SetFlag processes one input argument.


If the argument = “cpuA” then that flag will be set.
If the argument = any other string, i.e. “none” then it will not set the cpuA flag.

• There must be at least one argument or a ‘subscript out of range’ error will occur
when referring to argv(0) in the function code:

Public Function SetFlag(argc As Long, argv() As String) As Long


If argc > 0 Then
If argv(0) = "cpuA" Then
Call TheHdw.Digital.Patgen.Continue( cpuA, 0)
End If
TheExec.Datalog.WriteComment(“ CPU Flags = “ _
+ Cstr(TheHdw.Digital.Patgen.CpuFlags))
End If
End Function

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 41


J750 Test System

Visual Basic Operations

• Three common Visual Basic operations are used in the line below:
TheExec.Datalog.WriteComment(“ CPU Flags = “ _
+ Cstr(TheHdw.Digital.Patgen.CpuFlags))

1. Continuation
To put a single VB statement on multiple lines, insert a Continuation
Operator (_) into the line. Otherwise, the translator will interpret the Carriage
Return as a premature end of the statement.
3. Concatenation of Strings
To concatenate strings, use the (+) operator: “...“ + Cstr(...)
3. Conversion from Long to String
Cstr(TheHdw.Digital.Patgen.CpuFlags)
Cstr is a VB function that converts the input expression into a String
In this example, CpuFlags is a value of type Long

• Refer to MicroSoft Visual Basic Help for details and operations.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 42


J750 Test System

Using Interpose Functions - Example

• For this example, the SetFlag function is


being written to be used with the pattern
7408_FullPat_ICC.

• 7408_FullPat_ICC is being used with


the test instances DynamicIcc08 and
FullFunc08.

• For both instances, the SetFlag function


will be called prior to running the pattern
- PrePatF

• For DynamicIcc08, the input parameter


will be ‘cpuA’.

• For FullFunc08, the input parameter will


be ‘none’

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 43


J750 Test System

Using Interpose Functions - Example (Cont.)

• Pattern 7408_FullPat_ICC is shown


here.

• If parameter list <> cpuA, then the


function will not set cpuA. As a
result, the pattern will execute
vector 0 and then jump to vector 5
and execute the functional test
portion of this pattern.

• If parameter list = cpuA, then the


function will set cpuA. As a result,
the pattern will go from vector 0 to
vector 1 for a dynamic loop for the
ICCH measurement, then proceed
to a loop to measure ICCL and then
jump the last vector and stop.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 44


J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding
Using Visual Basic Editor for Debug

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 45


J750 Test System

Visual Basic Code Debug - Overview

• The following activities are involved in using VBE for code debug:

1. Open VBE
2. Set Breakpoint at line of interest
3. Start by a Left-click Debug Run in Datatool
 Program stops at line with the breakpoint
4. View values of variables
5. Change values of variables in Immediate Window

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 46


J750 Test System

Open VBE

• Open the Visual Basic Editor by either of the following:


– (Tools) -> (Macro) -> (Visual Basic Editor)
– Alt + F11

• Display the template code or user-written function code in the Code Display
window of VBE.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 47


J750 Test System

Set Breakpoint in VBE Code

• A breakpoint in VB code may be set by a left-click in the gray area next to the VB
line where the breakpoint is required.
• A dot in this area indicates that a breakpoint has been set for this line.
• The breakpoint may be removed by a left-click in the gray area.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 48


J750 Test System

Run to Breakpoint

• After setting a breakpoint in VB code, the Debug Run button of Datatool can be
used to step to the breakpoint.
• A yellow arrow and yellow shading on the line, indicate that the breakpoint has
been reached. Note: The highlighted statement has not been executed yet.
• The breakpoint may be removed by another left-click in the same gray area.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 49


J750 Test System

Displaying Variable Contents

• While stopped at a breakpoint in VB code, the contents of any variables in the


function may be displayed. The variables do not have to be on the current
breakpoint line.
– Move cursor over the variable
– Variable contents will be displayed. (left-click and drag are not required to
select the variable).

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 50


J750 Test System

Changing Variable Contents

• While stopped at a breakpoint, variable contents may be changed in the


Immediate Window before executing the current (highlighted ) statement.

• After typing a command in the Immediate Window, press the Enter key to execute
the command in the Immediate Window.. In this case, argv(0) will be changed
from its original value to “cpuA”.

• When code execution moves on from this breakpoint, the new value of argv(0) will
be used.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 51


J750 Test System

Debug Run Buttons

• While stopped at a breakpoint in VB code, the Debug Run buttons of Datatool are
no longer enabled. The Debug Run buttons of VBE should be used

step to next statement


step to next breakpoint (if any)
• ‘Step to next statement’ has been used here to move past the breakpoint

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 52


J750 Test System

Debug Run Buttons

• When breakpoints are set in both


the flow table and VB code, Debug
Run in Datatool is used to step to
the breakpoint in the code.
• At this point, the Debug Run
buttons will cycle through the code
in the function where the VB code
trap is located but will not exit from
the code.
• To exit the code, step to the
beginning of the function. Then the
Debug Run buttons of Datatool
would become enabled again.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 53


J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 54


J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding
Review

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 55


J750 Test System

Custom Coding: Review/Exercise

1. Identify and describe the three typical Visual Basic Editor display windows.

- Project Explorer Window - used to display three key IG-XL folders: DataTool (for DataTool
code), Template (a subsystem of all IG-XL template code) and VBAProjects (user test
program workbook).
- Code Window - is used to display existing code (template code) and used to create new
code such as interpose functions.
- Immediate Window - The Immediate window of the Visual Basic Editor may be used to enter
and execute Visual Basic code in real-time

2. List and describe the components of the Visual Basic for Test programmers
interface model.
- the VBT model has two main components, Hardware (TheHdw) which is made of two J750
subsystems: Digital and Instruments (PPMU, BPMU, DPS, Pin Levels, MTO, CTO,
Utility Bits etc); and the second component being the tester executive
(operating system) functions.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 56


J750 Test System

Custom Coding: Review/Exercise

3. Describe the purpose of the Instruments and Digital components of TheHdw object
and describe the function of their properties and methods.
- TheHdw object provides J750 hardware access at the highest level, while the properties and
methods are objects that correspond to the J750 instruments and digital subsystems.
Properties are named attributes of the object, while a method is a procedure that can act
on the object.

4. Describe the primary purpose for using the Visual Basic “With” construct.

- the With construct can simplify programming since the <object-path> will be applied to all
relative reference statements in that block of code which allows the programming to focus
on a particular instrument or a set of pins or a parameter.
5. Describe the purpose of the high-level object TheExec.
- “TheExec” high level object provides access to the Test System Executive (the J750 OS)
such as the Datalog, DataManager, Flow, RunOptions and Site objects for providing
alternative executive functionality in the program debug process.

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 57


J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 58


J750 Test System

J750 Programming
V3.40

Training Manual
Module 9
Custom Coding
Lab 5 - Exercise 3

Go to Pages 57 to 60 in Lab Section to


complete Lab 5 Exercise 3
PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 59
J750 Test System

This slide is blank

PN 553-405-50 Rev - August 2002 J750 Programming - V3.4 Custom Coding - 60

You might also like