학습목표    1

학습주제    1

예습내용    1

실습방법    1

        1

RS232 통신

학습목표

RS232 통신 원리를 이해하고 프로그램 할수 있다.

학습주제

송신과 수신 신호의 처리

통신속도

예습내용

통신 인터럽트, 통신버퍼

실습방법

1) 다음과 같이 RS232 만들기 위한 새로운 프로젝트를 만든다.

설명: Rs232_1

2) Project에서 "Ni Measurement Studio AppWizard"를 택하거나 "MFC AppWizar[exe]"를 선택한다.

설명: Rs232_2

3) 기본값을 선택한다.

설명: Rs232_3

설명: Rs232_4

설명: D:\Ahome\image\icon\arrow01c.gif처음

4) Dialog based를 선택한다.

설명: Rs232_5

5) 다음과 같이 기본값을 설정하고 OK를 누른다.

설명: Rs232_6

 설명: Rs232_7

 설명: Rs232_8

 설명: Rs232_9

설명: D:\Ahome\image\icon\arrow01c.gif처음

 6) 도구모음 창에서 Edit Box를 선택하여 두개의 Edit 창을 만든다.

설명: Rs232_10    설명: Rs232_11

7) 도구모음 창에서 Button을 선택하여 버튼을 만든다.

설명: Rs232_12   설명: Rs232_13

설명: D:\Ahome\image\icon\arrow01c.gif처음

8) 버튼에 마우스를 위치하고 마우스의 오른쪽 버튼을 눌러 Properties를 선택한다.

설명: Rs232_14

 9) 버튼의 속성을 다음과 같이 한다.

설명: Rs232_15

설명: D:\Ahome\image\icon\arrow01c.gif처음

10) 메뉴의 ClassWizard에서 버튼에 대한 함수 OnSend를 만든다.

설명: Rs232_16

설명: Rs232_17

설명: Rs232_18

설명: D:\Ahome\image\icon\arrow01c.gif처음

 11) 통신에 필요한 "CommThread.cpp" "CommThread.h"를 추가한다.

      이 파일은 "VisualC++ Prpgramming Bible", 이상엽 저, 영진출판사. P1567을 참조했다.

설명: Rs232_19

"CommThread.cpp" "CommThread.h"를 현재의 디렉토리로 복사하고 아래와 같이 선택한다.

설명: Rs232_20

설명: D:\Ahome\image\icon\arrow01c.gif처음

12) Class창에 다음과 같이 'CCommThread' 'CQueue'생성되 있는 것을 볼 수 있다.

설명: Rs232_21

13) ClassWizard 에서 두개의 Edit창의 Variable을 정의 한다.

설명: Rs232_22

설명: D:\Ahome\image\icon\arrow01c.gif처음

설명: Rs232_23

프로그램 작성

(1) "Rs232Dlg.h" CommThread.h include 하고 CCommThread m_ComuPort 선언한다.

(2) Rs232메세지가 들어 오면 화면에 처리해야 한다.

HWND hCommWnd; 선언하고 OnPaint() 에서 이를 감시하고 처리한다. 그리고 메세지 처리함수 OnCommunication(UINT port, LONG lParam) "Rs232Dlg.cpp" "Rs232Dlg.h" 만든다.

(3) 메세지를 보내기 위한 'On Send' 함수에 프로그램을 작성한다.

Rs232Dlg.h

Rs232Dlg.cpp

소스프로그램 내려받기

설명: D:\Ahome\image\icon\arrow01c.gif처음