read
직렬 포트에서 데이터 읽어 들이기
설명
예제
직렬 포트 장치를 사용하여 데이터 쓰기 및 읽기
직렬 포트 장치에 대한 연결을 만듭니다. 이 예제에서 COM3
의 직렬 포트는 루프백 장치에 연결되어 있습니다.
device = serialport("COM3",9600)
device = Serialport with properties: Port: "COM3" BaudRate: 9600 NumBytesAvailable: 0 Show all properties, functions
값 [1,2,3,4,5]
를 uint8 형식으로 씁니다.
write(device,1:5,"uint8")
포트가 루프백 장치에 연결되어 있으므로 장치에 쓰는 데이터는 MATLAB으로 반환됩니다. 모든 데이터를 읽어 들입니다.
read(device,5,"uint8")
ans = 1×5 1 2 3 4 5
입력 인수
device
— 직렬 포트 연결
serialport
객체
직렬 포트 연결로, serialport
객체로 지정됩니다.
예: read(device,20,"uint32")
은 직렬 포트 연결 device
에서 데이터를 읽어 들입니다.
count
— 읽어 들일 값의 개수
숫자형
읽어 들일 값의 개수로, 양의 정수 값으로 지정됩니다. count
가 device
의 NumBytesAvailable
속성보다 클 경우, 함수는 지정된 만큼의 데이터를 읽어 들였거나 제한 시간이 초과될 때까지 MATLAB 실행을 일시 중단하고 대기합니다.
예: read(device,5,"uint32")
는 5개의 uint32 데이터 값을 읽어 들입니다. 각 uint32 값은 4바이트이므로 총 20바이트를 읽어 들입니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
datatype
— 각 값의 크기와 형식
"uint8"
| "int8"
| "uint16"
| "int16"
| "uint32"
| "int32"
| "uint64"
| "int64"
| "single"
| "double"
| "char"
| "string"
각 값의 크기와 형식으로, 문자형 벡터 또는 string형으로 지정됩니다. datatype
은 각 값에 대해 읽어 들일 바이트 수와 해당 바이트에 대한 해석을 MATLAB 데이터형으로 결정합니다.
예: read(device,5,"uint16")
은 5개의 uint16 데이터 값을 읽어 들입니다. 각 uint16 값은 2바이트이므로 총 10바이트를 읽어 들입니다.
데이터형: char
| string
버전 내역
R2019b에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)