(Подлежит удалению) Запись памяти низкого уровня в регистр VXI
Это visa функция объекта будет удалена в следующей версии. Использовать visadev вместо этого объектные функции. См. раздел Вопросы совместимости.
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. 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 указывает смещение в отображенном пространстве памяти, в которое записываются данные. Например, если отображенное пространство памяти начинается с 200H, смещение равно 2, а точность равна uint8затем данные записываются в ячейку 202H памяти. Если точность равна uint16данные записываются в 202H и 203H.
Для увеличения скорости, mempoke не возвращает сообщения об ошибках от прибора.
fopen | MappedMemorySize | memmap | MemoryIncrement | mempeek | Status