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 | ![]() |