DCB 는 구조체로써 Delphi에서도 Windows유닛에 선언되어있네요
var
cb: DCB;
hCom: THandle;
begin
hCom:=CreateFile('\\\\.\\COM1',GENERIC_WRITE,0,0,OPEN_EXISTING, FILE_FLAG_OVERLAPPED,0);
GetCommState(hCom,cb);
cb.BaudRate := BAUD_19200;
cb.Parity := 0;
cb.ByteSize := 8;
cb.Parity := NOPARITY;
cb.StopBits := ONESTOPBIT;
SetCommState(hCom,cb);
...
end;
그럼..
나빌레나 님이 쓰신 글 :
: 너무나 감사합니다 덕분에 열심히 뒤지고 있습니다 그런데 궁금한게 생겼습니다
: 이문장에서
: DCB dcb;
: GetCommState(m_hComm,&dcb);
:
: dcb.BaudRate = CBR_19200;
: dcb.fParity = FALSE;
: dcb.ByteSize = 8;
: dcb.Parity = NOPARITY;
: dcb.StopBits = ONESTOPBIT;
:
: SetCommState(m_hComm,&dcb);
:
: DCB dcb; 여기서 DCB 는 델파이로 해석하면 어떻게 서술하죠
: 너무 묻기만하고 정말 죄송합니다 .
:
:
:
:
:
:
:
:
:
: 장성호 님이 쓰신 글 :
: : 컴포넌트도 결국 코딩으로 만든거겠죠
: :
: : 윈도우에서 모든 IO는
CreateFile입니다.
: :
: : 파일을 Open할때도
: : Socket에 쓸때도..
: : Serial통신을 할때도 ..
: :
: : Serial 통신을 하려면 대개 다음과 같이 CreateFile을 사용합니다.
: : 모든 Serial 통신 컴포넌트에 다음과 같은식으로 코딩되어있죠
: :
: : HANDLE hCOM=CreateFile("\\\\.\\COM1",GENERIC_WRITE,0,NULL,OPEN_EXISTING, FILE_FLAG_OVERLAPPED,NULL);
: :
: :
: : 그런 다음
: : 전송(TX)는 FileWrite
: : 수신(RX)는 FileRead
: :
: : SerialPort를 닫으려면 FileClose
: :
: : Application을 만들면 GUI도 처리해야 하므로
: : srial통신부분은 쓰레드로 만들죠
: :
: : 구글이나 네이버 등에서
CreateFile COM1 로 검색하면 주루룩 나옵니다.
: :
: : 참조 : serial port가 사용중인지 체크
: : http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=50920
: :
: : 그럼..
: :
: : 라빌레나 님이 쓰신 글 :
: : : 지금 시리얼포를 mscomm으로 잘 사용하고 있습니다
: : : 그런데 문득 콤포없이 코딩으로 사용할순 없는지 하는 생각이 들더구요!
: : :
: : : 바로 하면 머리와 손은 고되겠지만
: : : 여러가지 잇점도 있을것같은데요.
: : :
: : : 가령 "com1" 속도설정하고, 열고 ,닫고, 정보읽고,,쏘고 하는 루틴을
: : : 얻을수 없을까하고 올립니다.
: : :
: : : 고수님들의 한수 부탁합니다!