(Будет удален) Считайте линию текста с устройства и включите терминатор строки
Этот serial функция object будет удалена в следующем релизе. Использовать serialport вместо этого функции объекта. См. Вопросы совместимости.
tline = fgets(obj)
[tline,count] = fgets(obj)
[tline,count,msg] = fgets(obj)
tline = fgets(obj) считывает одну линию текста с устройства, подключенного к объекту последовательного порта, obj, и возвращает данные в tline. Возвращенные данные включают терминатор строки с текстовой строкой. Чтобы исключить терминатор строки, используйте fgetl.
[tline,count] = fgets(obj) возвращает количество значений, считанных в count, включая терминатор строки.
[tline,count,msg] = fgets(obj) возвращает предупреждающее сообщение в msg если операция чтения была неудачной.
Создайте объект последовательного порта s, соедините s в Tektronix® осциллограф TDS 210 и запишите RS232? команду с fprintf функция. RS232? указывает область возможностей для возврата настроек связи последовательного порта.
s = serial('COM1'); fopen(s) fprintf(s,'RS232?')
Потому что значение по умолчанию для ReadAsyncMode свойство continuousданные автоматически возвращаются во входной буфер.
s.BytesAvailable
ans =
17Использовать fgets считывание данных, возвращенных после предыдущей операции записи, и включение терминатора строки.
settings = fgets(s)
settings = 9600;0;0;NONE;LF
length(settings)
ans =
17Отсоедините s из возможностей и удалить s из памяти и рабочей области.
fclose(s)
delete(s)
clear sПрежде чем вы сможете считать текст с устройства, он должен быть подключен к obj с fopenфункция. Связанный объект последовательного порта имеет Status значение свойства open. Ошибка возвращается, если вы пытаетесь выполнить операцию чтения во время obj не подключен к устройству.
Если msg не включен в качестве выходного аргумента и операция чтения не была успешной, затем в командную строку возвращается предупреждающее сообщение.
The ValuesReceived значение свойства увеличивается на количество значений, считанных - включая терминатор строки - каждый раз fgets выдается.
Примечание
Вы не можете использовать значения ASCII, больше 127 символов. Функция ограничена 127 двоичными символами.
Операция чтения с fgets блокирует доступ к MATLAB® командная строка до:
Терминатор строки, заданный как Terminator достигается свойство.
Время, заданное как Timeout проходит свойство.
Входной буфер заполнен.