Wait for Done
This is the procedure to wait for command completion and check for error.
1 Wait for Command/Parameter Ready true.
2 Wait for Done true.
3 If Err* = 0 , handle error.
Complex Sequences
A robust procedure for sending a query and reading the response would
look like this:
1 Send Command.
2 Wait for Done.
3 If no error then Read Response.
Multiple commands may be sent with a test for errors at the end of the
sequence. This example sends three commands before checking for errors.
1 Send Command.
2 Send Command.
3 Send Command.
4 Wait for Done.
DSP Protocol
When a controller writes to the Command register, a DSP interrupt is
generated. When responding to this interrupt, the DSP will follow this
procedure.
1 Clear the Done bit.
2 Read and decode the command from the Command register.
3 Read any parameters from the Parameter registers and RAM.
4 If a response data is required:
5 a. Write the data to the Query Response register, Parameter registers,
and RAM.
6 b. Set Query Response Ready true.
7 Set Command/Parameter Ready true.
8 Finish command execution.
9 If any errors are pending set Err* = 0, else set Err* = 1.
10 Set Done true.
There are two additional requirement for the DSP:
1 Once it begins processing a command interrupt, the DSP must defer
processing subsequent commands until it has finished.
2 The DSP software maintains an error(s) pending flag (and possibly and error
queue) that is set by any command decoding or execution error, and cleared
by some other method such as an error query.
HP E1432A User's Guide
Register Definitions
A-14