[10.25] 프로젝트 진행사항

이번 프로젝트에서 사용하는  함수들인데,
아직 함수들에 대한 사용을 잘 이해하지 못하여 오늘은 각 함수들이 어떤 역할을 하는지와,
이 함수들을 어떻게 활용할 것인지에 대한 것을 고민하였다.


BOOL bluetooth::PortOpen(CONST WCHAR * szPort) //포트열기


void bluetooth::PortClose() //포트닫기


BOOL bluetooth::PortSet(DWORD dwBaudRate=CBR_115200, DWORD dwTimeOutInSec=5) //포트설정


BOOL bluetooth::PortWrite(CONST WCHAR * wData) //버퍼에 쓰기


BOOL bluetooth::PortRead(WCHAR * wData) //버퍼에서 읽어오기


DWORD WINAPI bluetooth::PortThreadProc(LPVOID lpParameter) //데이터를 읽어들이는 것 지속적인 감시


BOOL bluetooth::PortThreadStart()  //위 함수를 쓰레드로 작동시키기 위한 함수


void bluetooth::PortThreadFinish() //포트로부터 더 이상 데이터를 읽어들이지 않으려는

경우 쓰레드를 종료시킨다.



  • 기존에는 PortSet함수를 사용하지 않았는데, 함수를 사용하면서 입출력을할 버퍼 크기를 정해주기 때문에 사용하여야 할것 같다.
  •  PortRead를 따로 사용해줘야 할 것 같았는데, 그럴필요 없이 PortThreadProc안에서 사용하기 때문에 Main에서 따로 PortRead를 사용해주지 않아도 된다.
  •  Main에서는 PortThreadProc이 아닌, PortThreadStart함수 호출하기.



-위에것을 토대로 Main에 적용한 결과

case IDC_BUTTON:
             if(bt.PortOpen(L"COM1:") == FALSE){
                            MessageBox(NULL,L"PortOpen 실패",L"",NULL);
                            return 0;
              }else{
                            bt.PortWrite(L"하이");
                            MessageBox(NULL,L"PortOpen 성공",L"",NULL);
              }

              if (bt.PortSet(11520,5)==FALSE){
                            bt.PortClose();
                            MessageBox(NULL,L"PortSet실패",L"",NULL);
                            return 0;
              }

              if(bt.PortThreadStart()==FALSE) { 
                            bt.PortClose();
                            MessageBox(NULL,L"PortThreadStart실패",L"",NULL);
                            return 0;
              }
              MessageBox(NULL,L"데이터가 수신되면 메시지 창이 뜹니다\n"L"프로그램을 종료하려면 이 창을 닫아주세
                                  요.",L"STOP",NULL);
              bt.PortClose();
break;


하지만 결과는...
실패 윽
포트조차 열리지 않는다.
왜 그러지..
책에 보면 순서가 저게 맞는데,

-다음에 해야할 일
  •  PortSet함수를 PortOpen에 넣어보기.
  • 송신은 COM6: 으로 수신은 COM5:로 설정해줘서 내가 임의로 넣고 쓰는걸 시켜보기.

'and so on' 카테고리의 다른 글

슬럼프  (0) 2010.05.18
[11.03] 프로젝트 스터디  (0) 2009.11.07
포인터를 왜 쓰는가?  (0) 2009.10.05
strcat 실행시간 측정  (0) 2009.09.29
실행 속도 측정하기  (0) 2009.09.14