| Instrument Control Toolbox | ![]() |
Low-level memory write to VXI register
Syntax
Arguments
Description
mempoke(obj,data,offset)
writes the uint8 value specified by data to the mapped memory address specified by offset for the object obj.
mempoke(obj,data,offset,'precision')
writes data using the number of bits specified by precision. precision can be uint8, uint16, or uint32, which instructs mempoke to write data as 8-, 16-, or 32-bit values, respectively. precision can also be single, which instructs mempoke to write data as single precision values.
Remarks
Before you can write to the VXI register, obj must be connected to the instrument with the fopen function. A connected instrument object has a Status property value of open. An error is returned if you attempt a write operation while obj is not connected to the instrument.
You must map the memory space using the memmap function before using mempoke. The MappedMemorySize property returns the size of the memory space mapped.
offset indicates the offset in the mapped memory space to which the data is written. For example, if the mapped memory space begins at 200H, the offset is 2, and the precision is uint8, then the data is written to memory location 202H. If the precision is uint16, the data is written to 202H and 203H.
To increase speed, mempoke does not return error messages from the instrument.
Example
Create the VISA-VXI object vv associated with a VXI chassis with index 0, and an Agilent E1432A digitizer with logical address 130.
Use memmap to map 16 bytes in the A16 address space.
Perform a low-level write to the fourth instrument register, which has an offset of 6.
Unmap the memory and disconnect vv from the instrument.
Refer to Example: Using High-Level Memory Functions for a description of the first four registers of the E1432A digitizer.
Functions
Properties
MappedMemorySize, MemoryIncrement, Status
| mempeek | memread | ![]() |