memmap

Сопоставьте память для низкоуровневых операций чтения памяти и операций записи

Синтаксис

memmap(obj,'adrspace',offset,size)

Аргументы

obj

Объект VISA-VXI или VISA-GPIB-VXI.

' adrspace '

Пробел адреса памяти.

offset

Сместите для пробела адреса памяти.

size

Количество байтов, чтобы сопоставить.

Описание

memmap(obj,'adrspace',offset,size) сопоставляет объем памяти, заданный size в адресном пространстве, adrspace со смещением, offset. Можно сконфигурировать adrspace к A16 (адресное пространство A16), A24 (адресное пространство A24), или A32 (адресное пространство A32).

Примеры

Создайте объект VISA-VXI vv, сопоставленный с шасси VXI с индексом 0 и цифровым преобразователем Keysight™ E1432A с логическим адресом 130.

vv = visa('keysight','VXI0::130::INSTR');
fopen(vv)

Используйте memmap, чтобы сопоставить 16 байтов в адресном пространстве A16.

memmap(vv,'A16',0,16)

Считайте первые и вторые инструментальные регистры.

reg1 = mempeek(vv,0,'uint16');
reg2 = mempeek(vv,2,'uint16');

Не сопоставьте память и отключите vv от инструмента.

memunmap(vv)
fclose(vv)

Советы

Прежде чем можно будет сопоставить память, obj должен быть соединен с инструментом с функцией fopen. Связанный интерфейсный объект имеет значение свойства Status open. Ошибка возвращена, при попытке сопоставить память, в то время как obj не соединяется с инструментом.

Чтобы не сопоставить память, используйте функцию memunmap. Если память сопоставлена, и fclose называется, память не сопоставлена, прежде чем объект отключается от инструмента.

Свойство MappedMemorySize возвращает размер сопоставленного пространства памяти. Необходимо сопоставить пространство памяти перед использованием функции mempeek или mempoke.

Смотрите также

| | | | | |

Представлено до R2006a