프로그래밍 노트

WIN32 SDK로 시리얼 통신을 하기위해서는... 본문

Win32 SDK 초보

WIN32 SDK로 시리얼 통신을 하기위해서는...

띠리 2007. 7. 30. 14:14

WIN32 SDK에서 시리얼 통신을 하려면...

WinAPI에서는 시리얼 포트도 파일처럼
CreateFile로 파일을 열고
WriteFile로 데이터를 쓰거나
ReadFile로 데이터를 읽거나
CloseHandle로 파일을 닫는다.
일반적으로 파일을 다루는 것과 비슷하지만 시리얼 통신에서는
여기에다가 통신을 하기위한 설정이 필요한다.
SetCommState가 이런한 설정을 하게된다.

시리얼 통신을 하기위한 순서는

1) CreateFile로 파일을 연다.
2) SetCommState함수로 통신포트의 설정을 한다.
3) ReadFile이나 WriteFile로 데이터를 송수신한다.
4) CloseHandle로 파일을 닫는다.


시리얼 통신을 하기위해서는 Windows에서는 HANDLE형의 변수로 파일등의 오브젝트를 구별하여 억세스나 조작을 하게 된다.
이 때 사용하는 시리얼 포트를 특정하기 위해서는 HANDLE형 변수가 필요하다.
다음으로 WinAPI에서는 시리얼 포트의 설정값을 다르는 구조체로서 DCB구조체를 사용한다.
또 시리얼 포트의 타임 아웃 설정값을 다루는 COMMTIMEOUTS구조체가 있다.

Comments