58
Keysight P9241/42/43A Oscilloscopes SCPI Programmer's Guide
4
Sequential (Blocking) vs. Overlapped Commands
Pausing Programs
Until Sequential
(Blocking)
Commands are
Complete
Sequential (blocking) commands do not prevent additional commands from being
sent to the queue or cause the remote program to wait. For example, if your
program does something like:
myScope.WriteString ":DIGitize"
Debug.Print "Signal acquired."
The "Signal acquired" message will be written immediately after the :DIGitize is
sent, not after the acquisition and processing is complete.
To pause the program until a sequential (blocking) command is complete, you
must wait for a query result after the sequential (blocking) command. For example,
in this case:
Public strQueryResult As String
myScope.WriteString ":DIGitize;*OPC?"
strQueryResult = myScope.ReadString
Debug.Print "Signal acquired."
The "Signal acquired" message will be written after the acquisition and processing
is complete. The *OPC? query is appended to :DIGitize with a semi-colon (;), which
essentially ties it to the same thread in the parser. It is immediately dealt with once
:DIGitize finishes and gives a "1" back to the program (whether the program uses it
or not), allowing the program to move on.
When using a query to wait until a sequential (blocking) command is complete, it
is possible for the sequential (blocking) command execution to take longer than
the I/O timeout, in which case, there will be a timeout error while waiting for the
query results. You can increase the I/O timeout or have your program poll the
Status Byte Register using the IO libraries' unblocked ReadSTB function to wait for
execution completion.
Using Device Clear
to Abort a
Sequential
(Blocking)
Command
When sequential (blocking) commands take too long or fail to complete for some
reason, you can send a Device Clear over the bus to clear the input buffer and
output queue, reset the parser, and clear any pending commands.
See Also
•
•
"*ESR (Standard Event Status Register)"
•
Summary of Contents for P9241
Page 1: ...Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide...
Page 6: ...6 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide...
Page 36: ...36 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 1 What s New...
Page 41: ...Setting Up 2 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 41...
Page 44: ...44 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 2 Setting Up...
Page 222: ...222 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 7 Root Commands...
Page 244: ...244 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 8 ACQuire Commands...
Page 256: ...256 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 9 CALibrate Commands...
Page 278: ...278 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 10 CHANnel n Commands...
Page 328: ...328 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 15 EXTernal Trigger Commands...
Page 386: ...386 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 17 FUNCtion m Commands...
Page 390: ...390 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 18 HCOPY Commands...
Page 416: ...416 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 20 MARKer Commands...
Page 498: ...498 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 21 MEASure Commands...
Page 532: ...532 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 22 MTESt Commands...
Page 572: ...572 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 24 SAVE Commands...
Page 900: ...900 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 28 TIMebase Commands...
Page 1080: ...1080 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 31 WGEN w Commands...
Page 1142: ...1142 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide 34 Error Messages...
Page 1344: ...1344 Keysight P9241 42 43A Oscilloscopes SCPI Programmer s Guide Index...