3. Send "SI SYSTEM" and a carriage return to get the attention of the System Instrument.

4. Send < CTRL-C> to clear the system.

5. Send "*RST" and a carriage return to put the System Instrument in a known state.

 

The program must then send the binary data. This block of data should include

 

the command "DIAG:DOWN:CHEC" followed by the address to download to

 

and an IEEE 488.2 arbitrary block header. This block header can be either

 

definite or indefinite. The advantage of using an indefinite block header is that

 

you do not need to know the length of the data block. The indefinite block

 

header is # 0. With the DIAG:DOWN:CHEC command an indefinite block is

 

terminated with the "!" character followed by a carriage return. The "!" character

 

is not considered part of the block. A definite block only requires the ASCII

 

carriage return character as terminator. The definite block starts with # . This is

 

followed by a single digit that shows the number of digits in the length field,

 

which is followed by the actual length of the block, not counting the header. For

 

instance, a block of 1000 bytes would have a definite block header of # 41000.

 

Due to the formatting required, the size of the block when using the

 

DIAG:DOWN:CHEC command is twice the length of the data in bytes.

 

Once the block header has been sent, the actual data is sent. Since the buffer

 

size of the System Instrument RS-232 Interface is limited to 79 bytes, the buffer

 

must be flushed (passed to an instrument parser) before it reaches 79 bytes. This

 

can be done by sending a carriage return. The first carriage return should be

 

included in the binary file after the buffer header. Sending it before this would

 

result in the parser determining that there are not enough parameters and

 

producing an error condition. Once transmission of the actual data begins, a

 

carriage return should be included after every 78 bytes.

NOTE

 

The carriage returns are not considered part of the block count.

 

 

 

After the last byte of data, there must be a carriage return to terminate the

 

transmission for a definite block or a "!" and carriage return for an indefinite

 

block.

Sending Binary Data Over RS-232 D-3

Page 235
Image 235
Agilent Technologies E1300B, E1301B, 75000 SERIES B user manual Sending Binary Data Over RS-232 D-3