Buffer read operations – Measurement Computing TempScan/1100 User Manual

Page 95

Advertising
background image

TempScan / MultiScan User's Manual

889897

System Operation 5-5

Time/Date Stamping of Stop Event (Field 6). Absolute ASCII format:

hh:mm:ss.mil,MM/DD/YY

.

Relative ASCII format:

+hh:mm:ss.mil,DDDDDDD

. Absolute Binary format:

hmstuvwMDY

. Absolute

Binary format:

hmstuvwDEF

. This field represents the absolute or relative Time/Date value when the

Stop event occurred for the currently-read Trigger Block. If the Stop event has not yet occurred at the
time the

U6

command was issued, this field will have the following value:

• Absolute ASCII value

00:00:00.00,00/00/00

,

• Relative ASCII value

+00:00:00.00,0000000

,

• Absolute Binary value

00 00 00 00000000 00 00 00

(2-2-2-8-2-2-2 digits), or

• Relative Binary value:

00 00 00 00000000 000000

(2-2-2-8-6 digits).

Position of End Scan Pointer (Field 7). Format:

±±±±xxxxxxx

. This field represents the End scan

location in the currently-read Trigger Block. This Read Pointer is relative to the Trigger scan point,
which is always oriented at logical scan location 0. Since the End scan must always occur after the
Trigger event, this Read Pointer will always have a positive integer value. If the End scan has not yet
occurred at the time the

U6

command was issued, this field will have the undefined value of

-0999999

.

This field will always have the same value as the Position of Stop Event Pointer field unless Post-Stop
scans have been configured; that is, if the Post-Stop

stop

parameter of the Set Counts (

Y

) command

has been set to a non-zero value. In this case, this Position of End Scan Pointer field will have a
greater value than the Position of Stop Event Pointer field.

Status of Current Trigger Block (Field 8). Format:

xx

. This field represents the status of the

currently-read Trigger Block. If the currently-read Trigger Block is still being acquired, then this field
will have the value

00

. If the currently-read Trigger Block has been completely acquired and has

terminated normally, then this field will have the value

01

. However, if the currently-read Trigger

Block has prematurely terminated (due to user intervention), then this field will have the value

02

.

It should be noted that Trigger Blocks are not assigned a Trigger Block number as such. These Trigger
Block
numbers refer to locations relative to the currently-read Trigger Block. Consequently, the Trigger
Block
currently being read is always Trigger Block 1. Meanwhile, the Trigger Block currently being written
is always the value of the Number of Trigger Blocks Available field.

Buffer Read Operations

As mentioned earlier, the TempScan/1100 or MultiScan/1200 Acquisition Buffer is a FIFO (First-In First-
Out) buffer. In other words, the oldest scan data to be written into the buffer is the first scan data to be read
from the buffer when a read operation is performed. Then once the scan data is read from the buffer by the
controller, that data is erased from the buffer.

The Acquisition Buffer data is read via the Read Buffered Data (

R

) command. You can use this command

to read anywhere from one scan to all the scan data currently residing in the buffer. This command has the
following valid options:

• Read the oldest scan currently residing in the Acquisition Buffer (

R1

).

• Read the oldest complete Trigger Block currently residing in the Acquisition Buffer (

R2

).

• Read all the scan data currently residing in the Acquisition Buffer (

R3

).

When a Read Buffered Data (

R

) command is issued, the TempScan/1100 or MultiScan/1200 checks to see

if the read request can be fulfilled. If so, the requested scan data is moved from the Acquisition Buffer to
the Output Queue where it waits until the controller initiates transfer. However, if either of the following is
true – No channels are configured, or the amount of scan data requested is not available – then the read
request will not be fulfilled, and a Conflict Error will be posted. The

R1

and

R3

commands require that at

least one scan be available, and the

R2

command requires that at least one complete Trigger Block be

available.

The Scan Available Bit (Bit 3) in the Status Byte Register (

STB

) can be used to determine whether or not

the Acquisition Buffer is empty. This bit is set when at least one scan is available in the buffer. The
following User Status (

U

) command query – Query the Buffer Status String (

U6

) – may also be used to

retrieve more-detailed information about the state of the Acquisition Buffer.

Advertising
This manual is related to the following products: