Main Content

fread (serial)

(제거될 예정임) 장치에서 이진 데이터 읽기

serial 객체 함수는 향후 릴리스에서 제거될 예정입니다. serialport 객체 함수를 대신 사용하십시오. 코드 업데이트에 대한 자세한 내용은 호환성 관련 고려 사항 항목을 참조하십시오.

구문

A = fread(obj)
A = fread(obj,size,'precision')
[A,count] = fread(...)
[A,count,msg] = fread(...)

설명

A = fread(obj)A = fread(obj,size)는 직렬 포트 객체 obj에 연결된 장치에서 이진 데이터를 읽고 데이터를 A로 반환합니다. 읽을 최대 값 개수는 size로 지정됩니다. size가 지정되지 않은 경우 읽을 최대 값 개수는 객체의 InputBufferSize 속성에 의해 지정됩니다. size에 유효한 옵션은 다음과 같습니다.

n

최대 n개 값을 열 벡터로 읽어들입니다.

[m,n]

최대 m×n개 값을 읽고 m×n 행렬을 열 순서대로 채웁니다.

sizeinf일 수 없으며 지정된 개수의 값을 입력 버퍼에 저장할 수 없는 경우 오류가 반환됩니다. InputBufferSize 속성을 사용하여 입력 버퍼의 크기(바이트)를 지정할 수 있습니다. 값은 precision을 곱한 바이트로 정의됩니다(아래 참조).

A = fread(obj,size,'precision')precision으로 지정된 정밀도로 이진 데이터를 읽습니다.

precision은 각 값에 대해 읽는 비트 수와 그러한 비트가 정수, 부동소수점 또는 문자 값 중 어떤 것으로 해석되는지를 제어합니다. precision이 지정되지 않은 경우 uchar(8비트 부호 없는 문자)가 사용됩니다. 기본적으로 숫자형 값은 배정밀도 배열로 반환됩니다. precision에 대해 지원되는 값은 아래의 에 나와 있습니다.

[A,count] = fread(...)count로 읽은 값 개수를 반환합니다.

[A,count,msg] = fread(...)는 읽기 작업이 실패한 경우 msg로 경고 메시지를 반환합니다.

장치에서 데이터를 읽으려면 fopen 함수를 사용하여 obj에 장치가 연결되어 있어야 합니다. 연결된 직렬 포트 객체는 Status 속성값으로 open을 갖습니다. obj가 장치에 연결되어 있지 않은 상태에서 읽기 작업을 수행하려고 하면 오류가 반환됩니다.

msg가 출력 인수로 포함되지 않은 상태에서 읽기 작업이 실패하면 명령줄로 경고 메시지가 반환됩니다.

fread가 실행될 때마다 읽은 값 개수만큼 ValuesReceived 속성값이 증가합니다.

이진 읽기 작업을 완료하기 위한 규칙

fread를 사용한 읽기 작업은 다음 시점에 MATLAB® 명령줄에 대한 액세스를 차단합니다.

  • 지정된 수의 값을 읽으면

  • Timeout 속성으로 지정된 시간이 경과하면

    참고

    이진 읽기 작업에는 Terminator 속성이 사용되지 않습니다.

지원되는 정밀도

precision에 지원되는 값이 아래에 나와 있습니다.

데이터형

정밀도

해석 방식

문자

uchar

8비트 부호 없는 문자

schar

부호 있는 8비트 문자

char

부호 있는 8비트 문자 또는 부호 없는 문자

정수

int8

8비트 정수

int16

16비트 정수

int32

32비트 정수

uint8

8비트 부호 없는 정수

uint16

16비트 부호 없는 정수

uint32

32비트 부호 없는 정수

short

16비트 정수

int

32비트 정수

long

32비트 또는 64비트 정수

ushort

16비트 부호 없는 정수

uint

32비트 부호 없는 정수

ulong

32비트 또는 64비트 부호 없는 정수

부동소수점

single

32비트 부동소수점

float32

32비트 부동소수점

float

32비트 부동소수점

double

64비트 부동소수점

float64

64비트 부동소수점

버전 내역

R2006a 이전에 개발됨

모두 축소

R2021a: serial 객체 인터페이스는 제거될 예정임

이 함수를 serial 객체와 함께 사용하는 것은 제거될 예정입니다. 직렬 포트 장치에 액세스하려면 대신 serialport 객체를 해당 함수 및 속성과 함께 사용하십시오.

권장되는 기능은 추가 기능과 성능 향상을 제공합니다. 권장되는 기능의 사용 방법에 대한 자세한 내용은 코드를 serialport 인터페이스로 전환하기 항목을 참조하십시오.

참고 항목

함수