Переходите от кода к visadev Интерфейс

The visa функция, ее функции объекта и ее свойства будут удалены. Использовать visadev вместо этого.

Обнаружение устройств VISA

В этом примере показано, как обнаружить устройства VISA с помощью рекомендуемой функциональности.

ФункциональностьВместо этого используйте это
instrhwinfo('visa','ni')
visadevlist

Для получения дополнительной информации см. visadevlist.

Подключение к устройству VISA

В этих примерах показано, как подключиться к устройству VISA и отсоединиться от него с помощью рекомендуемой функциональности.

ФункциональностьВместо этого используйте это
v = visa('ni','GPIB::1::0::INSTR')
fopen(v)
v = visadev("GPIB::1::0::INSTR");
fclose(v)
delete(v)
clear v
clear v

Для получения дополнительной информации см. visadev.

Запись и чтение двоичных или строковых данных

Эти примеры показывают, как выполнить двоичную запись и чтение, и как записать и считать неотключенные строковые данные, используя рекомендуемую функциональность.

ФункциональностьВместо этого используйте это
% v is a visa object
fwrite(v,1:5)
data = fread(v,5)
data =

     1
     2
     3
     4
     5
% v is a visadev object
write(v,1:5)
data = read(v,5)
data =

     1     2     3     4     5
% v is a visa object
fwrite(v,"hello","char")
length = 5;
data = fread(v,length,"char")
data =

   104
   101
   108
   108
   111
data = char(data)'
data =

    'hello'
% v is a visadev object
write(v,"hello","string")
length = 5;
data = read(v,length,"string")
data =

    "hello"

Для получения дополнительной информации см. write или read.

Чтение завершенной строки

В этом примере показано, как выполнить запись и чтение завершенной строки с помощью рекомендуемых функций.

ФункциональностьВместо этого используйте это
% v is a visa object
v.Terminator = "CR";
fprintf(v,"hello")
data = fscanf(v)
data =

    'hello
     '
% v is a visadev object
configureTerminator(v,"CR")
writeline(v,"hello")
data = readline(v)
a = 

    "hello"
% v is a visa object
v.Terminator = "CR";
fprintf(v,"hello")
data = fgetl(v)
data =

    'hello'

fgetl считывается до тех пор, пока не будет достигнут указанный терминатор строки, а затем отбрасывается терминатор строки.

% v is a visa object
v.Terminator = "CR";
fprintf(v,"hello")
data = fgets(v)
data =

    'hello
     '

fgets считывается до тех пор, пока не будет достигнут указанный терминатор строки, а затем возвращается терминатор строки.

Для получения дополнительной информации см. writeline или readline.

Чтение и анализ строковых данных

В этом примере показано, как считать и анализировать строковые данные с помощью рекомендуемых функциональных возможностей.

ФункциональностьВместо этого используйте это
% v is a visa object
data = scanstr(v,';')
data =

  3×1 cell array

    {'a'}
    {'b'}
    {'c'}
% v is a visadev object
data = readline(v)
data = 

    "a;b;c"
data = strsplit(v,";")
data = 

  1×3 string array

    "a"    "b"    "c"

Для получения дополнительной информации см. readline.

Запись и чтение данных

В этом примере показано, как записать оконечные данные ASCII и считать оконечные данные ASCII обратно с помощью рекомендуемых функций.

ФункциональностьВместо этого используйте это
% v is a visa object
data = query(v,'ctrlcmd')
data =

    'success'
% v is a visadev object
data = writeread(v,"ctrlcmd")
data = 

    "success"

Для получения дополнительной информации см. writeline или readline.

Запись и чтение данных бинблока

В этом примере показано, как записать данные со стандартным протоколом двоичных блоков IEEE с помощью рекомендуемой функциональности.

ФункциональностьВместо этого используйте это
% v is a visa object
binblockwrite(v,1:5);
data = binblockread(v)
data =

     1
     2
     3
     4
     5
% v is a visadev object
writebinblock(v,1:5)
data = readbinblock(v)
data =

     1     2     3     4     5

Для получения дополнительной информации см. writebinblock или readbinblock.

Очистить данные из памяти

В этом примере показано, как очистить данные из буфера с помощью рекомендуемых функциональных возможностей.

ФункциональностьВместо этого используйте это
% v is a visa object
flushinput(v)
% v is a visadev object
flush(v,"input")
% v is a visa object
flushoutput(v)
% v is a visadev object
flush(v,"output")
% v is a visa object
flushinput(v)
flushoutput(v)
% v is a visadev object
flush(v)

Для получения дополнительной информации см. flush.

Установка терминатора

В этих примерах показано, как установить терминатор строки с помощью рекомендуемой функциональности.

ФункциональностьВместо этого используйте это
% v is a visa object
v.Terminator = "CR/LF";
% v is a visadev object
configureTerminator(v,"CR/LF")
% v is a visa object
v.Terminator = {"CR/LF" [10]};
% v is a visadev object
configureTerminator(v,"CR/LF",10)

Для получения дополнительной информации см. configureTerminator.

Настройка функции обратного вызова

Эти примеры показывают, как настроить функцию обратного вызова с помощью рекомендуемой функциональности.

ФункциональностьВместо этого используйте это
% v is a visa object
v.BytesAvailableFcnCount = 5
v.BytesAvailableFcnMode = "byte"
v.BytesAvailableFcn = @mycallback

function mycallback(src,evt)
   data = fread(src,src.BytesAvailableFcnCount);
   disp(evt)
   disp(evt.Data)
end
    Type: 'BytesAvailable'
    Data: [1×1 struct]

    AbsTime: [2019 12 21 16 35 9.7032]
% v is a visadev object
configureCallback(v,"byte",5,@mycallback);
function mycallback(src,evt)
   data = read(src,src.BytesAvailableFcnCount);
   disp(evt)
end
  ByteAvailableInfo with properties:

    BytesAvailableFcnCount: 5
                   AbsTime: 21-Dec-2019 12:23:01
% v is a visa object
v.Terminator = "CR"
v.BytesAvailableFcnMode = "terminator"
v.BytesAvailableFcn = @mycallback

function mycallback(src,evt)
   data = fscanf(src);
   disp(evt)
   disp(evt.Data)
end
    Type: 'BytesAvailable'
    Data: [1×1 struct]

    AbsTime: [2019 12 21 16 35 9.7032]
% v is a visadev object
configureTerminator(v,"CR")
configureCallback(v,"terminator",@mycallback)

function mycallback(src,evt)
   data = readline(src);
   disp(evt)
end
  TerminatorAvailableInfo with properties:

                   AbsTime: 21-Dec-2019 12:23:01

Для получения дополнительной информации см. configureCallback.

См. также

Похожие темы