Низкоуровневая запись памяти к регистру VXI
mempoke(obj,data,offset)
mempoke(obj,data,offset,'precision')
| Объект VISA-VXI или VISA-GPIB-VXI. |
| Данные записаны в адрес памяти. |
| Смещение на пробеле расширенной памяти, в который записаны данные. |
| Количество битов, чтобы записать в адрес памяти. |
mempoke(obj,data,offset)
пишет uint8
значение задано data
к адресу расширенной памяти, заданному offset
для объекта obj
.
mempoke(obj,data,offset,'precision')
записи data
использование количества битов задано precision
Точность
может быть uint8
uint16
, или uint32
, который сообщает mempoke
записать data
как 8-, 16-, или 32-битные значения, соответственно. precision
может также быть single
, который сообщает mempoke
записать data
как значения с одинарной точностью.
Создайте объект VISA-VXI vv
сопоставленный с шасси VXI с индексом 0 и цифровым преобразователем Keysight™ E1432A с логическим адресом 130.
vv = visa('keysight','VXI0::130::INSTR'); fopen(vv)
Используйте memmap
сопоставлять 16 байтов в адресном пространстве A16.
memmap(vv,'A16',0,16)
Выполните низкоуровневую запись к четвертому инструментальному регистру, который имеет смещение 6.
mempoke(vv,45056,6,'uint16')
Не сопоставьте память и отключите vv
от инструмента.
memunmap(vv) fclose(vv)
Обратитесь к Использованию Высокоуровневых Функций Памяти для описания первых четырех регистров цифрового преобразователя E1432A.
Прежде чем можно будет записать в регистр VXI, obj
должен быть соединен с инструментом с fopen
функция. Связанный интерфейсный объект имеет Status
значение свойства open
. Ошибка возвращена, если вы делаете попытку операции записи в то время как obj
не соединяется с инструментом.
Необходимо сопоставить пространство памяти с помощью memmap
функция перед использованием mempoke
. MappedMemorySize
свойство возвращает размер сопоставленного пространства памяти.
offset
указывает на смещение на пробеле расширенной памяти, в который записаны данные. Например, если пробел расширенной памяти начинается в 200-м, смещение равняется 2, и точностью является uint8
, затем данные записаны в 202-ю ячейку памяти. Если точностью является uint16
, данные записаны в 202-й и 203-е.
Увеличить скорость, mempoke
не возвращает сообщения об ошибке в инструмент.
MappedMemorySize
| MemoryIncrement
| Status
| fopen
| memmap
| mempeek