serialport
ИнтерфейсThe serial
функция, ее функции объекта и ее свойства будут удалены. Использовать serialport
вместо этого.
serial Интерфейс | serialport Интерфейс | Пример |
---|---|---|
seriallist | serialportlist | Обнаружение устройств последовательных портов |
serial | serialport | Подключение к устройству последовательного порта |
fwrite и fread | write и read | Прочтите и напишите |
fprintf | writeline | Отправка команды |
fscanf , fgetl , и fgets | readline | Чтение завершенной строки |
flushinput и flushoutput | flush | Очистить данные из памяти |
Terminator | configureTerminator | Установка терминатора |
BytesAvailableFcnCount , BytesAvailableFcnMode , BytesAvailableFcn , и BytesAvailable | configureCallback | Настройка функции обратного вызова |
PinStatus | getpinstatus | Чтение состояния последовательного контакта |
DataTerminalReady и RequestToSend | setDTR и setRTS | Установите последовательные состояния контактов DTR и RTS |
серийные свойства | serialport Свойства |
seriallist
не рекомендуется. Использовать serialportlist
вместо этого.
В этом примере показано, как подключиться к устройству последовательного порта с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
s = serial("COM1");
s.BaudRate = 115200;
fopen(s) |
s = serialport("COM1",115200); |
Для получения дополнительной информации см. serialport
.
Эти примеры используют устройство закольцовывания, чтобы показать, как выполнить двоичную запись и чтение, записать неотключенную командную строку и считать строку отклика фиксированной длины с помощью рекомендуемой функциональности.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object fwrite(s,1:5,"uint32") data = fread(s,5,"uint32") data = 1 2 3 4 5 |
% s is a serialport object write(s,1:5,"uint32") data = read(s,5,"uint32") data = 1 2 3 4 5 |
% s is a serial object command = "start"; fwrite(s,command,"char") |
% s is a serialport object command = "start"; write(s,command,"char") |
% s is a serialport object command = "start"; write(s,command,"string") | |
% s is a serial object length = 5; resp = fread(s,length,"char") resp = 115 116 97 114 116 resp = char(resp)' resp = 'start' |
% s is a serialport object length = 5; resp = read(s,length,"string") resp = "start" |
В этом примере показано, как записать оконечную команду SCPI с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object s.Terminator = "CR/LF" channel = 1; level = 3.44; fprintf(s,"TRIGGER%d:LEVEL2 %1.2f",[channel,level]); | % s is a serialport object configureTerminator(s,"CR/LF") channel = 1; level = 3.44; cmd = sprintf("TRIGGER%d:LEVEL2 %1.2f",[channel,level]); writeline(s,cmd)
|
Для получения дополнительной информации см. configureTerminator
или writeline
.
В этом примере показано, как выполнить считывание завершенной строки с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object fprintf(s,"MEASUREMENT:IMMED:TYPE PK2PK") a = fscanf(s,"%e",6) a = 2.0200 Для спецификатора формата |
% s is a serialport object writeline(s,"MEASUREMENT:IMMED:TYPE PK2PK") a = readline(s) a = "2.0200" sscanf(a,"%e") a = 2.0200 |
% s is a serial object fprintf(s,"*IDN?") a = fgetl(s) a = 'TEKTRONIX,TDS 210,0,CF:91.1CT FV:v1.16'
| % s is a serialport object writeline(s,"*IDN?") a = readline(s) a = "TEKTRONIX,TDS 210,0,CF:91.1CT FV:v1.16 TDS2CM:CMV:v1.04"
|
% s is a serial object fprintf(s,"*IDN?") a = fgets(s) a = 'TEKTRONIX,TDS 210,0,CF:91.1CT FV:v1.16 TDS2CM:CMV:v1.04 '
|
Для получения дополнительной информации см. readline
.
В этом примере показано, как очистить данные из буфера с помощью рекомендуемых функциональных возможностей.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object
flushinput(s)
|
% s is a serialport object flush(s,"input") |
% s is a serial object
flushoutput(s)
|
% s is a serialport object flush(s,"output") |
% s is a serial object
flushinput(s)
flushoutput(s)
|
% s is a serialport object
flush(s) |
Для получения дополнительной информации см. flush
.
В этом примере показано, как установить терминатор строки с помощью рекомендуемых функциональных возможностей.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object s.Terminator = "CR/LF"; |
% s is a serialport object configureTerminator(s,"CR/LF") |
% s is a serial object s.Terminator = {"CR/LF" [10]}; |
% s is a serialport object configureTerminator(s,"CR/LF",10) |
Для получения дополнительной информации см. configureTerminator
.
Этот пример использует устройство закольцовывания, чтобы показать, как настроить функцию обратного вызова с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
s = serial("COM5","BaudRate",115200) s.BytesAvailableFcnCount = 5 s.BytesAvailableFcnMode = "byte" s.BytesAvailableFcn = @instrcallback fopen(s) function instrcallback(src,evt) data = fread(src,src.BytesAvailable) disp(evt) disp(evt.Data) end data = 1 2 3 4 5 Type: 'BytesAvailable' Data: [1×1 struct] AbsTime: [2019 5 2 16 35 9.6710] |
s = serialport("COM5",115200) configureCallback(s,"byte",5,@instrcallback); function instrcallback(src,evt) data = read(src,src.NumBytesAvailable,"uint8") disp(evt) end data = 1 2 3 4 5 DataAvailableInfo with properties: BytesAvailableFcnCount: 5 AbsTime: 02-May-2019 15:54:09 |
Для получения дополнительной информации см. configureCallback
.
В этом примере показано, как считать статус последовательного контакта с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object
s.PinStatus ans = struct with fields: CarrierDetect: 'on' ClearToSend: 'on' DataSetReady: 'on' RingIndicator: 'on' |
% s is a serialport object
status = getpinstatus(s) status = struct with fields: ClearToSend: 1 DataSetReady: 1 CarrierDetect: 1 RingIndicator: 1 |
Для получения дополнительной информации см. getpinstatus
.
В этом примере показано, как установить последовательные состояния контактов DTR и RTS с помощью рекомендуемых функций.
Функциональность | Вместо этого используйте это |
---|---|
% s is a serial object s.DataTerminalReady = "on"; |
% s is a serialport object
setDTR(s,true) |
% s is a serial object s.RequestToSend = "off"; |
% s is a serialport object
setRTS(s,false) |
Для получения дополнительной информации см. setDTR
или setRTS
.