Status and Events
TLS 216 Programmer Manual 3–5
Queues
The logic scope status and event reporting system contains two queues: the
Output Queue and the Event Queue.
The logic scope stores query responses in the Output Queue. It empties this
queue each time it receives a new command or query message after an End Of
Message (EOM). The controller must read a query response before it sends the
next command (or query) or it will lose responses to earlier queries.
WARNING. When a controller sends a query, an <EOM>, and a second query,
the logic scope normally clears the first response and outputs the second while
reporting a Query Error (QYE bit in the ESER) to indicate the lost response. A
fast controller, however, may receive a part or all of the first response as well. To
avoid this situation, the controller should always read the response immediately
after sending any terminated query message or send a DCL (Device Clear)
before sending the second query.
The Event Queue stores detailed information on up to 20 events. If more than
20 events stack up in the Event Queue, the 20th event is replaced by event code
350, “Too many events.”
Read the Event Queue with the EVENT? query (which returns only the event
number), with the EVMSG? query (which returns the event number and a text
description of the event), or with the ALLEV? query (which returns all the event
numbers along with a description of the event). Reading an event removes it
from the queue.
Before reading an event from the Event Queue, you must use the *ESR? query to
read the summary of the event from the SESR. This makes the events summa-
rized by the *ESR? read available to the EVENT? and EVMSG? query, and
empties the SESR.
Reading the SESR erases any events that were summarized by previous *ESR?
reads but not read from the Event Queue. Events that follow an *ESR? read are
put in the Event Queue but are not available until *ESR? is used again.

The Output Queue

The Event Queue